5.32. Power Smoothing Information
Classes
Defines
- #define NVML_POWER_SMOOTHING_ADMIN_OVERRIDE_NOT_SET 0xFFFFFFFFU
- Admin override not set.
- #define NVML_POWER_SMOOTHING_IDX_FROM_FIELD_VAL ( field_val )
- Index from field value.
- #define NVML_POWER_SMOOTHING_MAX_NUM_PROFILES 5
- Maximum number of profiles.
- #define NVML_POWER_SMOOTHING_NUM_PROFILE_PARAMS 8
- Number of profile parameters.
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_PERCENT_TMP_FLOOR 0
- Percent temperature floor.
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_ACT_OFFSET 7
- Primary floor activation offset value in Watts for a given profile.
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_ACT_WIN_MULT 5
- Primary floor activation window multiplier value for a given profile.
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_TAR_WIN_MULT 6
- Primary floor target window multiplier value for a given profile.
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_HYSTERESIS 3
- Ramp down hysteresis.
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_RATE 2
- Ramp down rate.
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_UP_RATE 1
- Ramp up rate.
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_SECONDARY_POWER_FLOOR 4
- Secondary power floor value in Watts for a given profile.
- #define nvmlPowerSmoothingProfile_v1
- Version macro for nvmlPowerSmoothingProfile_v1_t.
- #define nvmlPowerSmoothingState_v1
- Version macro for nvmlPowerSmoothingState_v1_t.
Functions
- nvmlReturn_t nvmlDevicePowerSmoothingActivatePresetProfile ( nvmlDevice_t device, nvmlPowerSmoothingProfile_t* profile )
- nvmlReturn_t nvmlDevicePowerSmoothingSetState ( nvmlDevice_t device, nvmlPowerSmoothingState_t* state )
- nvmlReturn_t nvmlDevicePowerSmoothingUpdatePresetProfileParam ( nvmlDevice_t device, nvmlPowerSmoothingProfile_t* profile )
Defines
- #define NVML_POWER_SMOOTHING_ADMIN_OVERRIDE_NOT_SET 0xFFFFFFFFU
-
- #define NVML_POWER_SMOOTHING_IDX_FROM_FIELD_VAL ( field_val )
-
Macro for accomodating the gap in field values for delayed power smoothing.
Value
( \ (field_val > NVML_FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_DOWN_HYST_VAL) ? \ (field_val - NVML_FI_PWR_SMOOTHING_ENABLED - \ (NVML_FI_PWR_SMOOTHING_PRIMARY_POWER_FLOOR - NVML_FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_DOWN_HYST_VAL - 1)) : \ (field_val - NVML_FI_PWR_SMOOTHING_ENABLED) \ )
- #define NVML_POWER_SMOOTHING_MAX_NUM_PROFILES 5
-
- #define NVML_POWER_SMOOTHING_NUM_PROFILE_PARAMS 8
-
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_PERCENT_TMP_FLOOR 0
-
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_ACT_OFFSET 7
-
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_ACT_WIN_MULT 5
-
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_TAR_WIN_MULT 6
-
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_HYSTERESIS 3
-
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_RATE 2
-
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_UP_RATE 1
-
- #define NVML_POWER_SMOOTHING_PROFILE_PARAM_SECONDARY_POWER_FLOOR 4
-
- #define nvmlPowerSmoothingProfile_v1
-
Value
NVML_STRUCT_VERSION(PowerSmoothingProfile, 1)
- #define nvmlPowerSmoothingState_v1
-
Value
NVML_STRUCT_VERSION(PowerSmoothingState, 1)
Functions
- nvmlReturn_t nvmlDevicePowerSmoothingActivatePresetProfile ( nvmlDevice_t device, nvmlPowerSmoothingProfile_t* profile )
-
Parameters
- device
- The identifier of the target device
- profile
- Reference to nvmlPowerSmoothingProfile_v1_t. Note that only profile->profileId is used and the rest of the structure is ignored.
Returns
- NVML_SUCCESS if the Desired Profile was successfully set
- NVML_ERROR_INVALID_ARGUMENT if device is invalid or structure was NULL
- NVML_ERROR_NO_PERMISSION if user does not have permission to change the profile number
- NVML_ERROR_NOT_SUPPORTED if this feature is not supported by the device
Description
Activiate a specific preset profile for datacenter power smoothing. The API only sets the active preset profile based on the input profileId, and ignores the other parameters of the structure. Requires root/admin permissions.
For Blackwell or newer fully supported devices.
- nvmlReturn_t nvmlDevicePowerSmoothingSetState ( nvmlDevice_t device, nvmlPowerSmoothingState_t* state )
-
Parameters
- device
- The identifier of the target device
- state
- Reference to nvmlPowerSmoothingState_v1_t
Returns
- NVML_SUCCESS if the feature state was successfully set
- NVML_ERROR_INVALID_ARGUMENT if device is invalid or state is NULL
- NVML_ERROR_NO_PERMISSION if user does not have permission to change feature state
- NVML_ERROR_NOT_SUPPORTED if this feature is not supported by the device
Description
Enable or disable the Power Smoothing Feature. Requires root/admin permissions.
For Blackwell or newer fully supported devices.
See nvmlEnableState_t for details on allowed states
- nvmlReturn_t nvmlDevicePowerSmoothingUpdatePresetProfileParam ( nvmlDevice_t device, nvmlPowerSmoothingProfile_t* profile )
-
Parameters
- device
- The identifier of the target device
- profile
- Reference to nvmlPowerSmoothingProfile_v1_t struct
Returns
- NVML_SUCCESS if the Active Profile was successfully set
- NVML_ERROR_INVALID_ARGUMENT if device is invalid or profile parameter/value was invalid
- NVML_ERROR_NO_PERMISSION if user does not have permission to change any profile parameters
- NVML_ERROR_ARGUMENT_VERSION_MISMATCH if the structure version is not supported
Description
Update the value of a specific profile parameter contained within nvmlPowerSmoothingProfile_v1_t. Requires root/admin permissions.
For Blackwell or newer fully supported devices.
NVML_POWER_SMOOTHING_PROFILE_PARAM_PERCENT_TMP_FLOOR expects a value as a percentage from 00.00-100.00% NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_UP_RATE expects a value in W/s NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_RATE expects a value in W/s NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_HYSTERESIS expects a value in ms