GPU-PAC(1)

NAME
gpu-pac - program and control compatible GPUs

SYNOPSIS
gpu-pac [--help | --about]
gpu-pac [--execute_pac] [--no_fan] [--force_write] [--debug] [--verbose]

DESCRIPTION
gpu-pac provides capability for Program and Control compatible GPUs with this utility. By default, the commands to be written to a GPU are written to a bash file for the user to inspect and run. If you have confidence, the --execute_pac option can be used to execute and then delete the saved bash file. Since the GPU device files are writable only by root, sudo is used to execute commands in the bash file, as a result, you will be prompted for credentials in the terminal where you executed gpu-pac. The --no_fan option can be used to eliminate fan details from the utility. The --force_write option can be used to force all configuration parameters to be written to the GPU. The default behavior is to only write changes. Finally, the --verbose option will result in informational messages to be displayed.

OPTIONS

--about
    Will display details about gpu-pac.

--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.

--no_fan
    Will exclude fan information from the display and will not include fans in writing or resetting GPU operating conditions.

--force_write
    Will result in all parameters being writen to the selected GPU/GPUs instead of the default behavior of only writing changes.

--verbose
    Display informational messages generated during execution.

--debug
    Will output additional useful debug/troubleshooting details to a log file.

-h, --help
    Display help text and exit.

EXAMPLES
gpu-pac

Will open a Gtk based user interface which will display current or default values for modifiable GPU operating parameters. The interface supports entry of new values for all compatible GPUs. The user can select to save or reset values for individual or all GPUs. It is suggested that gpu-mon be used to make sure the changes are made as expected.

gpu-pac --execute_pac

To simplify this 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.

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.

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. If using AMD GPUs, installing the latest amdgpu driver package or the latest ROCm release, may provide additional capabilities. If you have Nvidia GPUs installed, nvidia-smi must also be installed in order for the utility reading of the cards to be possible. Writing to GPUs is currently only possible for AMD GPUs, and only with compatible cards and with the AMD ppfeaturemask set to 0xfffd7fff. 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 the update-pciids command.

/sys/class/drm/card*/device/pp_od_clk_voltage
    Special driver file for each AMD GPU required by some rickslab-gpu-utils.

/etc/default/grub
    The grub defaults file where amdgpu.ppfeaturemask needs to be set.

BUGS
Known to not work well with Fiji ProDuo cards and will issue warning messages for Fiji Nano cards. The display of P-state masks is always the defaults, not the actual values. Please report any additional bugs/issues at https://github.com/Ricks-Lab/gpu-utils

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