4.30. Power Profile Information
Classes
Functions
- nvmlReturn_t nvmlDeviceWorkloadPowerProfileClearRequestedProfiles ( nvmlDevice_t device, nvmlWorkloadPowerProfileRequestedProfiles_t* requestedProfiles )
- nvmlReturn_t nvmlDeviceWorkloadPowerProfileGetCurrentProfiles ( nvmlDevice_t device, nvmlWorkloadPowerProfileCurrentProfiles_t* currentProfiles )
- nvmlReturn_t nvmlDeviceWorkloadPowerProfileGetProfilesInfo ( nvmlDevice_t device, nvmlWorkloadPowerProfileProfilesInfo_t* profilesInfo )
- nvmlReturn_t nvmlDeviceWorkloadPowerProfileSetRequestedProfiles ( nvmlDevice_t device, nvmlWorkloadPowerProfileRequestedProfiles_t* requestedProfiles )
Functions
- nvmlReturn_t nvmlDeviceWorkloadPowerProfileClearRequestedProfiles ( nvmlDevice_t device, nvmlWorkloadPowerProfileRequestedProfiles_t* requestedProfiles )
-
Parameters
- device
- The identifier of the target device
- requestedProfiles
- Reference to struct nvmlWorkloadPowerProfileRequestedProfiles_v1_t
Returns
- NVML_SUCCESS If the query is successful
- NVML_ERROR_UNINITIALIZED If the library has not been successfully initialized
- NVML_ERROR_INVALID_ARGUMENT If device is invalid or pointer to struct is NULL
- NVML_ERROR_NOT_SUPPORTED If the device does not support this feature
- NVML_ERROR_GPU_IS_LOST If the target GPU has fallen off the bus or is otherwise inaccessible
- NVML_ERROR_ARGUMENT_VERSION_MISMATCH If the provided version is invalid/unsupported
- NVML_ERROR_UNKNOWN On any unexpected error
Description
Clear Requested Performance Profiles
BLACKWELL_OR_NEWER% See nvmlWorkloadPowerProfileRequestedProfiles_v1_t for more information on the struct. Clear one or more performance profiles be using the input bitmask requestedProfilesMask, where each bit set corresponds to a supported bit from the perfProfilesMask. These profiles will be removed from the existing list of currently requested profiles.
- nvmlReturn_t nvmlDeviceWorkloadPowerProfileGetCurrentProfiles ( nvmlDevice_t device, nvmlWorkloadPowerProfileCurrentProfiles_t* currentProfiles )
-
Parameters
- device
- The identifier of the target device
- currentProfiles
- Reference to struct nvmlWorkloadPowerProfileCurrentProfiles_v1_t
Returns
- NVML_SUCCESS If the query is successful
- NVML_ERROR_UNINITIALIZED If the library has not been successfully initialized
- NVML_ERROR_INVALID_ARGUMENT If device is invalid or the pointer to struct is NULL
- NVML_ERROR_NOT_SUPPORTED If the device does not support this feature
- NVML_ERROR_GPU_IS_LOST If the target GPU has fallen off the bus or is otherwise inaccessible
- NVML_ERROR_ARGUMENT_VERSION_MISMATCH If the provided version is invalid/unsupported
- NVML_ERROR_UNKNOWN On any unexpected error
Description
Get Current Performance Profiles
BLACKWELL_OR_NEWER% See nvmlWorkloadPowerProfileCurrentProfiles_v1_t for more information on the struct. This API returns a stuct which contains the current perfProfilesMask, requestedProfilesMask and enforcedProfilesMask. Each bit set in each bitmasks indicates the profile is supported, currently requested or currently engaged, respectively.
- nvmlReturn_t nvmlDeviceWorkloadPowerProfileGetProfilesInfo ( nvmlDevice_t device, nvmlWorkloadPowerProfileProfilesInfo_t* profilesInfo )
-
Parameters
- device
- The identifier of the target device
- profilesInfo
- Reference to struct nvmlWorkloadPowerProfileProfilesInfo_t
Returns
- NVML_SUCCESS If the query is successful
- NVML_ERROR_INSUFFICIENT_SIZE If struct is fully allocated
- NVML_ERROR_UNINITIALIZED If the library has not been successfully initialized
- NVML_ERROR_INVALID_ARGUMENT If device is invalid or pointer to struct is NULL
- NVML_ERROR_NOT_SUPPORTED If the device does not support this feature
- NVML_ERROR_GPU_IS_LOST If the target GPU has fallen off the bus or is otherwise inaccessible
- NVML_ERROR_ARGUMENT_VERSION_MISMATCH If the provided version is invalid/unsupported
- NVML_ERROR_UNKNOWN On any unexpected error
Description
Get Performance Profiles Information
BLACKWELL_OR_NEWER% See nvmlWorkloadPowerProfileProfilesInfo_v1_t for more information on the struct. The mask perfProfilesMask is bitmask of all supported mode indices where the mode is supported if the index is 1. Each supported mode will have a corresponding entry in the perfProfile array which will contain the profileId, the priority of this mode, where the lower the value, the higher the priority, and a conflictingMask, where each bit set in the mask corresponds to a different profile which cannot be used in conjunction with the given profile.
- nvmlReturn_t nvmlDeviceWorkloadPowerProfileSetRequestedProfiles ( nvmlDevice_t device, nvmlWorkloadPowerProfileRequestedProfiles_t* requestedProfiles )
-
Parameters
- device
- The identifier of the target device
- requestedProfiles
- Reference to struct nvmlWorkloadPowerProfileRequestedProfiles_v1_t
Returns
- NVML_SUCCESS If the query is successful
- NVML_ERROR_UNINITIALIZED If the library has not been successfully initialized
- NVML_ERROR_INVALID_ARGUMENT If device is invalid or pointer to struct is NULL
- NVML_ERROR_NOT_SUPPORTED If the device does not support this feature
- NVML_ERROR_GPU_IS_LOST If the target GPU has fallen off the bus or is otherwise inaccessible
- NVML_ERROR_ARGUMENT_VERSION_MISMATCH If the provided version is invalid/unsupported
- NVML_ERROR_UNKNOWN On any unexpected error
Description
Set Requested Performance Profiles
BLACKWELL_OR_NEWER% See nvmlWorkloadPowerProfileRequestedProfiles_v1_t for more information on the struct. Reuqest one or more performance profiles be activated using the input bitmask requestedProfilesMask, where each bit set corresponds to a supported bit from the perfProfilesMask. These profiles will be added to existing list of currently requested profiles.