Power Smoothing Information#

Macros#

NVML_POWER_SMOOTHING_ADMIN_OVERRIDE_NOT_SET

Admin override not set.

NVML_POWER_SMOOTHING_IDX_FROM_FIELD_VAL

Macro for accomodating the gaps in field values for power smoothing.

NVML_POWER_SMOOTHING_MAX_NUM_PROFILES

Maximum number of profiles.

NVML_POWER_SMOOTHING_NUM_PROFILE_PARAMS

Number of profile parameters.

NVML_POWER_SMOOTHING_PROFILE_PARAM_PERCENT_TMP_FLOOR

Percent temperature floor.

NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_ACT_OFFSET

Primary floor activation offset value in Watts for a given profile.

NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_ACT_WIN_MULT

Primary floor activation window multiplier value for a given profile.

NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_TAR_WIN_MULT

Primary floor target window multiplier value for a given profile.

NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_HYSTERESIS

Ramp down hysteresis.

NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_RATE

Ramp down rate.

NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_UP_RATE

Ramp up rate.

NVML_POWER_SMOOTHING_PROFILE_PARAM_SECONDARY_POWER_FLOOR

Secondary power floor value in Watts for a given profile.

nvmlPowerSmoothingProfile_v1

Version macro for nvmlPowerSmoothingProfile_v1_t .

nvmlPowerSmoothingState_v1

Version macro for nvmlPowerSmoothingState_v1_t .

Functions#

nvmlReturn_t nvmlDevicePowerSmoothingActivatePresetProfile(nvmlDevice_t device, nvmlPowerSmoothingProfile_t *profile)

Activiate a specific preset profile for datacenter power smoothing.

nvmlReturn_t nvmlDevicePowerSmoothingSetState(nvmlDevice_t device, nvmlPowerSmoothingState_t *state)

Enable or disable the Power Smoothing Feature.

nvmlReturn_t nvmlDevicePowerSmoothingUpdatePresetProfileParam(nvmlDevice_t device, nvmlPowerSmoothingProfile_t *profile)

Update the value of a specific profile parameter contained within nvmlPowerSmoothingProfile_v1_t .

Structs#

nvmlPowerSmoothingProfile_v1_t

Power Smoothing Structure for Profile information.

nvmlPowerSmoothingState_v1_t

Power Smoothing Structure for Feature Enablement.

Typedefs#

Macros#

NVML_POWER_SMOOTHING_ADMIN_OVERRIDE_NOT_SET#

Admin override not set.

NVML_POWER_SMOOTHING_IDX_FROM_FIELD_VAL(field_val)#

Macro for accomodating the gaps in field values for power smoothing.

Index from field value.

NVML_POWER_SMOOTHING_MAX_NUM_PROFILES#

Maximum number of profiles.

NVML_POWER_SMOOTHING_NUM_PROFILE_PARAMS#

Number of profile parameters.

NVML_POWER_SMOOTHING_PROFILE_PARAM_PERCENT_TMP_FLOOR#

Percent temperature floor.

NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_ACT_OFFSET#

Primary floor activation offset value in Watts for a given profile.

NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_ACT_WIN_MULT#

Primary floor activation window multiplier value for a given profile.

NVML_POWER_SMOOTHING_PROFILE_PARAM_PRIMARY_FLOOR_TAR_WIN_MULT#

Primary floor target window multiplier value for a given profile.

NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_HYSTERESIS#

Ramp down hysteresis.

NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_RATE#

Ramp down rate.

NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_UP_RATE#

Ramp up rate.

NVML_POWER_SMOOTHING_PROFILE_PARAM_SECONDARY_POWER_FLOOR#

Secondary power floor value in Watts for a given profile.

nvmlPowerSmoothingProfile_v1#

Version macro for nvmlPowerSmoothingProfile_v1_t.

nvmlPowerSmoothingState_v1#

Version macro for nvmlPowerSmoothingState_v1_t.

Functions#

nvmlReturn_t nvmlDevicePowerSmoothingActivatePresetProfile(
nvmlDevice_t device,
nvmlPowerSmoothingProfile_t *profile,
)#

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.

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:

nvmlReturn_t nvmlDevicePowerSmoothingSetState(
nvmlDevice_t device,
nvmlPowerSmoothingState_t *state,
)#

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

Parameters:
Returns:

nvmlReturn_t nvmlDevicePowerSmoothingUpdatePresetProfileParam(
nvmlDevice_t device,
nvmlPowerSmoothingProfile_t *profile,
)#

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

Parameters:
Returns:

Typedefs#

typedef nvmlPowerSmoothingProfile_v1_t nvmlPowerSmoothingProfile_t#
typedef nvmlPowerSmoothingState_v1_t nvmlPowerSmoothingState_t#