GPU-PAC(1)
π NAME π
okay bestie, meet gpu-pac β the program that lets you program and control compatible GPUs. that's literally it, that's the whole vibe. π
β¨ SYNOPSIS β¨
gpu-pac [--help | --about]
gpu-pac [--execute_pac] [--no_fan] [--force_write] [--debug] [--verbose]
π DESCRIPTION π
so here's the tea, bestie: gpu-pac gives you the capability to program and control compatible GPUs with this utility. that's the main character energy we're bringing.
here's the important part though, and don't skip this:
by default, the commands that are going to be written to a GPU don't get executed. nope. they get written into a bash file so you can look at them, vibe check them, and run them yourself. it's giving "trust but verify" fr fr.
if you're feeling bold and you have confidence, you can hit it with the --execute_pac option β that runs the thing and then deletes the saved bash file. gone. periodt.
now, because the GPU device files are writable only by root, sudo gets used to execute the commands in that bash file. so yeah, you will get prompted for credentials in the terminal where you ran gpu-pac. no cap. π
the --no_fan option? it yeets all the fan details out of the utility. bye fan info. π
--force_write forces all configuration parameters to be written to the GPU, instead of the default behavior which is to only write the changes. lowkey handy, highkey powerful.
and finally, --verbose means you get informational messages displayed. the little commentary track. π¬
π¦ OPTIONS π¦
--aboutβ will display details aboutgpu-pac. the lore. the backstory. π--execute_pacβ will execute a bash file created with commands written to the driver files to modify the operating conditions of the selected GPU/GPUs. the default behavior is to only create the bash files for the user to execute. so this is the "actually do it" button, bestie.--no_fanβ will exclude fan information from the display, and will not include fans in writing or resetting GPU operating conditions. fan erasure, respectfully. π¬οΈ--force_writeβ will result in all parameters being writen to the selected GPU/GPUs instead of the default behavior of only writing changes. (yes it says "writen" in the source, i'm keeping it, it's iconic π)--verboseβ display informational messages generated during execution. the play-by-play. ποΈ--debugβ will output additional useful debug/troubleshooting details to a log file. for when you need to investigate. π-h,--helpβ display help text and exit. the classic escape hatch. πͺ
π EXAMPLES π
gpu-pac
this opens up a Gtk based user interface which displays the current or default values for modifiable GPU operating parameters. the interface supports entry of new values for all compatible GPUs. you can select to save or reset values for individual GPUs or for all of them, your choice, slay.
it is suggested that gpu-mon be used to make sure the changes are made as expected. always verify your work bestie, i'm begging. π«Ά
gpu-pac --execute_pac
to simplify this whole process, the --execute_pac option can be specified to automate execution of the bash files. a message in the user interface will indicate if credentials are required in the original terminal window β so keep an eye on that original terminal, she's talking to you. π
gpu-pac --force_write
with this option, all parameters will be written to the bash file, even if they are unchanged. this is useful in creating bash files used to put GPU's into a known state, which is convenient for use in start up routines. snapshot behavior. chef's kiss. π©βπ³π
π§ CONFIGURATION π§
in order to get maximum capability of these utilities, you should be running with a kernel that provides support of the GPUs you have installed. baseline requirement, no shortcuts. β¨
if you're using AMD GPUs, installing the latest amdgpu driver package or the latest ROCm release may provide additional capabilities. more power, more options. π₯
if you have Nvidia GPUs installed, nvidia-smi must also be installed in order for the utility reading of the cards to be possible. no nvidia-smi, no reading. simple as.
writing to GPUs is currently only possible for AMD GPUs, and only with compatible cards and with the AMDppfeaturemaskset to0xfffd7fff. that's the magic number bestie, don't lose it.
this can be accomplished by adding amdgpu.ppfeaturemask=0xfffd7fff to the GRUB_CMDLINE_LINUX_DEFAULT value in /etc/default/grub and executing sudo update-grub.
πΈ FILES πΈ
/usr/share/misc/pci.idsβ the system list of all known PCI ID's (vendors, devices, classes and subclasses). it can be updated with theupdate-pciidscommand. keep your receipts current. π§Ύ/sys/class/drm/card*/device/pp_od_clk_voltageβ special driver file for each AMD GPU required by somerickslab-gpu-utils. do not touch unless you know what you're doing, i'm serious./etc/default/grubβ the grub defaults file whereamdgpu.ppfeaturemaskneeds to be set. this is where the magic number lives. πͺ
π BUGS π
known to not work well with Fiji ProDuo cards and will issue warning messages for Fiji Nano cards. not them being difficult, but here we are. π
the display of P-state masks is always the defaults, not the actual values. so like, don't be fooled by what you're seeing there. π
please report any additional bugs/issues at https://github.com/Ricks-Lab/gpu-utils β the devs want to know, fr fr. π
π SEE ALSO π
gpu-mon(1), amdgpu(4), update-grub(8), update-pciids(8), lspci(8)
β AVAILABILITY β
the gpu-pac command is part of the rickslab-gpu-utils package and is available from https://github.com/Ricks-Lab/gpu-utils π
okay that's the whole thing bestie, you're officially educated. this page is part of rickslab-gpu-utils, dated May 2022, and it lives in manual section 1 (the user commands girlies). go program some GPUs responsibly, and remember: read the bash file before you execute it. π β¨π¦
π¦ where this page comes from
- debian bookworm: rickslab-gpu-utils 3.8.0-1 Β· GPL-3.0-or-later
- debian trixie: rickslab-gpu-utils 3.9.0-1 Β· GPL-3.0-or-later
- ubuntu noble: rickslab-gpu-utils 3.8.0-1 Β· GPL-3.0-or-later
- ubuntu questing: rickslab-gpu-utils 3.9.0-1
- ubuntu resolute: rickslab-gpu-utils 3.9.0-1build1 Β· GPL-3.0-or-later
- ubuntu stonking: rickslab-gpu-utils 3.9.0-1build1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms