IPMCTL-DUMP-GOAL(1)

✨ IPMCTL-DUMP-GOAL ✨ (that's section 1 of the ipmctl manual, bestie πŸ’–)

🌸 NAME 🌸

ipmctl-dump-goal β€” saves your current memory allocation settings to a file πŸ’Ύβœ¨


πŸŽ€ SYNOPSIS πŸŽ€

ipmctl dump [OPTIONS] -destination (path) -system -config

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so here's the vibe: this command stores the memory allocation settings you've currently got configured, for every single PMem module in the system, and writes them out to a file β€” so you can go replicate that exact configuration somewhere else. slay, right? πŸ’…

Then when you wanna apply those saved settings again, you use the command Section [Load Memory Allocation Goal]. periodt. πŸ”₯


✨ OPTIONS ✨

  • -h, -help β€” shows you the help for this command. the little "wait what does this do again" button 🫢
  • -ddrt β€” specifies DDRT as the transport protocol you want for this particular invocation of ipmctl.
  • -smbus β€” specifies SMBUS as the transport protocol you want for this particular invocation of ipmctl.
⚠️ Note bestie: -ddrt and -smbus are mutually exclusive β€” you literally cannot use them together. pick one, queen πŸ‘‘
  • -lpmb β€” specifies large transport payload size for this invocation of ipmctl.
  • -spmb β€” specifies small transport payload size for this invocation of ipmctl.
⚠️ Note again: -lpmb and -spmb are mutually exclusive too. no mixing, no matching, no exceptions πŸ’€
  • -o (text|nvmxml), -output (text|nvmxml) β€” changes the output format. one of: "text" (which is the default, iykyk) or "nvmxml".

🌈 EXAMPLES 🌈

stores the memory allocation settings from all the PMem modules into the file "config.txt":

ipmctl dump -destination config.txt -system -config

ate. no notes. πŸ“


πŸ’œ LIMITATIONS πŸ’œ

for this command to actually go off successfully:

  • the caller must have the appropriate privileges. no privileges, no dump, sorry babe πŸ™ˆ
  • only memory allocation settings for manageable PMem modules that have been successfully applied by the BIOS get stored in the file. unconfigured PMem modules are not included, and neither are memory allocation goals that haven't been applied. it's giving "if BIOS didn't do it, it's not in the file" 🫢

πŸ‘‘ RETURN DATA πŸ‘‘

The CLI will tell you the overall status of the operation once it's done. and if a failure happens while dumping the memory allocation from multiple PMem modules? the process just stops, and the output file gets removed. gone. deleted. not me crying over a half-written config 😭

The output file is formatted as an ASCII file with one row per PMem module, and each row has these comma separated values:

  • SocketID β€” identifier for the socket the PMem module is associated with.
  • DimmHandle β€” PMem module device handle.
  • Capacity β€” total capacity of the PMem module, in GiB.
  • MemorySize β€” capacity of the PMem module allocated as Memory Mode, in GiB.
  • AppDirect1Size β€” capacity of the PMem module allocated for the first App Direct interleave set, in GiB.
  • AppDirect1Format β€” bit mask representing the interleave format of the first App Direct interleave set.
  • AppDirect1Index β€” unique index of the first App Direct interleave set.
  • AppDirect2Size β€” capacity of the PMem module allocated for the second App Direct interleave set, in GiB.
  • AppDirect2Format β€” bit mask representing the interleave format of the second App Direct interleave set.
  • AppDirect2Index β€” unique index of the second App Direct interleave set.

⭐ SAMPLE OUTPUT ⭐

Successfully dumped system configuration to file: config.csv

contents of config.csv:

#SocketID,DimmHandle,Capacity,MemorySize,AppDirect1Size,AppDirect
1Format,AppDirect1Index,AppDirect2Size,AppDirect2Format,AppDirect2Index
1,4385,64,64,0,0,0,0,0,0
1,4401,64,64,0,0,0,0,0,0
1,4417,64,64,0,0,0,0,0,0
1,4433,64,64,0,0,0,0,0,0
1,4449,64,64,0,0,0,0,0,0

and that's the whole page, bestie 🫢 this one's from the ipmctl girlies, dated 2024-04-22, and yes it's still section 1 β€” IPMCTL-DUMP-GOAL(1), no cap πŸ’–βœ¨

πŸ“¦ where this page comes from