![]() |
NVAPI Reference Documentation
|
Release 361: January 27
|
The GPU performance state APIs are used to get and set various performance levels on a per-GPU basis. P-States are GPU active/executing performance capability and power consumption states.
P-States range from P0 to P15, with P0 being the highest performance/power state, and P15 being the lowest performance/power state. Each P-State maps to a performance level. Not all P-States are available on a given system. The definition of each P-States are currently as follows:
Macro for constructing the version field of NV_GPU_DYNAMIC_PSTATES_INFO_EX
Macro for constructing the version field of NV_GPU_PERF_PSTATES20_INFO.
Macro for constructing the version field of NV_GPU_PERF_PSTATES20_INFO_V1.
Macro for constructing the version field of NV_GPU_PERF_PSTATES20_INFO_V2.
Macro for constructing the version field of NV_GPU_PERF_PSTATES20_INFO_V2.
Macro for constructing the version field of NV_GPU_PERF_PSTATES_INFO.
Macro for constructing the version field of NV_GPU_PERF_PSTATES_INFO_V1.
Macro for constructing the version field of NV_GPU_PERF_PSTATES_INFO_V2.
Macro for constructing the version field of NV_GPU_PERF_PSTATES_INFO_V2.
| #define NVAPI_MAX_GPU_PSTATE20_BASE_VOLTAGES 4 |
| #define NVAPI_MAX_GPU_PSTATE20_CLOCKS 8 |
| #define NVAPI_MAX_GPU_PSTATE20_PSTATES 16 |
| #define NVAPI_MAX_GPU_UTILIZATIONS 8 |
| typedef enum _NV_GPU_PERF_PSTATE_ID NV_GPU_PERF_PSTATE_ID |
| typedef struct _NV_GPU_PERF_PSTATES20_INFO_V2 NV_GPU_PERF_PSTATES20_INFO_V2 |
Used in NvAPI_GPU_GetPstates20() interface call.
| __nvapi_deprecated_function | ( | "Do not use this function - it is deprecated in release 304. | Instead, |
| use NvAPI_GPU_GetPstates20." | |||
| ) |
DESCRIPTION: This API retrieves all performance states (P-States) information. This is the same as NvAPI_GPU_GetPstatesInfo(), but supports an input flag for various options.
P-States are GPU active/executing performance capability and power consumption states.
P-States ranges from P0 to P15, with P0 being the highest performance/power state, and P15 being the lowest performance/power state. Each P-State, if available, maps to a performance level. Not all P-States are available on a given system. The definitions of each P-State are currently as follows:
| [in] | hPhysicalGPU | GPU selection. |
| [out] | pPerfPstatesInfo | P-States information retrieved, as detailed below:
|
| NVAPI_OK | Completed request |
| NVAPI_ERROR | Miscellaneous error occurred |
| NVAPI_HANDLE_INVALIDATED | Handle passed has been invalidated (see user guide) |
| NVAPI_EXPECTED_PHYSICAL_GPU_HANDLE | Handle passed is not a physical GPU handle |
| NVAPI_INCOMPATIBLE_STRUCT_VERSION | The version of the NV_GPU_PERF_PSTATES struct is not supported |
| NVAPI_INTERFACE NvAPI_GPU_GetCurrentPstate | ( | NvPhysicalGpuHandle | hPhysicalGpu, |
| NV_GPU_PERF_PSTATE_ID * | pCurrentPstate | ||
| ) |
DESCRIPTION: This function retrieves the current performance state (P-State).
SUPPORTED OS: Windows XP and higher
TCC_SUPPORTED
| [in] | hPhysicalGPU | GPU selection |
| [out] | pCurrentPstate | The ID of the current P-State of the GPU - see NV_GPU_PERF_PSTATES. |
| NVAPI_OK | Completed request |
| NVAPI_ERROR | Miscellaneous error occurred. |
| NVAPI_HANDLE_INVALIDATED | Handle passed has been invalidated (see user guide). |
| NVAPI_EXPECTED_PHYSICAL_GPU_HANDLE | Handle passed is not a physical GPU handle. |
| NVAPI_NOT_SUPPORTED | P-States is not supported on this setup. |
| NVAPI_INTERFACE NvAPI_GPU_GetDynamicPstatesInfoEx | ( | NvPhysicalGpuHandle | hPhysicalGpu, |
| NV_GPU_DYNAMIC_PSTATES_INFO_EX * | pDynamicPstatesInfoEx | ||
| ) |
DESCRIPTION: This API retrieves the NV_GPU_DYNAMIC_PSTATES_INFO_EX structure for the specified physical GPU. Each domain's info is indexed in the array. For example:
There are currently 4 domains for which GPU utilization and dynamic P-State thresholds can be retrieved: graphic engine (GPU), frame buffer (FB), video engine (VID), and bus interface (BUS).SUPPORTED OS: Windows XP and higher
| NVAPI_OK | |
| NVAPI_ERROR | |
| NVAPI_INVALID_ARGUMENT | pDynamicPstatesInfo is NULL |
| NVAPI_HANDLE_INVALIDATED | |
| NVAPI_EXPECTED_PHYSICAL_GPU_HANDLE | |
| NVAPI_INCOMPATIBLE_STRUCT_VERSION | The version of the INFO struct is not supported |
| NVAPI_INTERFACE NvAPI_GPU_GetPstates20 | ( | __in NvPhysicalGpuHandle | hPhysicalGpu, |
| __inout NV_GPU_PERF_PSTATES20_INFO * | pPstatesInfo | ||
| ) |
DESCRIPTION: This API retrieves all performance states (P-States) 2.0 information.
P-States are GPU active/executing performance capability states. They range from P0 to P15, with P0 being the highest performance state, and P15 being the lowest performance state. Each P-State, if available, maps to a performance level. Not all P-States are available on a given system. The definition of each P-States are currently as follow:
TCC_SUPPORTED
SUPPORTED OS: Windows XP and higher
| [in] | hPhysicalGPU | GPU selection |
| [out] | pPstatesInfo | P-States information retrieved, as documented in declaration above |
