NVAPI Reference Documentation
NVIDIA
Release 550
Wed Apr 17 2024

Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
GPU General Control Interface

Data Structures

struct  _NV_GPU_DISPLAYIDS
 
struct  _NV_BOARD_INFO
 
struct  NV_GPU_ARCH_INFO_V1
 
struct  NV_GPU_ARCH_INFO_V2
 
struct  NV_I2C_INFO_V1
 
struct  NV_I2C_INFO_V2
 
struct  NV_I2C_INFO_V3
 
struct  NV_GPU_GET_HDCP_SUPPORT_STATUS
 
struct  NV_COMPUTE_GPU_TOPOLOGY_V1
 
struct  _NV_COMPUTE_GPU
 
struct  _NV_COMPUTE_GPU_TOPOLOGY_V2
 
struct  NV_SCANOUT_INTENSITY_DATA_V1
 
struct  NV_SCANOUT_INTENSITY_DATA_V2
 
struct  _NV_SCANOUT_INTENSITY_STATE_DATA
 
struct  NV_SCANOUT_WARPING_DATA
 
struct  _NV_SCANOUT_WARPING_STATE_DATA
 
struct  _NV_SCANOUT_INFORMATION
 
struct  _NV_GPU_VIRTUALIZATION_INFO
 
struct  _NV_LOGICAL_GPU_DATA_V1
 
struct  _NV_GPU_GSP_INFO_V1
 
struct  _NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_V1
 
struct  _NV_GPU_GET_ILLUMINATION_PARM_V1
 
struct  _NV_GPU_SET_ILLUMINATION_PARM_V1
 

Macros

#define NV_EDID_DATA_SIZE_MAX   1024
 
#define NV_GPU_DISPLAYIDS_VER1   MAKE_NVAPI_VERSION(NV_GPU_DISPLAYIDS,1)
 
#define NV_GPU_DISPLAYIDS_VER2   MAKE_NVAPI_VERSION(NV_GPU_DISPLAYIDS,3)
 
#define NV_GPU_DISPLAYIDS_VER   NV_GPU_DISPLAYIDS_VER2
 
#define NV_BOARD_INFO_VER1   MAKE_NVAPI_VERSION(NV_BOARD_INFO_V1,1)
 
#define NV_BOARD_INFO_VER   NV_BOARD_INFO_VER1
 
#define NV_GPU_ARCH_INFO_VER_1   MAKE_NVAPI_VERSION(NV_GPU_ARCH_INFO_V1,1)
 
#define NV_GPU_ARCH_INFO_VER_2   MAKE_NVAPI_VERSION(NV_GPU_ARCH_INFO_V2,2)
 
#define NV_GPU_ARCH_INFO_VER   NV_GPU_ARCH_INFO_VER_2
 
#define NV_GPU_GET_HDCP_SUPPORT_STATUS_VER   MAKE_NVAPI_VERSION(NV_GPU_GET_HDCP_SUPPORT_STATUS,1)
 
#define NV_COMPUTE_GPU_TOPOLOGY_VER1   MAKE_NVAPI_VERSION(NV_COMPUTE_GPU_TOPOLOGY_V1,1)
 
#define NV_COMPUTE_GPU_TOPOLOGY_VER   MAKE_NVAPI_VERSION(NV_COMPUTE_GPU_TOPOLOGY_V2,2)
 
#define NV_SCANOUT_INTENSITY_DATA_VER1   MAKE_NVAPI_VERSION(NV_SCANOUT_INTENSITY_DATA_V1, 1)
 
#define NV_SCANOUT_INTENSITY_STATE_VER   MAKE_NVAPI_VERSION(NV_SCANOUT_INTENSITY_STATE_DATA, 1)
 
#define NV_SCANOUT_WARPING_VER   MAKE_NVAPI_VERSION(NV_SCANOUT_WARPING_DATA, 1)
 
#define NV_SCANOUT_WARPING_STATE_VER   MAKE_NVAPI_VERSION(NV_SCANOUT_WARPING_STATE_DATA, 1)
 
#define NV_GPU_VIRTUALIZATION_INFO_VER1   MAKE_NVAPI_VERSION(NV_GPU_VIRTUALIZATION_INFO_V1,1)
 
#define NV_GPU_VIRTUALIZATION_INFO_VER   NV_GPU_VIRTUALIZATION_INFO_VER1
 
#define NVAPI_GPU_MAX_BUILD_VERSION_LENGTH   (0x0000040)
 
#define NV_GPU_GSP_INFO_VER1   MAKE_NVAPI_VERSION(NV_GPU_GSP_INFO_V1, 1)
 
#define NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_VER_1   MAKE_NVAPI_VERSION(NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_V1,1)
 
#define NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_VER   NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_VER_1
 
#define NV_GPU_GET_ILLUMINATION_PARM_VER_1   MAKE_NVAPI_VERSION(NV_GPU_GET_ILLUMINATION_PARM_V1,1)
 
#define NV_GPU_GET_ILLUMINATION_PARM_VER   NV_GPU_GET_ILLUMINATION_PARM_VER_1
 
#define NV_GPU_SET_ILLUMINATION_PARM_VER_1   MAKE_NVAPI_VERSION(NV_GPU_SET_ILLUMINATION_PARM_V1,1)
 
#define NV_GPU_SET_ILLUMINATION_PARM_VER   NV_GPU_SET_ILLUMINATION_PARM_VER_1
 

Typedefs

typedef enum _NV_GPU_CONNECTOR_TYPE NV_GPU_CONNECTOR_TYPE
 
typedef struct _NV_GPU_DISPLAYIDS NV_GPU_DISPLAYIDS
 
typedef enum _NV_GPU_OUTPUT_TYPE NV_GPU_OUTPUT_TYPE
 
typedef enum _NV_GPU_TYPE NV_GPU_TYPE
 
typedef enum _NV_GPU_BUS_TYPE NV_GPU_BUS_TYPE
 
typedef struct _NV_BOARD_INFO NV_BOARD_INFO_V1
 
typedef NV_BOARD_INFO_V1 NV_BOARD_INFO
 
typedef enum _NV_GPU_ARCHITECTURE_ID NV_GPU_ARCHITECTURE_ID
 
typedef enum _NV_GPU_ARCH_IMPLEMENTATION_ID NV_GPU_ARCH_IMPLEMENTATION_ID
 
typedef enum _NV_GPU_CHIP_REVISION NV_GPU_CHIP_REVISION
 
typedef NV_GPU_ARCH_INFO_V2 NV_GPU_ARCH_INFO
 
typedef enum _NV_GPU_HDCP_FUSE_STATE NV_GPU_HDCP_FUSE_STATE
 
typedef enum _NV_GPU_HDCP_KEY_SOURCE NV_GPU_HDCP_KEY_SOURCE
 
typedef enum _NV_GPU_HDCP_KEY_SOURCE_STATE NV_GPU_HDCP_KEY_SOURCE_STATE
 
typedef struct _NV_COMPUTE_GPU NV_COMPUTE_GPU
 
typedef struct _NV_COMPUTE_GPU_TOPOLOGY_V2 NV_COMPUTE_GPU_TOPOLOGY_V2
 
typedef NV_COMPUTE_GPU_TOPOLOGY_V2 NV_COMPUTE_GPU_TOPOLOGY
 
typedef enum _NV_GPU_WORKSTATION_FEATURE_TYPE NV_GPU_WORKSTATION_FEATURE_TYPE
 
typedef struct _NV_SCANOUT_INTENSITY_STATE_DATA NV_SCANOUT_INTENSITY_STATE_DATA
 
typedef struct _NV_SCANOUT_WARPING_STATE_DATA NV_SCANOUT_WARPING_STATE_DATA
 
typedef struct _NV_SCANOUT_INFORMATION NV_SCANOUT_INFORMATION
 
typedef enum _NV_VIRTUALIZATION_MODE NV_VIRTUALIZATION_MODE
 
typedef struct _NV_GPU_VIRTUALIZATION_INFO NV_GPU_VIRTUALIZATION_INFO_V1
 
typedef NV_GPU_VIRTUALIZATION_INFO_V1 NV_GPU_VIRTUALIZATION_INFO
 
typedef struct _NV_LOGICAL_GPU_DATA_V1 NV_LOGICAL_GPU_DATA_V1
 
typedef NV_LOGICAL_GPU_DATA_V1 NV_LOGICAL_GPU_DATA
 
typedef struct _NV_GPU_GSP_INFO_V1 NV_GPU_GSP_INFO_V1
 
typedef enum _NV_GPU_ILLUMINATION_ATTRIB NV_GPU_ILLUMINATION_ATTRIB
 
typedef struct _NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_V1 NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_V1
 
typedef NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_V1 NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM
 
typedef struct _NV_GPU_GET_ILLUMINATION_PARM_V1 NV_GPU_GET_ILLUMINATION_PARM_V1
 
typedef NV_GPU_GET_ILLUMINATION_PARM_V1 NV_GPU_GET_ILLUMINATION_PARM
 
typedef struct _NV_GPU_SET_ILLUMINATION_PARM_V1 NV_GPU_SET_ILLUMINATION_PARM_V1
 
typedef NV_GPU_SET_ILLUMINATION_PARM_V1 NV_GPU_SET_ILLUMINATION_PARM
 

Enumerations

enum  _NV_GPU_CONNECTOR_TYPE {
  NVAPI_GPU_CONNECTOR_VGA_15_PIN = 0x00000000 , NVAPI_GPU_CONNECTOR_TV_COMPOSITE = 0x00000010 , NVAPI_GPU_CONNECTOR_TV_SVIDEO = 0x00000011 , NVAPI_GPU_CONNECTOR_TV_HDTV_COMPONENT = 0x00000013 ,
  NVAPI_GPU_CONNECTOR_TV_SCART = 0x00000014 , NVAPI_GPU_CONNECTOR_TV_COMPOSITE_SCART_ON_EIAJ4120 = 0x00000016 , NVAPI_GPU_CONNECTOR_TV_HDTV_EIAJ4120 = 0x00000017 , NVAPI_GPU_CONNECTOR_PC_POD_HDTV_YPRPB = 0x00000018 ,
  NVAPI_GPU_CONNECTOR_PC_POD_SVIDEO = 0x00000019 , NVAPI_GPU_CONNECTOR_PC_POD_COMPOSITE = 0x0000001A , NVAPI_GPU_CONNECTOR_DVI_I_TV_SVIDEO = 0x00000020 , NVAPI_GPU_CONNECTOR_DVI_I_TV_COMPOSITE = 0x00000021 ,
  NVAPI_GPU_CONNECTOR_DVI_I = 0x00000030 , NVAPI_GPU_CONNECTOR_DVI_D = 0x00000031 , NVAPI_GPU_CONNECTOR_ADC = 0x00000032 , NVAPI_GPU_CONNECTOR_LFH_DVI_I_1 = 0x00000038 ,
  NVAPI_GPU_CONNECTOR_LFH_DVI_I_2 = 0x00000039 , NVAPI_GPU_CONNECTOR_SPWG = 0x00000040 , NVAPI_GPU_CONNECTOR_OEM = 0x00000041 , NVAPI_GPU_CONNECTOR_DISPLAYPORT_EXTERNAL = 0x00000046 ,
  NVAPI_GPU_CONNECTOR_DISPLAYPORT_INTERNAL = 0x00000047 , NVAPI_GPU_CONNECTOR_DISPLAYPORT_MINI_EXT = 0x00000048 , NVAPI_GPU_CONNECTOR_HDMI_A = 0x00000061 , NVAPI_GPU_CONNECTOR_HDMI_C_MINI = 0x00000063 ,
  NVAPI_GPU_CONNECTOR_LFH_DISPLAYPORT_1 = 0x00000064 , NVAPI_GPU_CONNECTOR_LFH_DISPLAYPORT_2 = 0x00000065 , NVAPI_GPU_CONNECTOR_VIRTUAL_WFD = 0x00000070 , NVAPI_GPU_CONNECTOR_USB_C = 0x00000071 ,
  NVAPI_GPU_CONNECTOR_UNKNOWN = 0xFFFFFFFF
}
 
enum  NV_SYSTEM_TYPE { NV_SYSTEM_TYPE_UNKNOWN = 0 , NV_SYSTEM_TYPE_LAPTOP = 1 , NV_SYSTEM_TYPE_DESKTOP = 2 }
 
enum  _NV_GPU_OUTPUT_TYPE { NVAPI_GPU_OUTPUT_UNKNOWN = 0 , NVAPI_GPU_OUTPUT_CRT = 1 , NVAPI_GPU_OUTPUT_DFP = 2 , NVAPI_GPU_OUTPUT_TV = 3 }
 
enum  _NV_GPU_TYPE { NV_SYSTEM_TYPE_GPU_UNKNOWN = 0 , NV_SYSTEM_TYPE_IGPU = 1 , NV_SYSTEM_TYPE_DGPU = 2 }
 
enum  _NV_GPU_BUS_TYPE {
  NVAPI_GPU_BUS_TYPE_UNDEFINED = 0 , NVAPI_GPU_BUS_TYPE_PCI = 1 , NVAPI_GPU_BUS_TYPE_AGP = 2 , NVAPI_GPU_BUS_TYPE_PCI_EXPRESS = 3 ,
  NVAPI_GPU_BUS_TYPE_FPCI = 4 , NVAPI_GPU_BUS_TYPE_AXI = 5
}
 
enum  _NV_GPU_ARCHITECTURE_ID {
  NV_GPU_ARCHITECTURE_T2X = 0xE0000020 , NV_GPU_ARCHITECTURE_T3X = 0xE0000030 , NV_GPU_ARCHITECTURE_T4X = 0xE0000040 , NV_GPU_ARCHITECTURE_T12X = 0xE0000040 ,
  NV_GPU_ARCHITECTURE_NV40 = 0x00000040 , NV_GPU_ARCHITECTURE_NV50 = 0x00000050 , NV_GPU_ARCHITECTURE_G78 = 0x00000060 , NV_GPU_ARCHITECTURE_G80 = 0x00000080 ,
  NV_GPU_ARCHITECTURE_G90 = 0x00000090 , NV_GPU_ARCHITECTURE_GT200 = 0x000000A0 , NV_GPU_ARCHITECTURE_GF100 = 0x000000C0 , NV_GPU_ARCHITECTURE_GF110 = 0x000000D0 ,
  NV_GPU_ARCHITECTURE_GK100 = 0x000000E0 , NV_GPU_ARCHITECTURE_GK110 = 0x000000F0 , NV_GPU_ARCHITECTURE_GK200 = 0x00000100 , NV_GPU_ARCHITECTURE_GM000 = 0x00000110 ,
  NV_GPU_ARCHITECTURE_GM200 = 0x00000120 , NV_GPU_ARCHITECTURE_GP100 = 0x00000130 , NV_GPU_ARCHITECTURE_GV100 = 0x00000140 , NV_GPU_ARCHITECTURE_GV110 = 0x00000150 ,
  NV_GPU_ARCHITECTURE_TU100 = 0x00000160 , NV_GPU_ARCHITECTURE_GA100 = 0x00000170 , NV_GPU_ARCHITECTURE_AD100 = 0x00000190
}
 
enum  _NV_GPU_ARCH_IMPLEMENTATION_ID {
  NV_GPU_ARCH_IMPLEMENTATION_T20 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_T30 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_T35 = 0x00000005 , NV_GPU_ARCH_IMPLEMENTATION_T40 = 0x00000000 ,
  NV_GPU_ARCH_IMPLEMENTATION_T124 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_NV40 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_NV41 = 0x00000001 , NV_GPU_ARCH_IMPLEMENTATION_NV42 = 0x00000002 ,
  NV_GPU_ARCH_IMPLEMENTATION_NV43 = 0x00000003 , NV_GPU_ARCH_IMPLEMENTATION_NV44 = 0x00000004 , NV_GPU_ARCH_IMPLEMENTATION_NV44A = 0x0000000A , NV_GPU_ARCH_IMPLEMENTATION_NV46 = 0x00000006 ,
  NV_GPU_ARCH_IMPLEMENTATION_NV47 = 0x00000007 , NV_GPU_ARCH_IMPLEMENTATION_NV49 = 0x00000009 , NV_GPU_ARCH_IMPLEMENTATION_NV4B = 0x0000000B , NV_GPU_ARCH_IMPLEMENTATION_NV4C = 0x0000000C ,
  NV_GPU_ARCH_IMPLEMENTATION_NV4E = 0x0000000E , NV_GPU_ARCH_IMPLEMENTATION_NV50 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_NV63 = 0x00000003 , NV_GPU_ARCH_IMPLEMENTATION_NV67 = 0x00000007 ,
  NV_GPU_ARCH_IMPLEMENTATION_G84 = 0x00000004 , NV_GPU_ARCH_IMPLEMENTATION_G86 = 0x00000006 , NV_GPU_ARCH_IMPLEMENTATION_G92 = 0x00000002 , NV_GPU_ARCH_IMPLEMENTATION_G94 = 0x00000004 ,
  NV_GPU_ARCH_IMPLEMENTATION_G96 = 0x00000006 , NV_GPU_ARCH_IMPLEMENTATION_G98 = 0x00000008 , NV_GPU_ARCH_IMPLEMENTATION_GT200 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_GT212 = 0x00000002 ,
  NV_GPU_ARCH_IMPLEMENTATION_GT214 = 0x00000004 , NV_GPU_ARCH_IMPLEMENTATION_GT215 = 0x00000003 , NV_GPU_ARCH_IMPLEMENTATION_GT216 = 0x00000005 , NV_GPU_ARCH_IMPLEMENTATION_GT218 = 0x00000008 ,
  NV_GPU_ARCH_IMPLEMENTATION_MCP77 = 0x0000000A , NV_GPU_ARCH_IMPLEMENTATION_GT21C = 0x0000000B , NV_GPU_ARCH_IMPLEMENTATION_MCP79 = 0x0000000C , NV_GPU_ARCH_IMPLEMENTATION_GT21A = 0x0000000D ,
  NV_GPU_ARCH_IMPLEMENTATION_MCP89 = 0x0000000F , NV_GPU_ARCH_IMPLEMENTATION_GF100 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_GF104 = 0x00000004 , NV_GPU_ARCH_IMPLEMENTATION_GF106 = 0x00000003 ,
  NV_GPU_ARCH_IMPLEMENTATION_GF108 = 0x00000001 , NV_GPU_ARCH_IMPLEMENTATION_GF110 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_GF116 = 0x00000006 , NV_GPU_ARCH_IMPLEMENTATION_GF117 = 0x00000007 ,
  NV_GPU_ARCH_IMPLEMENTATION_GF118 = 0x00000008 , NV_GPU_ARCH_IMPLEMENTATION_GF119 = 0x00000009 , NV_GPU_ARCH_IMPLEMENTATION_GK104 = 0x00000004 , NV_GPU_ARCH_IMPLEMENTATION_GK106 = 0x00000006 ,
  NV_GPU_ARCH_IMPLEMENTATION_GK107 = 0x00000007 , NV_GPU_ARCH_IMPLEMENTATION_GK20A = 0x0000000A , NV_GPU_ARCH_IMPLEMENTATION_GK110 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_GK208 = 0x00000008 ,
  NV_GPU_ARCH_IMPLEMENTATION_GM204 = 0x00000004 , NV_GPU_ARCH_IMPLEMENTATION_GM206 = 0x00000006 , NV_GPU_ARCH_IMPLEMENTATION_GP100 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_GP000 = 0x00000001 ,
  NV_GPU_ARCH_IMPLEMENTATION_GP102 = 0x00000002 , NV_GPU_ARCH_IMPLEMENTATION_GP104 = 0x00000004 , NV_GPU_ARCH_IMPLEMENTATION_GP106 = 0x00000006 , NV_GPU_ARCH_IMPLEMENTATION_GP107 = 0x00000007 ,
  NV_GPU_ARCH_IMPLEMENTATION_GP108 = 0x00000008 , NV_GPU_ARCH_IMPLEMENTATION_GV100 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_GV10B = 0x0000000B , NV_GPU_ARCH_IMPLEMENTATION_TU100 = 0x00000000 ,
  NV_GPU_ARCH_IMPLEMENTATION_TU102 = 0x00000002 , NV_GPU_ARCH_IMPLEMENTATION_TU104 = 0x00000004 , NV_GPU_ARCH_IMPLEMENTATION_TU106 = 0x00000006 , NV_GPU_ARCH_IMPLEMENTATION_TU116 = 0x00000008 ,
  NV_GPU_ARCH_IMPLEMENTATION_TU117 = 0x00000007 , NV_GPU_ARCH_IMPLEMENTATION_TU000 = 0x00000001 , NV_GPU_ARCH_IMPLEMENTATION_GA100 = 0x00000000 , NV_GPU_ARCH_IMPLEMENTATION_GA102 = 0x00000002 ,
  NV_GPU_ARCH_IMPLEMENTATION_GA104 = 0x00000004 , NV_GPU_ARCH_IMPLEMENTATION_AD102 = 0x00000002 , NV_GPU_ARCH_IMPLEMENTATION_AD103 = 0x00000003 , NV_GPU_ARCH_IMPLEMENTATION_AD104 = 0x00000004
}
 
enum  _NV_GPU_CHIP_REVISION {
  NV_GPU_CHIP_REV_EMULATION_QT = 0x00000000 , NV_GPU_CHIP_REV_EMULATION_FPGA = 0x00000001 , NV_GPU_CHIP_REV_A01 = 0x00000011 , NV_GPU_CHIP_REV_A02 = 0x00000012 ,
  NV_GPU_CHIP_REV_A03 = 0x00000013 , NV_GPU_CHIP_REV_UNKNOWN = 0xffffffff
}
 
enum  NVAPI_GPU_WORKSTATION_FEATURE_MASK {
  NVAPI_GPU_WORKSTATION_FEATURE_MASK_SWAPGROUP = 0x00000001 , NVAPI_GPU_WORKSTATION_FEATURE_MASK_STEREO = 0x00000010 , NVAPI_GPU_WORKSTATION_FEATURE_MASK_WARPING = 0x00000100 , NVAPI_GPU_WORKSTATION_FEATURE_MASK_PIXINTENSITY = 0x00000200 ,
  NVAPI_GPU_WORKSTATION_FEATURE_MASK_GRAYSCALE = 0x00000400 , NVAPI_GPU_WORKSTATION_FEATURE_MASK_BPC10 = 0x00001000
}
 
enum  _NV_GPU_HDCP_FUSE_STATE { NV_GPU_HDCP_FUSE_STATE_UNKNOWN = 0 , NV_GPU_HDCP_FUSE_STATE_DISABLED = 1 , NV_GPU_HDCP_FUSE_STATE_ENABLED = 2 }
 
enum  _NV_GPU_HDCP_KEY_SOURCE {
  NV_GPU_HDCP_KEY_SOURCE_UNKNOWN = 0 , NV_GPU_HDCP_KEY_SOURCE_NONE = 1 , NV_GPU_HDCP_KEY_SOURCE_CRYPTO_ROM = 2 , NV_GPU_HDCP_KEY_SOURCE_SBIOS = 3 ,
  NV_GPU_HDCP_KEY_SOURCE_I2C_ROM = 4 , NV_GPU_HDCP_KEY_SOURCE_FUSES = 5
}
 
enum  _NV_GPU_HDCP_KEY_SOURCE_STATE { NV_GPU_HDCP_KEY_SOURCE_STATE_UNKNOWN = 0 , NV_GPU_HDCP_KEY_SOURCE_STATE_ABSENT = 1 , NV_GPU_HDCP_KEY_SOURCE_STATE_PRESENT = 2 }
 
enum  _NV_GPU_WORKSTATION_FEATURE_TYPE { NV_GPU_WORKSTATION_FEATURE_TYPE_NVIDIA_RTX_VR_READY = 1 , NV_GPU_WORKSTATION_FEATURE_TYPE_QUADRO_VR_READY = NV_GPU_WORKSTATION_FEATURE_TYPE_NVIDIA_RTX_VR_READY , NV_GPU_WORKSTATION_FEATURE_TYPE_PROVIZ = 2 }
 
enum  NV_GPU_WARPING_VERTICE_FORMAT { NV_GPU_WARPING_VERTICE_FORMAT_TRIANGLESTRIP_XYUVRQ = 0 , NV_GPU_WARPING_VERTICE_FORMAT_TRIANGLES_XYUVRQ = 1 }
 
enum  _NV_VIRTUALIZATION_MODE { NV_VIRTUALIZATION_MODE_NONE = 0 , NV_VIRTUALIZATION_MODE_NMOS = 1 , NV_VIRTUALIZATION_MODE_VGX = 2 , NV_VIRTUALIZATION_MODE_HOST_VGPU = 3 }
 
enum  _NV_GPU_ILLUMINATION_ATTRIB { NV_GPU_IA_LOGO_BRIGHTNESS = 0 , NV_GPU_IA_SLI_BRIGHTNESS = 1 }
 

Functions

NVAPI_INTERFACE NvAPI_GPU_GetEDID (NvPhysicalGpuHandle hPhysicalGpu, NvU32 displayOutputId, NV_EDID *pEDID)
 
NVAPI_INTERFACE NvAPI_GPU_GetConnectedDisplayIds (__in NvPhysicalGpuHandle hPhysicalGpu, __inout_ecount_part_opt(*pDisplayIdCount, *pDisplayIdCount) NV_GPU_DISPLAYIDS *pDisplayIds, __inout NvU32 *pDisplayIdCount, __in NvU32 flags)
 
NVAPI_INTERFACE NvAPI_GPU_GetAllDisplayIds (__in NvPhysicalGpuHandle hPhysicalGpu, __inout_ecount_part_opt(*pDisplayIdCount, *pDisplayIdCount) NV_GPU_DISPLAYIDS *pDisplayIds, __inout NvU32 *pDisplayIdCount)
 
NVAPI_INTERFACE NvAPI_GPU_GetSystemType (NvPhysicalGpuHandle hPhysicalGpu, NV_SYSTEM_TYPE *pSystemType)
 
NVAPI_INTERFACE NvAPI_GPU_GetActiveOutputs (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pOutputsMask)
 
NVAPI_INTERFACE NvAPI_GPU_SetEDID (NvPhysicalGpuHandle hPhysicalGpu, NvU32 displayOutputId, NV_EDID *pEDID)
 
NVAPI_INTERFACE NvAPI_GPU_GetOutputType (NvPhysicalGpuHandle hPhysicalGpu, NvU32 outputId, NV_GPU_OUTPUT_TYPE *pOutputType)
 
NVAPI_INTERFACE NvAPI_GPU_ValidateOutputCombination (NvPhysicalGpuHandle hPhysicalGpu, NvU32 outputsMask)
 
NVAPI_INTERFACE NvAPI_GPU_GetFullName (NvPhysicalGpuHandle hPhysicalGpu, NvAPI_ShortString szName)
 
NVAPI_INTERFACE NvAPI_GPU_GetPCIIdentifiers (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pDeviceId, NvU32 *pSubSystemId, NvU32 *pRevisionId, NvU32 *pExtDeviceId)
 
NVAPI_INTERFACE NvAPI_GPU_GetGPUType (__in NvPhysicalGpuHandle hPhysicalGpu, __inout NV_GPU_TYPE *pGpuType)
 
NVAPI_INTERFACE NvAPI_GPU_GetBusType (NvPhysicalGpuHandle hPhysicalGpu, NV_GPU_BUS_TYPE *pBusType)
 
NVAPI_INTERFACE NvAPI_GPU_GetBusId (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pBusId)
 
NVAPI_INTERFACE NvAPI_GPU_GetBusSlotId (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pBusSlotId)
 
NVAPI_INTERFACE NvAPI_GPU_GetIRQ (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pIRQ)
 
NVAPI_INTERFACE NvAPI_GPU_GetVbiosRevision (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pBiosRevision)
 
NVAPI_INTERFACE NvAPI_GPU_GetVbiosOEMRevision (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pBiosRevision)
 
NVAPI_INTERFACE NvAPI_GPU_GetVbiosVersionString (NvPhysicalGpuHandle hPhysicalGpu, NvAPI_ShortString szBiosRevision)
 
 __nvapi_deprecated_function ("Do not use this function - it is deprecated in release 455.") NVAPI_INTERFACE NvAPI_GPU_GetAGPAperture(NvPhysicalGpuHandle hPhysicalGpu
 
NVAPI_INTERFACE NvAPI_GPU_GetCurrentPCIEDownstreamWidth (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pWidth)
 
NVAPI_INTERFACE NvAPI_GPU_GetPhysicalFrameBufferSize (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pSize)
 
NVAPI_INTERFACE NvAPI_GPU_GetVirtualFrameBufferSize (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pSize)
 
 __nvapi_deprecated_function ("Do not use this function - it is deprecated in release 460.") NVAPI_INTERFACE NvAPI_GPU_GetQuadroStatus(NvPhysicalGpuHandle hPhysicalGpu
 
NVAPI_INTERFACE NvAPI_GPU_GetBoardInfo (NvPhysicalGpuHandle hPhysicalGpu, NV_BOARD_INFO *pBoardInfo)
 
NVAPI_INTERFACE NvAPI_GPU_GetRamBusWidth (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pBusWidth)
 
NVAPI_INTERFACE NvAPI_GPU_GetArchInfo (NvPhysicalGpuHandle hPhysicalGpu, NV_GPU_ARCH_INFO *pGpuArchInfo)
 
NVAPI_INTERFACE NvAPI_GPU_WorkstationFeatureSetup (__in NvPhysicalGpuHandle hPhysicalGpu, __in NvU32 featureEnableMask, __in NvU32 featureDisableMask)
 
NVAPI_INTERFACE NvAPI_GPU_WorkstationFeatureQuery (__in NvPhysicalGpuHandle hPhysicalGpu, __out_opt NvU32 *pConfiguredFeatureMask, __out_opt NvU32 *pConsistentFeatureMask)
 
NVAPI_INTERFACE NvAPI_GPU_GetHDCPSupportStatus (NvPhysicalGpuHandle hPhysicalGpu, NV_GPU_GET_HDCP_SUPPORT_STATUS *pGetHDCPSupportStatus)
 
NVAPI_INTERFACE NvAPI_GPU_SetScanoutIntensity (NvU32 displayId, NV_SCANOUT_INTENSITY_DATA *scanoutIntensityData, int *pbSticky)
 
NVAPI_INTERFACE NvAPI_GPU_GetScanoutIntensityState (__in NvU32 displayId, __inout NV_SCANOUT_INTENSITY_STATE_DATA *scanoutIntensityStateData)
 
NVAPI_INTERFACE NvAPI_GPU_SetScanoutWarping (NvU32 displayId, NV_SCANOUT_WARPING_DATA *scanoutWarpingData, int *piMaxNumVertices, int *pbSticky)
 
NVAPI_INTERFACE NvAPI_GPU_GetScanoutWarpingState (__in NvU32 displayId, __inout NV_SCANOUT_WARPING_STATE_DATA *scanoutWarpingStateData)
 
NVAPI_INTERFACE NvAPI_GPU_SetScanoutCompositionParameter (NvU32 displayId, NV_GPU_SCANOUT_COMPOSITION_PARAMETER parameter, NV_GPU_SCANOUT_COMPOSITION_PARAMETER_VALUE parameterValue, float *pContainer)
 
NVAPI_INTERFACE NvAPI_GPU_GetScanoutCompositionParameter (__in NvU32 displayId, __in NV_GPU_SCANOUT_COMPOSITION_PARAMETER parameter, __out NV_GPU_SCANOUT_COMPOSITION_PARAMETER_VALUE *parameterData, __out float *pContainer)
 
NVAPI_INTERFACE NvAPI_GPU_GetScanoutConfiguration (NvU32 displayId, NvSBox *desktopRect, NvSBox *scanoutRect)
 
NVAPI_INTERFACE NvAPI_GPU_GetScanoutConfigurationEx (__in NvU32 displayId, __inout NV_SCANOUT_INFORMATION *pScanoutInformation)
 
 __nvapi_deprecated_function ("Do not use this function - it is deprecated in release 520. Instead, use NvAPI_GPU_GetLogicalGpuInfo.") NVAPI_INTERFACE NvAPI_GPU_GetAdapterIdFromPhysicalGpu(NvPhysicalGpuHandle hPhysicalGpu
 
NVAPI_INTERFACE NvAPI_GPU_GetVirtualizationInfo (__in NvPhysicalGpuHandle hPhysicalGpu, __inout NV_GPU_VIRTUALIZATION_INFO *pVirtualizationInfo)
 
NVAPI_INTERFACE NvAPI_GPU_GetLogicalGpuInfo (__in NvLogicalGpuHandle hLogicalGpu, __inout NV_LOGICAL_GPU_DATA *pLogicalGpuData)
 
NVAPI_INTERFACE NvAPI_GPU_GetGPUInfo (__in NvPhysicalGpuHandle hPhysicalGpu, __inout NV_GPU_INFO *pGpuInfo)
 
NVAPI_INTERFACE NvAPI_GPU_GetVRReadyData (__in NvPhysicalGpuHandle hPhysicalGpu, __inout NV_GPU_VR_READY *pGpuVrReadyData)
 
NVAPI_INTERFACE NvAPI_GPU_GetGspFeatures (__in NvPhysicalGpuHandle hPhysicalGpu, __inout NV_GPU_GSP_INFO *pGspInfo)
 
NVAPI_INTERFACE NvAPI_GPU_QueryIlluminationSupport (__inout NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM *pIlluminationSupportInfo)
 
NVAPI_INTERFACE NvAPI_GPU_GetIllumination (NV_GPU_GET_ILLUMINATION_PARM *pIlluminationInfo)
 
NVAPI_INTERFACE NvAPI_GPU_SetIllumination (NV_GPU_SET_ILLUMINATION_PARM *pIlluminationInfo)
 
NVAPI_INTERFACE NvAPI_Event_RegisterCallback (PNV_EVENT_REGISTER_CALLBACK eventCallback, NvEventHandle *phClient)
 
NVAPI_INTERFACE NvAPI_Event_UnregisterCallback (NvEventHandle hClient)
 
NVAPI_INTERFACE NvAPI_DISP_GetNvManagedDedicatedDisplays (__inout NvU32 *pDedicatedDisplayCount, __inout NV_MANAGED_DEDICATED_DISPLAY_INFO *pDedicatedDisplays)
 
NVAPI_INTERFACE NvAPI_DISP_GetNvManagedDedicatedDisplayMetadata (__inout NV_MANAGED_DEDICATED_DISPLAY_METADATA *pDedicatedDisplayMetadata)
 
NVAPI_INTERFACE NvAPI_DISP_SetNvManagedDedicatedDisplayMetadata (__inout NV_MANAGED_DEDICATED_DISPLAY_METADATA *pDedicatedDisplayMetadata)
 
NVAPI_INTERFACE NvAPI_DestroyPresentBarrierClient (__in NvPresentBarrierClientHandle presentBarrierClient)
 
NVAPI_INTERFACE NvAPI_JoinPresentBarrier (__in NvPresentBarrierClientHandle presentBarrierClient, __in NV_JOIN_PRESENT_BARRIER_PARAMS *pParams)
 
NVAPI_INTERFACE NvAPI_LeavePresentBarrier (__in NvPresentBarrierClientHandle presentBarrierClient)
 
NVAPI_INTERFACE NvAPI_QueryPresentBarrierFrameStatistics (__in NvPresentBarrierClientHandle presentBarrierClient, __out NV_PRESENT_BARRIER_FRAME_STATISTICS *pFrameStats)
 
NVAPI_INTERFACE NvAPI_SYS_GetDisplayDriverInfo (__inout NV_DISPLAY_DRIVER_INFO *pDriverInfo)
 
NVAPI_INTERFACE NvAPI_EnumPhysicalGPUs (NvPhysicalGpuHandle nvGPUHandle[NVAPI_MAX_PHYSICAL_GPUS], NvU32 *pGpuCount)
 
NVAPI_INTERFACE NvAPI_GPU_QueryWorkstationFeatureSupport (NvPhysicalGpuHandle physicalGpu, NV_GPU_WORKSTATION_FEATURE_TYPE gpuWorkstationFeature)
 

Variables

NvU32pSize
 
NvU32pRate
 
NvU32pStatus
 

NvAPI_OGL_ExpertModeDefaultsSet[Get] Functions

enum  NV_MONITOR_CONN_TYPE {
  NV_MONITOR_CONN_TYPE_UNINITIALIZED = 0 , NV_MONITOR_CONN_TYPE_VGA , NV_MONITOR_CONN_TYPE_COMPONENT , NV_MONITOR_CONN_TYPE_SVIDEO ,
  NV_MONITOR_CONN_TYPE_HDMI , NV_MONITOR_CONN_TYPE_DVI , NV_MONITOR_CONN_TYPE_LVDS , NV_MONITOR_CONN_TYPE_DP ,
  NV_MONITOR_CONN_TYPE_COMPOSITE , NV_MONITOR_CONN_TYPE_UNKNOWN = -1
}
 
NvU32pOutputsMask
 
NVAPI_INTERFACE NvAPI_EnumTCCPhysicalGPUs (NvPhysicalGpuHandle nvGPUHandle[NVAPI_MAX_PHYSICAL_GPUS], NvU32 *pGpuCount)
 
NVAPI_INTERFACE NvAPI_EnumLogicalGPUs (NvLogicalGpuHandle nvGPUHandle[NVAPI_MAX_LOGICAL_GPUS], NvU32 *pGpuCount)
 
NVAPI_INTERFACE NvAPI_GetPhysicalGPUsFromDisplay (NvDisplayHandle hNvDisp, NvPhysicalGpuHandle nvGPUHandle[NVAPI_MAX_PHYSICAL_GPUS], NvU32 *pGpuCount)
 
NVAPI_INTERFACE NvAPI_GetPhysicalGPUFromUnAttachedDisplay (NvUnAttachedDisplayHandle hNvUnAttachedDisp, NvPhysicalGpuHandle *pPhysicalGpu)
 
NVAPI_INTERFACE NvAPI_GetLogicalGPUFromDisplay (NvDisplayHandle hNvDisp, NvLogicalGpuHandle *pLogicalGPU)
 
NVAPI_INTERFACE NvAPI_GetLogicalGPUFromPhysicalGPU (NvPhysicalGpuHandle hPhysicalGPU, NvLogicalGpuHandle *pLogicalGPU)
 
NVAPI_INTERFACE NvAPI_GetPhysicalGPUsFromLogicalGPU (NvLogicalGpuHandle hLogicalGPU, NvPhysicalGpuHandle hPhysicalGPU[NVAPI_MAX_PHYSICAL_GPUS], NvU32 *pGpuCount)
 
NVAPI_INTERFACE NvAPI_GetPhysicalGPUFromGPUID (NvU32 gpuId, NvPhysicalGpuHandle *pPhysicalGPU)
 
NVAPI_INTERFACE NvAPI_GetGPUIDfromPhysicalGPU (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pGpuId)
 
NVAPI_INTERFACE NvAPI_GPU_GetShaderSubPipeCount (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pCount)
 
NVAPI_INTERFACE NvAPI_GPU_GetGpuCoreCount (NvPhysicalGpuHandle hPhysicalGpu, NvU32 *pCount)
 
 __nvapi_deprecated_function ("Do not use this function - it is deprecated in release 290. Instead, use NvAPI_GPU_GetAllDisplayIds.") NVAPI_INTERFACE NvAPI_GPU_GetAllOutputs(NvPhysicalGpuHandle hPhysicalGpu
 
 __nvapi_deprecated_function ("Do not use this function - it is deprecated in release 290. Instead, use NvAPI_GPU_GetConnectedDisplayIds.") NVAPI_INTERFACE NvAPI_GPU_GetConnectedOutputs(NvPhysicalGpuHandle hPhysicalGpu
 
NVAPI_INTERFACE NvAPI_OGL_ExpertModeDefaultsSet (NvU32 expertDetailLevel, NvU32 expertReportMask, NvU32 expertOutputMask)
 
NVAPI_INTERFACE NvAPI_OGL_ExpertModeDefaultsGet (NvU32 *pExpertDetailLevel, NvU32 *pExpertReportMask, NvU32 *pExpertOutputMask)
 
#define NV_GPU_CONNECTED_IDS_FLAG_UNCACHED   NV_BIT(0)
 
#define NV_GPU_CONNECTED_IDS_FLAG_SLI   NV_BIT(1)
 
#define NV_GPU_CONNECTED_IDS_FLAG_LIDSTATE   NV_BIT(2)
 
#define NV_GPU_CONNECTED_IDS_FLAG_FAKE   NV_BIT(3)
 
#define NV_GPU_CONNECTED_IDS_FLAG_EXCLUDE_MST   NV_BIT(4)
 
enum  NV_I2C_SPEED {
  NVAPI_I2C_SPEED_DEFAULT , NVAPI_I2C_SPEED_3KHZ , NVAPI_I2C_SPEED_10KHZ , NVAPI_I2C_SPEED_33KHZ ,
  NVAPI_I2C_SPEED_100KHZ , NVAPI_I2C_SPEED_200KHZ , NVAPI_I2C_SPEED_400KHZ
}
 
typedef NV_I2C_INFO_V3 NV_I2C_INFO
 
#define NVAPI_MAX_SIZEOF_I2C_REG_ADDRESS   4
 
#define NVAPI_DISPLAY_DEVICE_MASK_MAX   24
 
#define NVAPI_I2C_SPEED_DEPRECATED   0xFFFF
 
#define NV_I2C_INFO_VER3   MAKE_NVAPI_VERSION(NV_I2C_INFO_V3,3)
 
#define NV_I2C_INFO_VER2   MAKE_NVAPI_VERSION(NV_I2C_INFO_V2,2)
 
#define NV_I2C_INFO_VER1   MAKE_NVAPI_VERSION(NV_I2C_INFO_V1,1)
 
#define NV_I2C_INFO_VER   NV_I2C_INFO_VER3
 
typedef NV_EDID_V3 NV_EDID
 
#define NV_EDID_V1_DATA_SIZE   256
 
#define NV_EDID_DATA_SIZE   NV_EDID_V1_DATA_SIZE
 
#define NV_EDID_VER1   MAKE_NVAPI_VERSION(NV_EDID_V1,1)
 
#define NV_EDID_VER2   MAKE_NVAPI_VERSION(NV_EDID_V2,2)
 
#define NV_EDID_VER3   MAKE_NVAPI_VERSION(NV_EDID_V3,3)
 
#define NV_EDID_VER   NV_EDID_VER3
 
#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_CAPABLE   NV_BIT(0)
 
#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_ENABLE   NV_BIT(1)
 
#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_DEDICATED   NV_BIT(2)
 
#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_RECOMMENDED   NV_BIT(3)
 
#define NV_COMPUTE_GPU_TOPOLOGY_CUDA_AVAILABLE   NV_BIT(4)
 
#define NV_COMPUTE_GPU_TOPOLOGY_CUDA_CAPABLE   NV_BIT(16)
 
#define NV_COMPUTE_GPU_TOPOLOGY_CUDA_DISABLED   NV_BIT(17)
 
#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_AVAILABLE   NV_BIT(21)
 

Detailed Description

The general GPU APIs are used to get general information about the GPU, such as outputs, VBIOS revision, APG rate, and frame buffer size.

Macro Definition Documentation

◆ NV_BOARD_INFO_VER

#define NV_BOARD_INFO_VER   NV_BOARD_INFO_VER1

◆ NV_BOARD_INFO_VER1

#define NV_BOARD_INFO_VER1   MAKE_NVAPI_VERSION(NV_BOARD_INFO_V1,1)

◆ NV_COMPUTE_GPU_TOPOLOGY_CUDA_AVAILABLE

#define NV_COMPUTE_GPU_TOPOLOGY_CUDA_AVAILABLE   NV_BIT(4)

This is Read only GPU flag.

◆ NV_COMPUTE_GPU_TOPOLOGY_CUDA_CAPABLE

#define NV_COMPUTE_GPU_TOPOLOGY_CUDA_CAPABLE   NV_BIT(16)

This is Read only GPU flag.

◆ NV_COMPUTE_GPU_TOPOLOGY_CUDA_DISABLED

#define NV_COMPUTE_GPU_TOPOLOGY_CUDA_DISABLED   NV_BIT(17)

This is Read only GPU flag.

◆ NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_AVAILABLE

#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_AVAILABLE   NV_BIT(21)

This is Read only GPU flag - PhysX is able to use this GPU (PhysX is installed, etc)

◆ NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_CAPABLE

#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_CAPABLE   NV_BIT(0)

This is Read only GPU flag - Physics capable GPU.

defgroup nvcomp_gpu_top NVIDIA Compute GPU Topology Flags

◆ NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_DEDICATED

#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_DEDICATED   NV_BIT(2)

This is Read only GPU flag - Physics enabled GPU which is dedicated for physics indicates this compute capable GPU was automatically made usable for Physx on CUDA.

◆ NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_ENABLE

#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_ENABLE   NV_BIT(1)

This is Read/Write GPU flag - Indicates GPU is already enabled for physics.

◆ NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_RECOMMENDED

#define NV_COMPUTE_GPU_TOPOLOGY_PHYSICS_RECOMMENDED   NV_BIT(3)

This is Read only GPU flag - Physics GPU which is recommended by the driver.

◆ NV_COMPUTE_GPU_TOPOLOGY_VER

#define NV_COMPUTE_GPU_TOPOLOGY_VER   MAKE_NVAPI_VERSION(NV_COMPUTE_GPU_TOPOLOGY_V2,2)

◆ NV_COMPUTE_GPU_TOPOLOGY_VER1

#define NV_COMPUTE_GPU_TOPOLOGY_VER1   MAKE_NVAPI_VERSION(NV_COMPUTE_GPU_TOPOLOGY_V1,1)

Macro for constructing the version field of NV_COMPUTE_GPU_TOPOLOGY.

◆ NV_EDID_DATA_SIZE

#define NV_EDID_DATA_SIZE   NV_EDID_V1_DATA_SIZE

◆ NV_EDID_DATA_SIZE_MAX

#define NV_EDID_DATA_SIZE_MAX   1024

Used in NvAPI_DISP_GetEdidData This is the current size supported by Nvidia Display Driver and may change in future.

◆ NV_EDID_V1_DATA_SIZE

#define NV_EDID_V1_DATA_SIZE   256

◆ NV_EDID_VER

#define NV_EDID_VER   NV_EDID_VER3

◆ NV_EDID_VER1

#define NV_EDID_VER1   MAKE_NVAPI_VERSION(NV_EDID_V1,1)

◆ NV_EDID_VER2

#define NV_EDID_VER2   MAKE_NVAPI_VERSION(NV_EDID_V2,2)

◆ NV_EDID_VER3

#define NV_EDID_VER3   MAKE_NVAPI_VERSION(NV_EDID_V3,3)

◆ NV_GPU_ARCH_INFO_VER

#define NV_GPU_ARCH_INFO_VER   NV_GPU_ARCH_INFO_VER_2

◆ NV_GPU_ARCH_INFO_VER_1

#define NV_GPU_ARCH_INFO_VER_1   MAKE_NVAPI_VERSION(NV_GPU_ARCH_INFO_V1,1)

◆ NV_GPU_ARCH_INFO_VER_2

#define NV_GPU_ARCH_INFO_VER_2   MAKE_NVAPI_VERSION(NV_GPU_ARCH_INFO_V2,2)

◆ NV_GPU_CONNECTED_IDS_FLAG_EXCLUDE_MST

#define NV_GPU_CONNECTED_IDS_FLAG_EXCLUDE_MST   NV_BIT(4)

Excludes devices that are part of the multi stream topology.

◆ NV_GPU_CONNECTED_IDS_FLAG_FAKE

#define NV_GPU_CONNECTED_IDS_FLAG_FAKE   NV_BIT(3)

Get devices that includes the fake connected monitors.

◆ NV_GPU_CONNECTED_IDS_FLAG_LIDSTATE

#define NV_GPU_CONNECTED_IDS_FLAG_LIDSTATE   NV_BIT(2)

Get devices such that to reflect the Lid State.

◆ NV_GPU_CONNECTED_IDS_FLAG_SLI

#define NV_GPU_CONNECTED_IDS_FLAG_SLI   NV_BIT(1)

Get devices such that those can be selected in an SLI configuration.

◆ NV_GPU_CONNECTED_IDS_FLAG_UNCACHED

#define NV_GPU_CONNECTED_IDS_FLAG_UNCACHED   NV_BIT(0)

Get uncached connected devices.

◆ NV_GPU_DISPLAYIDS_VER

#define NV_GPU_DISPLAYIDS_VER   NV_GPU_DISPLAYIDS_VER2

◆ NV_GPU_DISPLAYIDS_VER1

#define NV_GPU_DISPLAYIDS_VER1   MAKE_NVAPI_VERSION(NV_GPU_DISPLAYIDS,1)

Macro for constructing the version field of _NV_GPU_DISPLAYIDS

◆ NV_GPU_DISPLAYIDS_VER2

#define NV_GPU_DISPLAYIDS_VER2   MAKE_NVAPI_VERSION(NV_GPU_DISPLAYIDS,3)

◆ NV_GPU_GET_HDCP_SUPPORT_STATUS_VER

#define NV_GPU_GET_HDCP_SUPPORT_STATUS_VER   MAKE_NVAPI_VERSION(NV_GPU_GET_HDCP_SUPPORT_STATUS,1)

Macro for constructing the version for structure NV_GPU_GET_HDCP_SUPPORT_STATUS.

◆ NV_GPU_GET_ILLUMINATION_PARM_VER

#define NV_GPU_GET_ILLUMINATION_PARM_VER   NV_GPU_GET_ILLUMINATION_PARM_VER_1

◆ NV_GPU_GET_ILLUMINATION_PARM_VER_1

#define NV_GPU_GET_ILLUMINATION_PARM_VER_1   MAKE_NVAPI_VERSION(NV_GPU_GET_ILLUMINATION_PARM_V1,1)

◆ NV_GPU_GSP_INFO_VER1

#define NV_GPU_GSP_INFO_VER1   MAKE_NVAPI_VERSION(NV_GPU_GSP_INFO_V1, 1)

Macro for constructing the version field of NV_GPU_GSP_INFO_V1

◆ NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_VER

#define NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_VER   NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_VER_1

◆ NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_VER_1

#define NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_VER_1   MAKE_NVAPI_VERSION(NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_V1,1)

◆ NV_GPU_SET_ILLUMINATION_PARM_VER

#define NV_GPU_SET_ILLUMINATION_PARM_VER   NV_GPU_SET_ILLUMINATION_PARM_VER_1

◆ NV_GPU_SET_ILLUMINATION_PARM_VER_1

#define NV_GPU_SET_ILLUMINATION_PARM_VER_1   MAKE_NVAPI_VERSION(NV_GPU_SET_ILLUMINATION_PARM_V1,1)

◆ NV_GPU_VIRTUALIZATION_INFO_VER

#define NV_GPU_VIRTUALIZATION_INFO_VER   NV_GPU_VIRTUALIZATION_INFO_VER1

◆ NV_GPU_VIRTUALIZATION_INFO_VER1

#define NV_GPU_VIRTUALIZATION_INFO_VER1   MAKE_NVAPI_VERSION(NV_GPU_VIRTUALIZATION_INFO_V1,1)

◆ NV_I2C_INFO_VER

#define NV_I2C_INFO_VER   NV_I2C_INFO_VER3

◆ NV_I2C_INFO_VER1

#define NV_I2C_INFO_VER1   MAKE_NVAPI_VERSION(NV_I2C_INFO_V1,1)

◆ NV_I2C_INFO_VER2

#define NV_I2C_INFO_VER2   MAKE_NVAPI_VERSION(NV_I2C_INFO_V2,2)

◆ NV_I2C_INFO_VER3

#define NV_I2C_INFO_VER3   MAKE_NVAPI_VERSION(NV_I2C_INFO_V3,3)

◆ NV_SCANOUT_INTENSITY_DATA_VER1

#define NV_SCANOUT_INTENSITY_DATA_VER1   MAKE_NVAPI_VERSION(NV_SCANOUT_INTENSITY_DATA_V1, 1)

◆ NV_SCANOUT_INTENSITY_STATE_VER

#define NV_SCANOUT_INTENSITY_STATE_VER   MAKE_NVAPI_VERSION(NV_SCANOUT_INTENSITY_STATE_DATA, 1)

◆ NV_SCANOUT_WARPING_STATE_VER

#define NV_SCANOUT_WARPING_STATE_VER   MAKE_NVAPI_VERSION(NV_SCANOUT_WARPING_STATE_DATA, 1)

◆ NV_SCANOUT_WARPING_VER

#define NV_SCANOUT_WARPING_VER   MAKE_NVAPI_VERSION(NV_SCANOUT_WARPING_DATA, 1)

◆ NVAPI_DISPLAY_DEVICE_MASK_MAX

#define NVAPI_DISPLAY_DEVICE_MASK_MAX   24

◆ NVAPI_GPU_MAX_BUILD_VERSION_LENGTH

#define NVAPI_GPU_MAX_BUILD_VERSION_LENGTH   (0x0000040)

◆ NVAPI_I2C_SPEED_DEPRECATED

#define NVAPI_I2C_SPEED_DEPRECATED   0xFFFF

◆ NVAPI_MAX_SIZEOF_I2C_REG_ADDRESS

#define NVAPI_MAX_SIZEOF_I2C_REG_ADDRESS   4

Typedef Documentation

◆ NV_BOARD_INFO

◆ NV_BOARD_INFO_V1

◆ NV_COMPUTE_GPU

◆ NV_COMPUTE_GPU_TOPOLOGY

◆ NV_COMPUTE_GPU_TOPOLOGY_V2

◆ NV_EDID

◆ NV_GPU_ARCH_IMPLEMENTATION_ID

NV_GPU_ARCH_INFO() values to identify GPU Architecture Implementation.

◆ NV_GPU_ARCH_INFO

◆ NV_GPU_ARCHITECTURE_ID

NV_GPU_ARCH_INFO() values to identify Architecture level for the GPU.

◆ NV_GPU_BUS_TYPE

◆ NV_GPU_CHIP_REVISION

◆ NV_GPU_CONNECTOR_TYPE

Used in NV_GPU_CONNECTOR_DATA

◆ NV_GPU_DISPLAYIDS

◆ NV_GPU_GET_ILLUMINATION_PARM

◆ NV_GPU_GET_ILLUMINATION_PARM_V1

◆ NV_GPU_GSP_INFO_V1

◆ NV_GPU_HDCP_FUSE_STATE

HDCP fuse states - used in NV_GPU_GET_HDCP_SUPPORT_STATUS.

◆ NV_GPU_HDCP_KEY_SOURCE

HDCP key sources - used in NV_GPU_GET_HDCP_SUPPORT_STATUS.

◆ NV_GPU_HDCP_KEY_SOURCE_STATE

HDCP key source states - used in NV_GPU_GET_HDCP_SUPPORT_STATUS.

◆ NV_GPU_ILLUMINATION_ATTRIB

◆ NV_GPU_OUTPUT_TYPE

◆ NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM

◆ NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM_V1

◆ NV_GPU_SET_ILLUMINATION_PARM

◆ NV_GPU_SET_ILLUMINATION_PARM_V1

◆ NV_GPU_TYPE

typedef enum _NV_GPU_TYPE NV_GPU_TYPE

◆ NV_GPU_VIRTUALIZATION_INFO

◆ NV_GPU_VIRTUALIZATION_INFO_V1

◆ NV_GPU_WORKSTATION_FEATURE_TYPE

◆ NV_I2C_INFO

◆ NV_LOGICAL_GPU_DATA

◆ NV_LOGICAL_GPU_DATA_V1

◆ NV_SCANOUT_INFORMATION

◆ NV_SCANOUT_INTENSITY_STATE_DATA

◆ NV_SCANOUT_WARPING_STATE_DATA

◆ NV_VIRTUALIZATION_MODE

Enumeration Type Documentation

◆ _NV_GPU_ARCH_IMPLEMENTATION_ID

NV_GPU_ARCH_INFO() values to identify GPU Architecture Implementation.

Enumerator
NV_GPU_ARCH_IMPLEMENTATION_T20 
NV_GPU_ARCH_IMPLEMENTATION_T30 
NV_GPU_ARCH_IMPLEMENTATION_T35 
NV_GPU_ARCH_IMPLEMENTATION_T40 
NV_GPU_ARCH_IMPLEMENTATION_T124 
NV_GPU_ARCH_IMPLEMENTATION_NV40 
NV_GPU_ARCH_IMPLEMENTATION_NV41 
NV_GPU_ARCH_IMPLEMENTATION_NV42 
NV_GPU_ARCH_IMPLEMENTATION_NV43 
NV_GPU_ARCH_IMPLEMENTATION_NV44 
NV_GPU_ARCH_IMPLEMENTATION_NV44A 
NV_GPU_ARCH_IMPLEMENTATION_NV46 
NV_GPU_ARCH_IMPLEMENTATION_NV47 
NV_GPU_ARCH_IMPLEMENTATION_NV49 
NV_GPU_ARCH_IMPLEMENTATION_NV4B 
NV_GPU_ARCH_IMPLEMENTATION_NV4C 
NV_GPU_ARCH_IMPLEMENTATION_NV4E 
NV_GPU_ARCH_IMPLEMENTATION_NV50 
NV_GPU_ARCH_IMPLEMENTATION_NV63 
NV_GPU_ARCH_IMPLEMENTATION_NV67 
NV_GPU_ARCH_IMPLEMENTATION_G84 
NV_GPU_ARCH_IMPLEMENTATION_G86 
NV_GPU_ARCH_IMPLEMENTATION_G92 
NV_GPU_ARCH_IMPLEMENTATION_G94 
NV_GPU_ARCH_IMPLEMENTATION_G96 
NV_GPU_ARCH_IMPLEMENTATION_G98 
NV_GPU_ARCH_IMPLEMENTATION_GT200 
NV_GPU_ARCH_IMPLEMENTATION_GT212 
NV_GPU_ARCH_IMPLEMENTATION_GT214 
NV_GPU_ARCH_IMPLEMENTATION_GT215 
NV_GPU_ARCH_IMPLEMENTATION_GT216 
NV_GPU_ARCH_IMPLEMENTATION_GT218 
NV_GPU_ARCH_IMPLEMENTATION_MCP77 
NV_GPU_ARCH_IMPLEMENTATION_GT21C 
NV_GPU_ARCH_IMPLEMENTATION_MCP79 
NV_GPU_ARCH_IMPLEMENTATION_GT21A 
NV_GPU_ARCH_IMPLEMENTATION_MCP89 
NV_GPU_ARCH_IMPLEMENTATION_GF100 
NV_GPU_ARCH_IMPLEMENTATION_GF104 
NV_GPU_ARCH_IMPLEMENTATION_GF106 
NV_GPU_ARCH_IMPLEMENTATION_GF108 
NV_GPU_ARCH_IMPLEMENTATION_GF110 
NV_GPU_ARCH_IMPLEMENTATION_GF116 
NV_GPU_ARCH_IMPLEMENTATION_GF117 
NV_GPU_ARCH_IMPLEMENTATION_GF118 
NV_GPU_ARCH_IMPLEMENTATION_GF119 
NV_GPU_ARCH_IMPLEMENTATION_GK104 
NV_GPU_ARCH_IMPLEMENTATION_GK106 
NV_GPU_ARCH_IMPLEMENTATION_GK107 
NV_GPU_ARCH_IMPLEMENTATION_GK20A 
NV_GPU_ARCH_IMPLEMENTATION_GK110 
NV_GPU_ARCH_IMPLEMENTATION_GK208 
NV_GPU_ARCH_IMPLEMENTATION_GM204 
NV_GPU_ARCH_IMPLEMENTATION_GM206 
NV_GPU_ARCH_IMPLEMENTATION_GP100 
NV_GPU_ARCH_IMPLEMENTATION_GP000 
NV_GPU_ARCH_IMPLEMENTATION_GP102 
NV_GPU_ARCH_IMPLEMENTATION_GP104 
NV_GPU_ARCH_IMPLEMENTATION_GP106 
NV_GPU_ARCH_IMPLEMENTATION_GP107 
NV_GPU_ARCH_IMPLEMENTATION_GP108 
NV_GPU_ARCH_IMPLEMENTATION_GV100 
NV_GPU_ARCH_IMPLEMENTATION_GV10B 
NV_GPU_ARCH_IMPLEMENTATION_TU100 
NV_GPU_ARCH_IMPLEMENTATION_TU102 
NV_GPU_ARCH_IMPLEMENTATION_TU104 
NV_GPU_ARCH_IMPLEMENTATION_TU106 
NV_GPU_ARCH_IMPLEMENTATION_TU116 
NV_GPU_ARCH_IMPLEMENTATION_TU117 
NV_GPU_ARCH_IMPLEMENTATION_TU000 
NV_GPU_ARCH_IMPLEMENTATION_GA100 
NV_GPU_ARCH_IMPLEMENTATION_GA102 
NV_GPU_ARCH_IMPLEMENTATION_GA104 
NV_GPU_ARCH_IMPLEMENTATION_AD102 
NV_GPU_ARCH_IMPLEMENTATION_AD103 
NV_GPU_ARCH_IMPLEMENTATION_AD104 

◆ _NV_GPU_ARCHITECTURE_ID

NV_GPU_ARCH_INFO() values to identify Architecture level for the GPU.

Enumerator
NV_GPU_ARCHITECTURE_T2X 
NV_GPU_ARCHITECTURE_T3X 
NV_GPU_ARCHITECTURE_T4X 
NV_GPU_ARCHITECTURE_T12X 
NV_GPU_ARCHITECTURE_NV40 
NV_GPU_ARCHITECTURE_NV50 
NV_GPU_ARCHITECTURE_G78 
NV_GPU_ARCHITECTURE_G80 
NV_GPU_ARCHITECTURE_G90 
NV_GPU_ARCHITECTURE_GT200 
NV_GPU_ARCHITECTURE_GF100 
NV_GPU_ARCHITECTURE_GF110 
NV_GPU_ARCHITECTURE_GK100 
NV_GPU_ARCHITECTURE_GK110 
NV_GPU_ARCHITECTURE_GK200 
NV_GPU_ARCHITECTURE_GM000 
NV_GPU_ARCHITECTURE_GM200 
NV_GPU_ARCHITECTURE_GP100 
NV_GPU_ARCHITECTURE_GV100 
NV_GPU_ARCHITECTURE_GV110 
NV_GPU_ARCHITECTURE_TU100 
NV_GPU_ARCHITECTURE_GA100 
NV_GPU_ARCHITECTURE_AD100 

◆ _NV_GPU_BUS_TYPE

Used in NvAPI_GPU_GetBusType()

Enumerator
NVAPI_GPU_BUS_TYPE_UNDEFINED 
NVAPI_GPU_BUS_TYPE_PCI 
NVAPI_GPU_BUS_TYPE_AGP 
NVAPI_GPU_BUS_TYPE_PCI_EXPRESS 
NVAPI_GPU_BUS_TYPE_FPCI 
NVAPI_GPU_BUS_TYPE_AXI 

◆ _NV_GPU_CHIP_REVISION

Enumerator
NV_GPU_CHIP_REV_EMULATION_QT 

QT chip.

NV_GPU_CHIP_REV_EMULATION_FPGA 

FPGA implementation of the chipset.

NV_GPU_CHIP_REV_A01 

First silicon chipset revision.

NV_GPU_CHIP_REV_A02 

Second Silicon chipset revision.

NV_GPU_CHIP_REV_A03 

Third Silicon chipset revision.

NV_GPU_CHIP_REV_UNKNOWN 

Unknown chip revision.

◆ _NV_GPU_CONNECTOR_TYPE

Used in NV_GPU_CONNECTOR_DATA

Enumerator
NVAPI_GPU_CONNECTOR_VGA_15_PIN 
NVAPI_GPU_CONNECTOR_TV_COMPOSITE 
NVAPI_GPU_CONNECTOR_TV_SVIDEO 
NVAPI_GPU_CONNECTOR_TV_HDTV_COMPONENT 
NVAPI_GPU_CONNECTOR_TV_SCART 
NVAPI_GPU_CONNECTOR_TV_COMPOSITE_SCART_ON_EIAJ4120 
NVAPI_GPU_CONNECTOR_TV_HDTV_EIAJ4120 
NVAPI_GPU_CONNECTOR_PC_POD_HDTV_YPRPB 
NVAPI_GPU_CONNECTOR_PC_POD_SVIDEO 
NVAPI_GPU_CONNECTOR_PC_POD_COMPOSITE 
NVAPI_GPU_CONNECTOR_DVI_I_TV_SVIDEO 
NVAPI_GPU_CONNECTOR_DVI_I_TV_COMPOSITE 
NVAPI_GPU_CONNECTOR_DVI_I 
NVAPI_GPU_CONNECTOR_DVI_D 
NVAPI_GPU_CONNECTOR_ADC 
NVAPI_GPU_CONNECTOR_LFH_DVI_I_1 
NVAPI_GPU_CONNECTOR_LFH_DVI_I_2 
NVAPI_GPU_CONNECTOR_SPWG 
NVAPI_GPU_CONNECTOR_OEM 
NVAPI_GPU_CONNECTOR_DISPLAYPORT_EXTERNAL 
NVAPI_GPU_CONNECTOR_DISPLAYPORT_INTERNAL 
NVAPI_GPU_CONNECTOR_DISPLAYPORT_MINI_EXT 
NVAPI_GPU_CONNECTOR_HDMI_A 
NVAPI_GPU_CONNECTOR_HDMI_C_MINI 
NVAPI_GPU_CONNECTOR_LFH_DISPLAYPORT_1 
NVAPI_GPU_CONNECTOR_LFH_DISPLAYPORT_2 
NVAPI_GPU_CONNECTOR_VIRTUAL_WFD 

Deprecated.

NVAPI_GPU_CONNECTOR_USB_C 
NVAPI_GPU_CONNECTOR_UNKNOWN 

◆ _NV_GPU_HDCP_FUSE_STATE

HDCP fuse states - used in NV_GPU_GET_HDCP_SUPPORT_STATUS.

Enumerator
NV_GPU_HDCP_FUSE_STATE_UNKNOWN 
NV_GPU_HDCP_FUSE_STATE_DISABLED 
NV_GPU_HDCP_FUSE_STATE_ENABLED 

◆ _NV_GPU_HDCP_KEY_SOURCE

HDCP key sources - used in NV_GPU_GET_HDCP_SUPPORT_STATUS.

Enumerator
NV_GPU_HDCP_KEY_SOURCE_UNKNOWN 
NV_GPU_HDCP_KEY_SOURCE_NONE 
NV_GPU_HDCP_KEY_SOURCE_CRYPTO_ROM 
NV_GPU_HDCP_KEY_SOURCE_SBIOS 
NV_GPU_HDCP_KEY_SOURCE_I2C_ROM 
NV_GPU_HDCP_KEY_SOURCE_FUSES 

◆ _NV_GPU_HDCP_KEY_SOURCE_STATE

HDCP key source states - used in NV_GPU_GET_HDCP_SUPPORT_STATUS.

Enumerator
NV_GPU_HDCP_KEY_SOURCE_STATE_UNKNOWN 
NV_GPU_HDCP_KEY_SOURCE_STATE_ABSENT 
NV_GPU_HDCP_KEY_SOURCE_STATE_PRESENT 

◆ _NV_GPU_ILLUMINATION_ATTRIB

Enumerator
NV_GPU_IA_LOGO_BRIGHTNESS 
NV_GPU_IA_SLI_BRIGHTNESS 

◆ _NV_GPU_OUTPUT_TYPE

used in NvAPI_GPU_GetOutputType()

Enumerator
NVAPI_GPU_OUTPUT_UNKNOWN 
NVAPI_GPU_OUTPUT_CRT 

CRT display device.

NVAPI_GPU_OUTPUT_DFP 

Digital Flat Panel display device.

NVAPI_GPU_OUTPUT_TV 

TV display device.

◆ _NV_GPU_TYPE

Used in NvAPI_GPU_GetGPUType().

Enumerator
NV_SYSTEM_TYPE_GPU_UNKNOWN 
NV_SYSTEM_TYPE_IGPU 

Integrated GPU.

NV_SYSTEM_TYPE_DGPU 

Discrete GPU.

◆ _NV_GPU_WORKSTATION_FEATURE_TYPE

Enumerator
NV_GPU_WORKSTATION_FEATURE_TYPE_NVIDIA_RTX_VR_READY 

NVIDIA RTX VR Ready.

NV_GPU_WORKSTATION_FEATURE_TYPE_QUADRO_VR_READY 

DEPRECATED name - do not use.

NV_GPU_WORKSTATION_FEATURE_TYPE_PROVIZ 

◆ _NV_VIRTUALIZATION_MODE

Enumerator
NV_VIRTUALIZATION_MODE_NONE 

Represents Bare Metal GPU.

NV_VIRTUALIZATION_MODE_NMOS 

Represents GPU-Passthrough.

NV_VIRTUALIZATION_MODE_VGX 

Represents vGPU inside virtual machine.

NV_VIRTUALIZATION_MODE_HOST_VGPU 

Represents VGX hypervisor in vGPU mode.

◆ NV_GPU_WARPING_VERTICE_FORMAT

Enumerator
NV_GPU_WARPING_VERTICE_FORMAT_TRIANGLESTRIP_XYUVRQ 
NV_GPU_WARPING_VERTICE_FORMAT_TRIANGLES_XYUVRQ 

◆ NV_I2C_SPEED

Enumerator
NVAPI_I2C_SPEED_DEFAULT 

Set i2cSpeedKhz to I2C_SPEED_DEFAULT if default I2C speed is to be chosen, ie.use the current frequency setting.

NVAPI_I2C_SPEED_3KHZ 
NVAPI_I2C_SPEED_10KHZ 
NVAPI_I2C_SPEED_33KHZ 
NVAPI_I2C_SPEED_100KHZ 
NVAPI_I2C_SPEED_200KHZ 
NVAPI_I2C_SPEED_400KHZ 

◆ NV_MONITOR_CONN_TYPE

Get uncached connected devices.

Enumerator
NV_MONITOR_CONN_TYPE_UNINITIALIZED 
NV_MONITOR_CONN_TYPE_VGA 
NV_MONITOR_CONN_TYPE_COMPONENT 
NV_MONITOR_CONN_TYPE_SVIDEO 
NV_MONITOR_CONN_TYPE_HDMI 
NV_MONITOR_CONN_TYPE_DVI 
NV_MONITOR_CONN_TYPE_LVDS 
NV_MONITOR_CONN_TYPE_DP 
NV_MONITOR_CONN_TYPE_COMPOSITE 
NV_MONITOR_CONN_TYPE_UNKNOWN 

◆ NV_SYSTEM_TYPE

Used in NvAPI_GPU_GetSystemType()

Enumerator
NV_SYSTEM_TYPE_UNKNOWN 
NV_SYSTEM_TYPE_LAPTOP 
NV_SYSTEM_TYPE_DESKTOP 

◆ NVAPI_GPU_WORKSTATION_FEATURE_MASK

Enumerator
NVAPI_GPU_WORKSTATION_FEATURE_MASK_SWAPGROUP 
NVAPI_GPU_WORKSTATION_FEATURE_MASK_STEREO 
NVAPI_GPU_WORKSTATION_FEATURE_MASK_WARPING 
NVAPI_GPU_WORKSTATION_FEATURE_MASK_PIXINTENSITY 
NVAPI_GPU_WORKSTATION_FEATURE_MASK_GRAYSCALE 
NVAPI_GPU_WORKSTATION_FEATURE_MASK_BPC10 

Function Documentation

◆ __nvapi_deprecated_function() [1/5]

__nvapi_deprecated_function ( "Do not use this function - it is deprecated in release 290.  Instead,
use NvAPI_GPU_GetAllDisplayIds."   
)

This function returns set of all GPU-output identifiers as a bitmask.

Since
Release: 85
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pOutputsMask is NULL.
NVAPI_OK*pOutputsMask contains a set of GPU-output identifiers.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

◆ __nvapi_deprecated_function() [2/5]

__nvapi_deprecated_function ( "Do not use this function - it is deprecated in release 290.  Instead,
use NvAPI_GPU_GetConnectedDisplayIds."   
)

This function is the same as NvAPI_GPU_GetAllOutputs() but returns only the set of GPU output identifiers that are connected to display devices.

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pOutputsMask is NULL.
NVAPI_OK*pOutputsMask contains a set of GPU-output identifiers.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

DESCRIPTION: This function is the same as NvAPI_GPU_GetConnectedOutputs() but returns only the set of GPU-output identifiers that can be selected in an SLI configuration. NOTE: This function matches NvAPI_GPU_GetConnectedOutputs()

  • On systems which are not SLI capable.
  • If the queried GPU is not part of a valid SLI group.
Since
Release: 170
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pOutputsMask is NULL
NVAPI_OK*pOutputsMask contains a set of GPU-output identifiers
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

This function is similar to NvAPI_GPU_GetConnectedOutputs(), and returns the connected display identifiers that are connected as an output mask but unlike NvAPI_GPU_GetConnectedOutputs() this API "always" reflects the Lid State in the output mask. Thus if you expect the LID close state to be available in the connection mask use this API.

  • If LID is closed then this API will remove the LID panel from the connected display identifiers.
  • If LID is open then this API will reflect the LID panel in the connected display identifiers.
Note
This API should be used on notebook systems and on systems where the LID state is required in the connection output mask. On desktop systems the returned identifiers will match NvAPI_GPU_GetConnectedOutputs().
Since
Release: 95
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pOutputsMask is NULL
NVAPI_OK*pOutputsMask contains a set of GPU-output identifiers
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

DESCRIPTION: This function is the same as NvAPI_GPU_GetConnectedOutputsWithLidState() but returns only the set of GPU-output identifiers that can be selected in an SLI configuration. With SLI disabled, this function matches NvAPI_GPU_GetConnectedOutputsWithLidState().

Since
Release: 170
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pOutputsMask is NULL
NVAPI_OK*pOutputsMask contains a set of GPU-output identifiers
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

◆ __nvapi_deprecated_function() [3/5]

__nvapi_deprecated_function ( "Do not use this function - it is deprecated in release 455."  )

This function returns the AGP aperture in megabytes.

TCC_SUPPORTED

Since
Release: 90
Return values
NVAPI_NOT_SUPPORTED

This function returns the current AGP Rate (0 = AGP not present, 1 = 1x, 2 = 2x, etc.).

TCC_SUPPORTED

Since
Release: 90
Return values
NVAPI_NOT_SUPPORTED

◆ __nvapi_deprecated_function() [4/5]

__nvapi_deprecated_function ( "Do not use this function - it is deprecated in release 460."  )

This function retrieves the Quadro status for the GPU (1 if Quadro, 0 if GeForce)

This API is deprecated and it is recommended to instead query NV_GPU_WORKSTATION_FEATURE_TYPE_PROVIZ support from the API NvAPI_GPU_QueryWorkstationFeatureSupport.

Since
Release: 80
Returns
NVAPI_ERROR or NVAPI_OK

◆ __nvapi_deprecated_function() [5/5]

__nvapi_deprecated_function ( "Do not use this function - it is deprecated in release 520.  Instead,
use NvAPI_GPU_GetLogicalGpuInfo."   
)

DESCRIPTION: This API returns the OS-AdapterID from physicalGpu Handle. OS-AdapterID is the Adapter ID that is used by Win7 CCD APIs. This API is deprecated. Please use NvAPI_GPU_GetLogicalGpuInfo to get the OS-AdapterID. NvAPI_GetLogicalGPUFromPhysicalGPU can be used to get the logical GPU handle associated with specified physical GPU handle.

Parameters
[in]hPhysicalGpuPhysicalGpu Handle
[out]pOSAdapterIdReturns OS-AdapterId, it is typed as void * to avoid dependency with windows.h. User must type cast it to LUID.
Return values
NVAPI_INVALID_ARGUMENTpOSAdapterId is NULL; hPhysicalGpu is invalid
NVAPI_OK*pOSAdapterId contains valid data.
NVAPI_NOT_SUPPORTEDThis API is not supported on the system.

◆ NvAPI_DestroyPresentBarrierClient()

NVAPI_INTERFACE NvAPI_DestroyPresentBarrierClient ( __in NvPresentBarrierClientHandle  presentBarrierClient)

SUPPORTED OS: Windows 10 and higher DESCRIPTION: This API destroys a presentBarrier client, and must be called after client leaves presentBarrier to avoid memory leak.

Since
Release: 470
Parameters
[in]presentBarrierClientAn NvPresentBarrierClientHandle handle created by NvAPI_xxxx_CreatedPresentBarrierClient
Returns
NVAPI_OK the call succeeded
NVAPI_INVALID_HANDLE an invalid NvPresentBarrierClientHandle was passed as an argument
NVAPI_NO_IMPLEMENTATION the API is not implemented
Return values
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized

◆ NvAPI_DISP_GetNvManagedDedicatedDisplayMetadata()

NVAPI_INTERFACE NvAPI_DISP_GetNvManagedDedicatedDisplayMetadata ( __inout NV_MANAGED_DEDICATED_DISPLAY_METADATA pDedicatedDisplayMetadata)

DESCRIPTION: This API returns metadata which has been set for the display connector in question. Main use case would be to query the data for an Nvidia managed dedicated display. The function will work for any valid displayId though.

Since
Release: 550
Parameters
[in/out]pDedicatedDisplayMetadata Data structure containing input and output data.
Return values
NVAPI_OKThe call succeeded.
NVAPI_ERRORThe call failed.
NVAPI_NO_IMPLEMENTATIONThe API is not implemented in current driver.
NVAPI_NOT_SUPPORTEDThe API is not supported on the current operating system or gpu.
NVAPI_OUT_OF_MEMORYThere wasn't sufficient memory to complete the call.
NVAPI_INVALID_POINTERAn invalid pointer was passed as an argument.
NVAPI_API_NOT_INITIALIZEDNvAPI was not initialized.
NVAPI_INCOMPATIBLE_STRUCT_VERSIONThe version of the NV_MANAGED_DEDICATED_DISPLAY_METADATA structure is invalid.

◆ NvAPI_DISP_GetNvManagedDedicatedDisplays()

NVAPI_INTERFACE NvAPI_DISP_GetNvManagedDedicatedDisplays ( __inout NvU32 pDedicatedDisplayCount,
__inout NV_MANAGED_DEDICATED_DISPLAY_INFO pDedicatedDisplays 
)

DESCRIPTION: This API returns the count of dedicated displays managed by the Nvidia driver, and specific driver info of each display. This API does not return VR displays.

HOW TO USE: 1) First make a call NvAPI_DISP_GetNvManagedDedicatedDisplays to get the number of dedicated displays managed by the Nvidia driver by passing pDedicatedDisplays as NULL. On call success: 2) Allocate memory based on pDisplayCount, then call NvAPI_DISP_GetNvManagedDedicatedDisplays to populate pDedicatedDisplays.

Since
Release: 495
Parameters
[in/out]pDedicatedDisplayCount The count of dedicated displays managed by the Nvidia driver.
[in/out]pDedicatedDisplays Pointer to an array of NV_MANAGED_DEDICATED_DISPLAY_INFO data structure.
Return values
NVAPI_OKThe call succeeded.
NVAPI_ERRORThe call failed.
NVAPI_NO_IMPLEMENTATIONThe API is not implemented in current driver.
NVAPI_OUT_OF_MEMORYCould not allocate sufficient memory to complete the call.
NVAPI_INVALID_POINTERAn invalid pointer was passed as an argument.
NVAPI_API_NOT_INITIALIZEDNvAPI was not initialized.
NVAPI_INCOMPATIBLE_STRUCT_VERSIONThe version of NV_MANAGED_DEDICATED_DISPLAY_INFO structure is invalid.

◆ NvAPI_DISP_SetNvManagedDedicatedDisplayMetadata()

NVAPI_INTERFACE NvAPI_DISP_SetNvManagedDedicatedDisplayMetadata ( __inout NV_MANAGED_DEDICATED_DISPLAY_METADATA pDedicatedDisplayMetadata)

SUPPORTED OS: Windows 11 and higher DESCRIPTION: This API allows to set metadata for the display connector in question. Main use case would be to set the data for an Nvidia managed dedicated display. The function will work for any valid displayId though.

Since
Release: 550
Parameters
[in/out]pDedicatedDisplayMetadata Data structure containing input and output data.
Return values
NVAPI_OKThe call succeeded.
NVAPI_ERRORThe call failed.
NVAPI_NO_IMPLEMENTATIONThe API is not implemented in current driver.
NVAPI_NOT_SUPPORTEDThe API is not supported on the current operating system or gpu.
NVAPI_OUT_OF_MEMORYThere wasn't sufficient memory to complete the call.
NVAPI_INVALID_POINTERAn invalid pointer was passed as an argument.
NVAPI_API_NOT_INITIALIZEDNvAPI was not initialized.
NVAPI_INCOMPATIBLE_STRUCT_VERSIONThe version of the NV_MANAGED_DEDICATED_DISPLAY_METADATA structure is invalid.
NVAPI_INVALID_USER_PRIVILEGEThe caller doesn't have the required administrator privileges to access this API.
NVAPI_INVALID_ARGUMENTCharacters in pDedicatedDisplayMetadata->name are out of the allowed range.

◆ NvAPI_EnumLogicalGPUs()

NVAPI_INTERFACE NvAPI_EnumLogicalGPUs ( NvLogicalGpuHandle  nvGPUHandle[NVAPI_MAX_LOGICAL_GPUS],
NvU32 pGpuCount 
)

This function returns an array of logical GPU handles.

Each handle represents one or more GPUs acting in concert as a single graphics device.

At least one GPU must be present in the system and running an NVIDIA display driver.

The array nvGPUHandle will be filled with logical GPU handle values. The returned gpuCount determines how many entries in the array are valid.

Note
All logical GPUs handles get invalidated on a GPU topology change, so the calling application is required to renum the logical GPU handles to get latest physical handle mapping after every GPU topology change activated by a call to NvAPI_SetGpuTopologies().

To detect if SLI rendering is enabled, use NvAPI_D3D_GetCurrentSLIState().

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENTnvGPUHandle or pGpuCount is NULL
NVAPI_OKOne or more handles were returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found

◆ NvAPI_EnumPhysicalGPUs()

NVAPI_INTERFACE NvAPI_EnumPhysicalGPUs ( NvPhysicalGpuHandle  nvGPUHandle[NVAPI_MAX_PHYSICAL_GPUS],
NvU32 pGpuCount 
)

This function returns an array of physical GPU handles. Each handle represents a physical GPU present in the system. That GPU may be part of an SLI configuration, or may not be visible to the OS directly.

At least one GPU must be present in the system and running an NVIDIA display driver.

The array nvGPUHandle will be filled with physical GPU handle values. The returned gpuCount determines how many entries in the array are valid.

Note
In drivers older than 105.00, all physical GPU handles get invalidated on a modeset. So the calling applications need to renum the handles after every modeset.
With drivers 105.00 and up, all physical GPU handles are constant. Physical GPU handles are constant as long as the GPUs are not physically moved and the SBIOS VGA order is unchanged.

For GPU handles in TCC MODE please use NvAPI_EnumTCCPhysicalGPUs()

SUPPORTED OS: Windows 10 and higher

Introduced in
Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENTnvGPUHandle or pGpuCount is NULL
NVAPI_OKOne or more handles were returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found

◆ NvAPI_EnumTCCPhysicalGPUs()

NVAPI_INTERFACE NvAPI_EnumTCCPhysicalGPUs ( NvPhysicalGpuHandle  nvGPUHandle[NVAPI_MAX_PHYSICAL_GPUS],
NvU32 pGpuCount 
)

This function returns an array of physical GPU handles that are in TCC Mode. Each handle represents a physical GPU present in the system in TCC Mode. That GPU may not be visible to the OS directly.

The array nvGPUHandle will be filled with physical GPU handle values. The returned gpuCount determines how many entries in the array are valid.

NOTE: Handles enumerated by this API are only valid for NvAPIs that are tagged as TCC_SUPPORTED If handle is passed to any other API, it will fail with NVAPI_INVALID_HANDLE

For WDDM GPU handles please use NvAPI_EnumPhysicalGPUs()

SUPPORTED OS: Windows 10 and higher

Parameters
[out]nvGPUHandlePhysical GPU array that will contain all TCC Physical GPUs
[out]pGpuCountcount represent the number of valid entries in nvGPUHandle
Return values
NVAPI_INVALID_ARGUMENTnvGPUHandle or pGpuCount is NULL

◆ NvAPI_Event_RegisterCallback()

NVAPI_INTERFACE NvAPI_Event_RegisterCallback ( PNV_EVENT_REGISTER_CALLBACK  eventCallback,
NvEventHandle *  phClient 
)

DESCRIPTION: This API registers the process for events. This API should be called for each eventcallback. The handle returned to the client will be common across all eventCallbacks.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]eventCallbackPointer to NV_EVENT_REGISTER_CALLBACK structure to call on new events
[out]phClientHandle to client for use with unregister function
Return values
NVAPI_OK- completed request
NVAPI_API_NOT_INTIALIZED- NvAPI not initialized
NVAPI_INVALID_ARGUMENT- Invalid argument
NVAPI_ERROR- miscellaneous error occurred

◆ NvAPI_Event_UnregisterCallback()

NVAPI_INTERFACE NvAPI_Event_UnregisterCallback ( NvEventHandle  hClient)

DESCRIPTION: This API unregister an event handle. This API should be called only once per process(irrespective of the number of callbacks registered).

SUPPORTED OS: Windows 10 and higher

Parameters
[in]hClientHandle associated with this listeners event queue. Same as returned from NvAPI_Event_RegisterCallback().
Return values
NVAPI_OK- completed request
NVAPI_API_NOT_INTIALIZED- NvAPI not initialized
NVAPI_INVALID_ARGUMENT- Invalid argument
NVAPI_ERROR- miscellaneous error occurred

◆ NvAPI_GetGPUIDfromPhysicalGPU()

NVAPI_INTERFACE NvAPI_GetGPUIDfromPhysicalGPU ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pGpuId 
)

Do not use this function for new software development.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 95
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu is NULL or invalid. Re-enumerate the GPU handles.
NVAPI_OKHandle was returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found

◆ NvAPI_GetLogicalGPUFromDisplay()

NVAPI_INTERFACE NvAPI_GetLogicalGPUFromDisplay ( NvDisplayHandle  hNvDisp,
NvLogicalGpuHandle *  pLogicalGPU 
)

This function returns the logical GPU handle associated with the specified display. At least one GPU must be present in the system and running an NVIDIA display driver. hNvDisp can be NVAPI_DEFAULT_HANDLE or a handle enumerated from NvAPI_EnumNVidiaDisplayHandle().

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENThNvDisp is not valid; pLogicalGPU is NULL
NVAPI_OKOne or more handles were returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found

◆ NvAPI_GetLogicalGPUFromPhysicalGPU()

NVAPI_INTERFACE NvAPI_GetLogicalGPUFromPhysicalGPU ( NvPhysicalGpuHandle  hPhysicalGPU,
NvLogicalGpuHandle *  pLogicalGPU 
)

This function returns the logical GPU handle associated with specified physical GPU handle. At least one GPU must be present in the system and running an NVIDIA display driver.

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENThPhysicalGPU is not valid; pLogicalGPU is NULL
NVAPI_OKOne or more handles were returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found

◆ NvAPI_GetPhysicalGPUFromGPUID()

NVAPI_INTERFACE NvAPI_GetPhysicalGPUFromGPUID ( NvU32  gpuId,
NvPhysicalGpuHandle *  pPhysicalGPU 
)

Do not use this function for new software development.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENTgpuId is zero or pPhysicalGPU is NULL
NVAPI_OKHandle was returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found

◆ NvAPI_GetPhysicalGPUFromUnAttachedDisplay()

NVAPI_INTERFACE NvAPI_GetPhysicalGPUFromUnAttachedDisplay ( NvUnAttachedDisplayHandle  hNvUnAttachedDisp,
NvPhysicalGpuHandle *  pPhysicalGpu 
)

This function returns a physical GPU handle associated with the specified unattached display. The source GPU is a physical render GPU which renders the frame buffer but may or may not drive the scan out.

At least one GPU must be present in the system and running an NVIDIA display driver.

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENThNvUnAttachedDisp is not valid or pPhysicalGpu is NULL.
NVAPI_OKOne or more handles were returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found

◆ NvAPI_GetPhysicalGPUsFromDisplay()

NVAPI_INTERFACE NvAPI_GetPhysicalGPUsFromDisplay ( NvDisplayHandle  hNvDisp,
NvPhysicalGpuHandle  nvGPUHandle[NVAPI_MAX_PHYSICAL_GPUS],
NvU32 pGpuCount 
)

This function returns an array of physical GPU handles associated with the specified display.

At least one GPU must be present in the system and running an NVIDIA display driver.

The array nvGPUHandle will be filled with physical GPU handle values. The returned gpuCount determines how many entries in the array are valid.

If the display corresponds to more than one physical GPU, the first GPU returned is the one with the attached active output.

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENThNvDisp is not valid; nvGPUHandle or pGpuCount is NULL
NVAPI_OKOne or more handles were returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDno NVIDIA GPU driving a display was found

◆ NvAPI_GetPhysicalGPUsFromLogicalGPU()

NVAPI_INTERFACE NvAPI_GetPhysicalGPUsFromLogicalGPU ( NvLogicalGpuHandle  hLogicalGPU,
NvPhysicalGpuHandle  hPhysicalGPU[NVAPI_MAX_PHYSICAL_GPUS],
NvU32 pGpuCount 
)

This function returns the physical GPU handles associated with the specified logical GPU handle. At least one GPU must be present in the system and running an NVIDIA display driver.

The array hPhysicalGPU will be filled with physical GPU handle values. The returned gpuCount determines how many entries in the array are valid.

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Return values
NVAPI_INVALID_ARGUMENThLogicalGPU is not valid; hPhysicalGPU is NULL
NVAPI_OKOne or more handles were returned
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_LOGICAL_GPU_HANDLEhLogicalGPU was not a logical GPU handle

◆ NvAPI_GPU_GetActiveOutputs()

NVAPI_INTERFACE NvAPI_GPU_GetActiveOutputs ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pOutputsMask 
)

This function is the same as NvAPI_GPU_GetAllOutputs but returns only the set of GPU output identifiers that are actively driving display devices.

SUPPORTED OS: Windows 10 and higher

Since
Release: 85
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pOutputsMask is NULL.
NVAPI_OK*pOutputsMask contains a set of GPU-output identifiers.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

◆ NvAPI_GPU_GetAllDisplayIds()

NVAPI_INTERFACE NvAPI_GPU_GetAllDisplayIds ( __in NvPhysicalGpuHandle  hPhysicalGpu,
__inout_ecount_part_opt *, *pDisplayIdCount NV_GPU_DISPLAYIDS pDisplayIds,
__inout NvU32 pDisplayIdCount 
)

DESCRIPTION: This API returns display IDs for all possible outputs on the GPU. For DPMST connector, it will return display IDs for all the video sinks in the topology.
HOW TO USE: 1. The first call should be made to get the all display ID count. To get the display ID count, send in
a) hPhysicalGpu - a valid GPU handle(enumerated using NvAPI_EnumPhysicalGPUs()) as input,
b) pDisplayIds - NULL, as we just want to get the display ID count.
c) pDisplayIdCount - a valid pointer to NvU32, whose value is set to ZERO.
If all parameters are correct and this call is successful, this call will return the display ID's count.

  1. To get the display ID array, make the second call to NvAPI_GPU_GetAllDisplayIds() with
    a) hPhysicalGpu - should be same value which was sent in first call,
    b) pDisplayIds - pointer to the display ID array allocated by caller based on display ID count,
    eg. malloc(sizeof(NV_GPU_DISPLAYIDS) * pDisplayIdCount).
    c) pDisplayIdCount - a valid pointer to NvU32. This indicates for how many display IDs
    the memory is allocated(pDisplayIds) by the caller.
    If all parameters are correct and this call is successful, this call will return the display ID array and actual display ID count (which was obtained in the first call to NvAPI_GPU_GetAllDisplayIds). If the input display ID count is less than the actual display ID count, it will overwrite the input and give the pDisplayIdCount as actual count and the API will return NVAPI_INSUFFICIENT_BUFFER.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]hPhysicalGpuGPU selection.
[in,out]DisplayIdsPointer to an array of NV_GPU_DISPLAYIDS structures, each entry represents one displayID and its attributes.
[in,out]pDisplayIdCountAs input, this parameter indicates the number of display's id's for which caller has allocated the memory. As output, it will return the actual number of display IDs.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INSUFFICIENT_BUFFERWhen the input buffer(pDisplayIds) is less than the actual number of display IDs, this API will return NVAPI_INSUFFICIENT_BUFFER.

◆ NvAPI_GPU_GetArchInfo()

NvAPI_GPU_GetArchInfo ( NvPhysicalGpuHandle  hPhysicalGpu,
NV_GPU_ARCH_INFO pGpuArchInfo 
)

This function retrieves the architecture, implementation and chip revision for the specified GPU .

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 85
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.

◆ NvAPI_GPU_GetBoardInfo()

NVAPI_INTERFACE NvAPI_GPU_GetBoardInfo ( NvPhysicalGpuHandle  hPhysicalGpu,
NV_BOARD_INFO pBoardInfo 
)

SUPPORTED OS: Windows 10 and higher DESCRIPTION: This API Retrieves the Board information (a unique GPU Board Serial Number) stored in the InfoROM.

Parameters
[in]hPhysicalGpuPhysical GPU Handle.
[in,out]NV_BOARD_INFOBoard Information.

TCC_SUPPORTED

Return values
NVAPI_OKcompleted request
NVAPI_ERRORmiscellaneous error occurred
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhandle passed is not a physical GPU handle
NVAPI_API_NOT_INTIALIZEDNVAPI not initialized
NVAPI_INVALID_POINTERpBoardInfo is NULL
NVAPI_INCOMPATIBLE_STRUCT_VERSIONthe version of the INFO struct is not supported

◆ NvAPI_GPU_GetBusId()

NVAPI_INTERFACE NvAPI_GPU_GetBusId ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pBusId 
)

DESCRIPTION: Returns the ID of the bus associated with this GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 167
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pBusId is NULL.
NVAPI_OK*pBusId contains the bus ID.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

◆ NvAPI_GPU_GetBusSlotId()

NVAPI_INTERFACE NvAPI_GPU_GetBusSlotId ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pBusSlotId 
)

DESCRIPTION: Returns the ID of the bus slot associated with this GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 167
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pBusSlotId is NULL.
NVAPI_OK*pBusSlotId contains the bus slot ID.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

◆ NvAPI_GPU_GetBusType()

NVAPI_INTERFACE NvAPI_GPU_GetBusType ( NvPhysicalGpuHandle  hPhysicalGpu,
NV_GPU_BUS_TYPE pBusType 
)

This function returns the type of bus associated with this GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pBusType is NULL.
NVAPI_OK*pBusType contains bus identifier.

◆ NvAPI_GPU_GetConnectedDisplayIds()

NVAPI_INTERFACE NvAPI_GPU_GetConnectedDisplayIds ( __in NvPhysicalGpuHandle  hPhysicalGpu,
__inout_ecount_part_opt *, *pDisplayIdCount NV_GPU_DISPLAYIDS pDisplayIds,
__inout NvU32 pDisplayIdCount,
__in NvU32  flags 
)

DESCRIPTION: Due to space limitation NvAPI_GPU_GetConnectedOutputs can return maximum 32 devices, but this is no longer true for DPMST. NvAPI_GPU_GetConnectedDisplayIds will return all the connected display devices in the form of displayIds for the associated hPhysicalGpu. This function can accept set of flags to request cached, uncached, sli and lid to get the connected devices. Default value for flags will be cached .

HOW TO USE: 1) for each PhysicalGpu, make a call to get the number of connected displayId's using NvAPI_GPU_GetConnectedDisplayIds by passing the pDisplayIds as NULL On call success:

2) If pDisplayIdCount is greater than 0, allocate memory based on pDisplayIdCount. Then make a call NvAPI_GPU_GetConnectedDisplayIds to populate DisplayIds. However, if pDisplayIdCount is 0, do not make this call. SUPPORTED OS: Windows 10 and higher

Parameters
[in]hPhysicalGpu- GPU selection
[in]flags- One or more defines from NV_GPU_CONNECTED_IDS_FLAG_* as valid flags.
[in,out]pDisplayIds- Pointer to an NV_GPU_DISPLAYIDS struct, each entry represents a one displayID and its attributes
[in]pDisplayIdCount- Number of displayId's.
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pDisplayIds or pDisplayIdCount is NULL
NVAPI_OK*pDisplayIds contains a set of GPU-output identifiers
NVAPI_NVIDIA_DEVICE_NOT_FOUNDno NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

◆ NvAPI_GPU_GetCurrentPCIEDownstreamWidth()

NVAPI_INTERFACE NvAPI_GPU_GetCurrentPCIEDownstreamWidth ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pWidth 
)

This function returns the number of PCIE lanes being used for the PCIE interface downstream from the GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Return values
NVAPI_INVALID_ARGUMENTpWidth is NULL.
NVAPI_OKCall successful.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

◆ NvAPI_GPU_GetEDID()

NvAPI_GPU_GetEDID ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32  displayOutputId,
NV_EDID pEDID 
)

This function returns the EDID data for the specified GPU handle and connection bit mask. displayOutputId should have exactly 1 bit set to indicate a single display. See NvAPI Handles.

SUPPORTED OS: Windows 10 and higher

Since
Release: 85
Return values
NVAPI_INVALID_ARGUMENTpEDID is NULL; displayOutputId has 0 or > 1 bits set
NVAPI_OK*pEDID contains valid data.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.
NVAPI_DATA_NOT_FOUNDThe requested display does not contain an EDID.

◆ NvAPI_GPU_GetFullName()

NVAPI_INTERFACE NvAPI_GPU_GetFullName ( NvPhysicalGpuHandle  hPhysicalGpu,
NvAPI_ShortString  szName 
)

This function retrieves the full GPU name as an ASCII string - for example, "Quadro FX 1400".

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Returns
NVAPI_ERROR or NVAPI_OK

◆ NvAPI_GPU_GetGpuCoreCount()

NVAPI_INTERFACE NvAPI_GPU_GetGpuCoreCount ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pCount 
)

DESCRIPTION: Retrieves the total number of cores defined for a GPU. Returns 0 on architectures that don't define GPU cores.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Return values
NVAPI_INVALID_ARGUMENTpCount is NULL
NVAPI_OK*pCount is set
NVAPI_NVIDIA_DEVICE_NOT_FOUNDno NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle
NVAPI_NOT_SUPPORTEDAPI call is not supported on current architecture

◆ NvAPI_GPU_GetGPUInfo()

NVAPI_INTERFACE NvAPI_GPU_GetGPUInfo ( __in NvPhysicalGpuHandle  hPhysicalGpu,
__inout NV_GPU_INFO pGpuInfo 
)

DESCRIPTION: This API will return NVIDIA GPU related information.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 400
Parameters
[in,out]pGpuInfo- This structure will be filled with required information.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.

◆ NvAPI_GPU_GetGPUType()

NVAPI_INTERFACE NvAPI_GPU_GetGPUType ( __in NvPhysicalGpuHandle  hPhysicalGpu,
__inout NV_GPU_TYPE pGpuType 
)

DESCRIPTION: This function returns the GPU type (integrated or discrete). See NV_GPU_TYPE.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 173
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu
NVAPI_OK*pGpuType contains the GPU type
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

◆ NvAPI_GPU_GetGspFeatures()

NVAPI_INTERFACE NvAPI_GPU_GetGspFeatures ( __in NvPhysicalGpuHandle  hPhysicalGpu,
__inout NV_GPU_GSP_INFO pGspInfo 
)

DESCRIPTION: If the device has GSP running, this function populates firmwareVersion field with GSP firmware version and returns NVAPI_OK Otherwise returns NVAPI_NOT_SUPPORTED

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 550
Parameters
[in]hPhysicalGpuGPU selection
[out]pGspInfoGSP firmware version
Return values
NVAPI_INVALID_ARGUMENTpMemoryInfo is NULL
NVAPI_OKcall successful
NVAPI_API_NOT_INTIALIZEDnvapi not initialized
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle
NVAPI_INCOMPATIBLE_STRUCT_VERSIONNV_GPU_GSP_INFO structure version mismatch
NVAPI_NOT_SUPPORTEDGSP is not running/supported on this device

◆ NvAPI_GPU_GetHDCPSupportStatus()

NvAPI_GPU_GetHDCPSupportStatus ( NvPhysicalGpuHandle  hPhysicalGpu,
NV_GPU_GET_HDCP_SUPPORT_STATUS pGetHDCPSupportStatus 
)

DESCRIPTION: This function returns a GPU's HDCP support status.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 175
Return values
NVAPI_OK
NVAPI_ERROR
NVAPI_INVALID_ARGUMENT
NVAPI_HANDLE_INVALIDATED
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLE
NVAPI_INCOMPATIBLE_STRUCT_VERSION

◆ NvAPI_GPU_GetIllumination()

NVAPI_INTERFACE NvAPI_GPU_GetIllumination ( NV_GPU_GET_ILLUMINATION_PARM pIlluminationInfo)

◆ NvAPI_GPU_GetIRQ()

NVAPI_INTERFACE NvAPI_GPU_GetIRQ ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pIRQ 
)

This function returns the interrupt number associated with this GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pIRQ is NULL.
NVAPI_OK*pIRQ contains interrupt number.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

◆ NvAPI_GPU_GetLogicalGpuInfo()

NVAPI_INTERFACE NvAPI_GPU_GetLogicalGpuInfo ( __in NvLogicalGpuHandle  hLogicalGpu,
__inout NV_LOGICAL_GPU_DATA pLogicalGpuData 
)

This function is used to query Logical GPU information.

SUPPORTED OS: Windows 10 and higher

Since
Release: 421
Parameters
[in]hLogicalGpulogical GPU Handle.
[in,out]pLogicalGpuDataPointer to NV_LOGICAL_GPU_DATA structure.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.

◆ NvAPI_GPU_GetOutputType()

NvAPI_GPU_GetOutputType ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32  outputId,
NV_GPU_OUTPUT_TYPE pOutputType 
)

This function returns the output type. User can either specify both 'physical GPU handle and outputId (exactly 1 bit set - see NvAPI Handles)' or a valid displayId in the outputId parameter.

SUPPORTED OS: Windows 10 and higher

\Version Earliest supported ForceWare version: 82.61

Return values
NVAPI_INVALID_ARGUMENToutputId, pOutputType is NULL; or if outputId parameter is not displayId and either it has > 1 bit set or hPhysicalGpu is NULL.
NVAPI_OK*pOutputType contains a NvGpuOutputType value
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

◆ NvAPI_GPU_GetPCIIdentifiers()

NVAPI_INTERFACE NvAPI_GPU_GetPCIIdentifiers ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pDeviceId,
NvU32 pSubSystemId,
NvU32 pRevisionId,
NvU32 pExtDeviceId 
)

This function returns the PCI identifiers associated with this GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Parameters
DeviceIdThe internal PCI device identifier for the GPU.
SubSystemIdThe internal PCI subsystem identifier for the GPU.
RevisionIdThe internal PCI device-specific revision identifier for the GPU.
ExtDeviceIdThe external PCI device identifier for the GPU.
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or an argument is NULL
NVAPI_OKArguments are populated with PCI identifiers
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

◆ NvAPI_GPU_GetPhysicalFrameBufferSize()

NVAPI_INTERFACE NvAPI_GPU_GetPhysicalFrameBufferSize ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pSize 
)

This function returns the physical size of framebuffer in KB. This does NOT include any system RAM that may be dedicated for use by the GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Return values
NVAPI_INVALID_ARGUMENTpSize is NULL
NVAPI_OKCall successful
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

◆ NvAPI_GPU_GetRamBusWidth()

NVAPI_INTERFACE NvAPI_GPU_GetRamBusWidth ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pBusWidth 
)

This function returns the width of the GPU's RAM memory bus.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 100
Returns
NVAPI_ERROR or NVAPI_OK

◆ NvAPI_GPU_GetScanoutCompositionParameter()

NVAPI_INTERFACE NvAPI_GPU_GetScanoutCompositionParameter ( __in NvU32  displayId,
__in NV_GPU_SCANOUT_COMPOSITION_PARAMETER  parameter,
__out NV_GPU_SCANOUT_COMPOSITION_PARAMETER_VALUE parameterData,
__out float *  pContainer 
)

DESCRIPTION: This API queries current state of one of the various scanout composition parameters on the specified display.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdcombined physical display and GPU identifier of the display to query the configuration.
[in]parameterscanout composition parameter to by queried.
[out]parameterDatascanout composition parameter data.
[out]pContainerAdditional container for returning data associated with the specified parameter
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INVALID_ARGUMENTInvalid input parameters.
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized.
NVAPI_NOT_SUPPORTEDInterface not supported by the driver used, or only supported on selected GPUs.
NVAPI_OKFeature enabled.
NVAPI_ERRORMiscellaneous error occurred.

◆ NvAPI_GPU_GetScanoutConfiguration()

NVAPI_INTERFACE NvAPI_GPU_GetScanoutConfiguration ( NvU32  displayId,
NvSBox desktopRect,
NvSBox scanoutRect 
)

DESCRIPTION: This API queries the desktop and scanout portion of the specified display.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdcombined physical display and GPU identifier of the display to query the configuration.
[in,out]desktopRectdesktop area of the display in desktop coordinates.
[in,out]scanoutRectscanout area of the display relative to desktopRect.
Return values
NVAPI_INVALID_ARGUMENTInvalid input parameters.
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized.
NVAPI_NOT_SUPPORTEDInterface not supported by the driver used, or only supported on selected GPUs.
NVAPI_OKFeature enabled.
NVAPI_ERRORMiscellaneous error occurred.

◆ NvAPI_GPU_GetScanoutConfigurationEx()

NVAPI_INTERFACE NvAPI_GPU_GetScanoutConfigurationEx ( __in NvU32  displayId,
__inout NV_SCANOUT_INFORMATION pScanoutInformation 
)

DESCRIPTION: This API queries the desktop and scanout portion of the specified display.

SUPPORTED OS: Windows 10 and higher

Since
Release: 331
Parameters
[in]displayIdcombined physical display and GPU identifier of the display to query the configuration.
[in,out]pScanoutInformationdesktop area to displayId mapping information.
Returns
This API can return any of the error codes enumerated in NvAPI_Status.

◆ NvAPI_GPU_GetScanoutIntensityState()

NVAPI_INTERFACE NvAPI_GPU_GetScanoutIntensityState ( __in NvU32  displayId,
__inout NV_SCANOUT_INTENSITY_STATE_DATA scanoutIntensityStateData 
)

DESCRIPTION: This API queries current state of the intensity feature on the specified display.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdcombined physical display and GPU identifier of the display to query the configuration.
[in,out]scanoutIntensityStateDataintensity state data.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INVALID_ARGUMENTInvalid input parameters.
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized.
NVAPI_NOT_SUPPORTEDInterface not supported by the driver used, or only supported on selected GPUs.
NVAPI_OKFeature enabled.
NVAPI_ERRORMiscellaneous error occurred.

◆ NvAPI_GPU_GetScanoutWarpingState()

NVAPI_INTERFACE NvAPI_GPU_GetScanoutWarpingState ( __in NvU32  displayId,
__inout NV_SCANOUT_WARPING_STATE_DATA scanoutWarpingStateData 
)

DESCRIPTION: This API queries current state of the warping feature on the specified display.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdcombined physical display and GPU identifier of the display to query the configuration.
[in,out]scanoutWarpingStateDatawarping state data.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.
Return values
NVAPI_INVALID_ARGUMENTInvalid input parameters.
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized.
NVAPI_NOT_SUPPORTEDInterface not supported by the driver used, or only supported on selected GPUs.
NVAPI_OKFeature enabled.
NVAPI_ERRORMiscellaneous error occurred.

◆ NvAPI_GPU_GetShaderSubPipeCount()

NVAPI_INTERFACE NvAPI_GPU_GetShaderSubPipeCount ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pCount 
)

DESCRIPTION: This function retrieves the number of Shader SubPipes on the GPU On newer architectures, this corresponds to the number of SM units

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 170
Return values
NVAPI_INVALID_ARGUMENTpCount is NULL
NVAPI_OK*pCount is set
NVAPI_NVIDIA_DEVICE_NOT_FOUNDno NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

◆ NvAPI_GPU_GetSystemType()

NvAPI_GPU_GetSystemType ( NvPhysicalGpuHandle  hPhysicalGpu,
NV_SYSTEM_TYPE pSystemType 
)

This function identifies whether the GPU is a notebook GPU or a desktop GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 95
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pOutputsMask is NULL
NVAPI_OK*pSystemType contains the GPU system type
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

◆ NvAPI_GPU_GetVbiosOEMRevision()

NVAPI_INTERFACE NvAPI_GPU_GetVbiosOEMRevision ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pBiosRevision 
)

This function returns the OEM revision of the video BIOS associated with this GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pBiosRevision is NULL
NVAPI_OK*pBiosRevision contains revision number
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle

◆ NvAPI_GPU_GetVbiosRevision()

NVAPI_INTERFACE NvAPI_GPU_GetVbiosRevision ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pBiosRevision 
)

This function returns the revision of the video BIOS associated with this GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu or pBiosRevision is NULL.
NVAPI_OK*pBiosRevision contains revision number.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

◆ NvAPI_GPU_GetVbiosVersionString()

NVAPI_INTERFACE NvAPI_GPU_GetVbiosVersionString ( NvPhysicalGpuHandle  hPhysicalGpu,
NvAPI_ShortString  szBiosRevision 
)

This function returns the full video BIOS version string in the form of xx.xx.xx.xx.yy where

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Return values
NVAPI_INVALID_ARGUMENThPhysicalGpu is NULL.
NVAPI_OKszBiosRevision contains version string.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

◆ NvAPI_GPU_GetVirtualFrameBufferSize()

NVAPI_INTERFACE NvAPI_GPU_GetVirtualFrameBufferSize ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32 pSize 
)

This function returns the virtual size of framebuffer in KB. This includes the physical RAM plus any system RAM that has been dedicated for use by the GPU.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 90
Return values
NVAPI_INVALID_ARGUMENTpSize is NULL.
NVAPI_OKCall successful.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.

◆ NvAPI_GPU_GetVirtualizationInfo()

NVAPI_INTERFACE NvAPI_GPU_GetVirtualizationInfo ( __in NvPhysicalGpuHandle  hPhysicalGpu,
__inout NV_GPU_VIRTUALIZATION_INFO pVirtualizationInfo 
)

FUNCTION NAME: NvAPI_GPU_GetVirtualizationInfo

DESCRIPTION: This API returns virtualization information of the GPU

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 367
Parameters
[in,out]pVirtualizationInfoPointer to NV_GPU_VIRTUALIZATION_INFO structure.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.

◆ NvAPI_GPU_GetVRReadyData()

NVAPI_INTERFACE NvAPI_GPU_GetVRReadyData ( __in NvPhysicalGpuHandle  hPhysicalGpu,
__inout NV_GPU_VR_READY pGpuVrReadyData 
)

DESCRIPTION: This API will return NVIDIA GPU VR Ready state.

SUPPORTED OS: Windows 10 and higher

TCC_SUPPORTED

Since
Release: 465
Parameters
[in,out]pGpuVrReadyData- This structure will be filled with required information.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.

◆ NvAPI_GPU_QueryIlluminationSupport()

NVAPI_INTERFACE NvAPI_GPU_QueryIlluminationSupport ( __inout NV_GPU_QUERY_ILLUMINATION_SUPPORT_PARM pIlluminationSupportInfo)

◆ NvAPI_GPU_QueryWorkstationFeatureSupport()

NvAPI_GPU_QueryWorkstationFeatureSupport ( NvPhysicalGpuHandle  physicalGpu,
NV_GPU_WORKSTATION_FEATURE_TYPE  gpuWorkstationFeature 
)
DESCRIPTION: Indicates whether a queried workstation feature is supported by the requested GPU.
SUPPORTED OS: Windows 10 and higher
\since Release: 440
DESCRIPTION: This API, when called with a valid physical gpu handle as Input, lets caller know whether the given workstation feature is supported by this GPU.
PARAMETERS: physicalGpu(IN) : The handle of the GPU for the which caller wants to get the support information.
gpuWorkstationFeature(IN ) : The feature for the GPU in question. One of the values from enum NV_GPU_WORKSTATION_FEATURE_TYPE.
\return This API can return any of the error codes enumerated in #NvAPI_Status listed below
\retval ::NVAPI_OK the queried workstation feature is supported on the given GPU.
\retval ::NVAPI_NO_IMPLEMENTATION the current driver doesn't support this interface.
\retval ::NVAPI_INVALID_HANDLE the incoming physicalGpu handle is invalid.
\retval ::NVAPI_NOT_SUPPORTED the requested gpuWorkstationFeature is not supported in the selected GPU.
\retval ::NVAPI_SETTING_NOT_FOUND the requested gpuWorkstationFeature is unknown to the current driver version.
enum _NV_GPU_WORKSTATION_FEATURE_TYPE NV_GPU_WORKSTATION_FEATURE_TYPE
enum _NvAPI_Status NvAPI_Status
@ NVAPI_NO_IMPLEMENTATION
not implemented in current driver installation
Definition nvapi_lite_common.h:254
@ NVAPI_OK
Success. Request is completed.
Definition nvapi_lite_common.h:251

◆ NvAPI_GPU_SetEDID()

NVAPI_INTERFACE NvAPI_GPU_SetEDID ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32  displayOutputId,
NV_EDID pEDID 
)

Thus function sets the EDID data for the specified GPU handle and connection bit mask. User can either send (Gpu handle & output id) or only display Id in variable displayOutputId parameter & hPhysicalGpu parameter can be default handle (0).

Note
The EDID will be cached across the boot session and will be enumerated to the OS in this call. To remove the EDID set sizeofEDID to zero. OS and NVAPI connection status APIs will reflect the newly set or removed EDID dynamically.
    This feature will NOT be supported on the following boards:
    - GeForce
    - Quadro VX
    - Tesla
SUPPORTED OS: Windows 10 and higher
Since
Release: 100
Return values
NVAPI_INVALID_ARGUMENTpEDID is NULL; displayOutputId has 0 or > 1 bits set
NVAPI_OK*pEDID data was applied to the requested displayOutputId.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.
NVAPI_NOT_SUPPORTEDFor the above mentioned GPUs
NVAPI_INVALID_USER_PRIVILEGEThe application will require Administrator privileges to access this API. The application can be elevated to a higher permission level by selecting "Run as Administrator".

◆ NvAPI_GPU_SetIllumination()

NVAPI_INTERFACE NvAPI_GPU_SetIllumination ( NV_GPU_SET_ILLUMINATION_PARM pIlluminationInfo)

◆ NvAPI_GPU_SetScanoutCompositionParameter()

NVAPI_INTERFACE NvAPI_GPU_SetScanoutCompositionParameter ( NvU32  displayId,
NV_GPU_SCANOUT_COMPOSITION_PARAMETER  parameter,
NV_GPU_SCANOUT_COMPOSITION_PARAMETER_VALUE  parameterValue,
float *  pContainer 
)

DESCRIPTION: This API sets various parameters that configure the scanout composition feature on the specified display. (currently there is only one configurable parameter defined: WARPING_RESAMPLING_METHOD, but this function is designed to support the addition of parameters as needed.)

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdCombined physical display and GPU identifier of the display to apply the intensity control
[in]parameterThe scanout composition parameter to be set
[in]parameterValueThe data to be set for the specified parameter
[in]pContainerAdditional container for data associated with the specified parameter
Return values
NVAPI_INVALID_ARGUMENTInvalid input parameters.
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized.
NVAPI_NOT_SUPPORTEDInterface not supported by the driver used, or only supported on selected GPUs
NVAPI_INVALID_ARGUMENTInvalid input data.
NVAPI_OKFeature enabled.
NVAPI_ERRORMiscellaneous error occurred.

◆ NvAPI_GPU_SetScanoutIntensity()

NVAPI_INTERFACE NvAPI_GPU_SetScanoutIntensity ( NvU32  displayId,
NV_SCANOUT_INTENSITY_DATA scanoutIntensityData,
int *  pbSticky 
)

DESCRIPTION: This API enables and sets up per-pixel intensity feature on the specified display.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdcombined physical display and GPU identifier of the display to apply the intensity control.
[in]scanoutIntensityDatathe intensity texture info.
[out]pbSticky(OUT)indicates whether the settings will be kept over a reboot.
Return values
NVAPI_INVALID_ARGUMENTInvalid input parameters.
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized.
NVAPI_NOT_SUPPORTEDInterface not supported by the driver used, or only supported on selected GPUs
NVAPI_INVALID_ARGUMENTInvalid input data.
NVAPI_INCOMPATIBLE_STRUCT_VERSIONNV_SCANOUT_INTENSITY_DATA structure version mismatch.
NVAPI_OKFeature enabled.
NVAPI_ERRORMiscellaneous error occurred.

◆ NvAPI_GPU_SetScanoutWarping()

NVAPI_INTERFACE NvAPI_GPU_SetScanoutWarping ( NvU32  displayId,
NV_SCANOUT_WARPING_DATA scanoutWarpingData,
int *  piMaxNumVertices,
int *  pbSticky 
)

DESCRIPTION: This API enables and sets up the warping feature on the specified display.

SUPPORTED OS: Windows 10 and higher

Parameters
[in]displayIdCombined physical display and GPU identifier of the display to apply the intensity control
[in]scanoutWarpingDataThe warping data info
[out]pbStickyIndicates whether the settings will be kept over a reboot.
Return values
NVAPI_INVALID_ARGUMENTInvalid input parameters.
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized.
NVAPI_NOT_SUPPORTEDInterface not supported by the driver used, or only supported on selected GPUs
NVAPI_INVALID_ARGUMENTInvalid input data.
NVAPI_INCOMPATIBLE_STRUCT_VERSIONNV_SCANOUT_WARPING_DATA structure version mismatch.
NVAPI_OKFeature enabled.
NVAPI_ERRORMiscellaneous error occurred.

◆ NvAPI_GPU_ValidateOutputCombination()

NVAPI_INTERFACE NvAPI_GPU_ValidateOutputCombination ( NvPhysicalGpuHandle  hPhysicalGpu,
NvU32  outputsMask 
)

This function determines if a set of GPU outputs can be active simultaneously. While a GPU may have <n> outputs, typically they cannot all be active at the same time due to internal resource sharing.

Given a physical GPU handle and a mask of candidate outputs, this call will return NVAPI_OK if all of the specified outputs can be driven simultaneously. It will return NVAPI_INVALID_COMBINATION if they cannot.

Use NvAPI_GPU_GetAllOutputs() to determine which outputs are candidates.

SUPPORTED OS: Windows 10 and higher

Since
Release: 85
Return values
NVAPI_OKCombination of outputs in outputsMask are valid (can be active simultaneously).
NVAPI_INVALID_COMBINATIONCombination of outputs in outputsMask are NOT valid.
NVAPI_INVALID_ARGUMENThPhysicalGpu or outputsMask does not have at least 2 bits set.
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu was not a physical GPU handle.
NVAPI_NVIDIA_DEVICE_NOT_FOUNDNo NVIDIA GPU driving a display was found.

◆ NvAPI_GPU_WorkstationFeatureQuery()

NVAPI_INTERFACE NvAPI_GPU_WorkstationFeatureQuery ( __in NvPhysicalGpuHandle  hPhysicalGpu,
__out_opt NvU32 pConfiguredFeatureMask,
__out_opt NvU32 pConsistentFeatureMask 
)

DESCRIPTION: This API queries the current set of workstation features.

SUPPORTED OS: Windows 10

Parameters
[in]hPhysicalGpuPhysical GPU Handle of the display adapter to be configured. GPU handles may be retrieved using NvAPI_EnumPhysicalGPUs.
[out]pConfiguredFeatureMaskMask of features requested for use by client drivers
[out]pConsistentFeatureMaskMask of features that have all resources allocated for completeness.
Return values
NVAPI_OKconfiguration request succeeded
NVAPI_ERRORconfiguration request failed
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLEhPhysicalGpu is not a physical GPU handle.
NVAPI_NO_IMPLEMENTATIONOS below Win7, implemented only for Win7 but returns NVAPI_OK on OS above Win7 to keep compatibility with apps written against Win7.

◆ NvAPI_GPU_WorkstationFeatureSetup()

NVAPI_INTERFACE NvAPI_GPU_WorkstationFeatureSetup ( __in NvPhysicalGpuHandle  hPhysicalGpu,
__in NvU32  featureEnableMask,
__in NvU32  featureDisableMask 
)

◆ NvAPI_JoinPresentBarrier()

NVAPI_INTERFACE NvAPI_JoinPresentBarrier ( __in NvPresentBarrierClientHandle  presentBarrierClient,
__in NV_JOIN_PRESENT_BARRIER_PARAMS pParams 
)

DESCRIPTION: This API adds a registered PresentBarrier client to the presentBarrier. If the call suceeds, image present of the registered scanout resources from this client is under the synchronization of presentBarrier.

Since
Release: 470
Parameters
[in]presentBarrierClientAn NvPresentBarrierClientHandle handle created by NvAPI_xxxx_CreatedPresentBarrierClient
[in]pParamsParameters to joining presentBarrier.
Return values
NVAPI_OKthe call succeeded
NVAPI_ERRORthe call failed
NVAPI_NO_IMPLEMENTATIONthe interface is not implemented
NVAPI_INCOMPATIBLE_STRUCT_VERSIONthe version of data structure is not correct
NVAPI_INVALID_HANDLEan invalid NvPresentBarrierClientHandle was passed as an argument
NVAPI_INVALID_POINTERan invalid pointer was passed as an argument (probably NULL)
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized

◆ NvAPI_LeavePresentBarrier()

NVAPI_INTERFACE NvAPI_LeavePresentBarrier ( __in NvPresentBarrierClientHandle  presentBarrierClient)

SUPPORTED OS: Windows 10 and higher DESCRIPTION: This API removes a registered client from presentBarrier. If this client does not join presentBarrier, this function does nothing.

Since
Release: 470
Parameters
[in]presentBarrierClientAn NvPresentBarrierClientHandle handle created by NvAPI_xxxxx_CreatePresentBarrierClient.
Return values
NVAPI_OKthe call succeeded
NVAPI_ERRORthe call failed
NVAPI_NO_IMPLEMENTATIONthe interface is not implemented
NVAPI_INVALID_HANDLEan invalid NvPresentBarrierClientHandle was passed as an argument
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized

◆ NvAPI_OGL_ExpertModeDefaultsGet()

NVAPI_INTERFACE NvAPI_OGL_ExpertModeDefaultsGet ( NvU32 pExpertDetailLevel,
NvU32 pExpertReportMask,
NvU32 pExpertOutputMask 
)

Get uncached connected devices.

◆ NvAPI_OGL_ExpertModeDefaultsSet()

NVAPI_INTERFACE NvAPI_OGL_ExpertModeDefaultsSet ( NvU32  expertDetailLevel,
NvU32  expertReportMask,
NvU32  expertOutputMask 
)

This function configures OpenGL Expert Mode global defaults. These settings apply to any OpenGL application which starts up after these values are applied (i.e. these settings do not apply to currently running applications).

SUPPORTED OS: Windows 10 and higher

Since
Release: 80
Parameters
expertDetailLevelValue which specifies the detail level in the feedback stream. This is a mask made up of NVAPI_OGLEXPERT_LEVEL bits.
expertReportMaskMask made up of NVAPI_OGLEXPERT_REPORT bits, this parameter specifies the areas of functional interest.
expertOutputMaskMask made up of NVAPI_OGLEXPERT_OUTPUT bits, this parameter specifies the feedback output location. Note that using OUTPUT_TO_CALLBACK here is meaningless and has no effect, but using it will not cause an error.
Returns
NVAPI_ERROR or NVAPI_OK

SUPPORTED OS: Windows 10 and higher

◆ NvAPI_QueryPresentBarrierFrameStatistics()

NVAPI_INTERFACE NvAPI_QueryPresentBarrierFrameStatistics ( __in NvPresentBarrierClientHandle  presentBarrierClient,
__out NV_PRESENT_BARRIER_FRAME_STATISTICS pFrameStats 
)

DESCRIPTION: This API returns the presentBarrier frame statistics of last present call from this client. If the client did not join presentBarrier, the SyncMode is returned as PRESENT_BARRIER_NOT_JOINED, and all other fields are reset. Driver does not retain any presentBarrier info of the client once it leaves presentBarrier.

Since
Release: 470
Parameters
[in]presentBarrierClientAn NvPresentBarrierClientHandle handle created by NvAPI_xxxxx_CreatePresentBarrierClient.
[out]pFrameStatsPointer to NV_PRESENT_BARRIER_FRAME_STATISTICS structure about presentBarrier statistics.
Return values
NVAPI_OKthe call succeeded
NVAPI_ERRORthe call failed
NVAPI_NO_IMPLEMENTATIONthe interface is not implemented
NVAPI_INVALID_HANDLEan invalid NvPresentBarrierClientHandle was passed as an argument
NVAPI_INVALID_POINTERan invalid pointer was passed as an argument (probably NULL)
NVAPI_INCOMPATIBLE_STRUCT_VERSIONinvalid version of frameStatistics params
NVAPI_API_NOT_INITIALIZEDNvAPI not initialized

◆ NvAPI_SYS_GetDisplayDriverInfo()

NVAPI_INTERFACE NvAPI_SYS_GetDisplayDriverInfo ( __inout NV_DISPLAY_DRIVER_INFO pDriverInfo)

DESCRIPTION: This API will return information related to the NVIDIA Display Driver. Note that out of the driver types - Studio, Game Ready, RTX Production Branch, RTX New Feature Branch - only one driver type can be available in system. If NVAPI is unable to get the information of particular driver type, we report all flags as 0 (Unknown).

SUPPORTED OS: Windows 10 and higher

Since
Release: 396
Parameters
[in,out]pDriverInfo- This structure will be filled with required information.
Returns
This API can return any of the error codes enumerated in NvAPI_Status. If there are return error codes with specific meaning for this API, they are listed below.

Variable Documentation

◆ pOutputsMask

NvU32 * pOutputsMask

Get uncached connected devices.

◆ pRate

NvU32* pRate

◆ pSize

NvU32* pSize

◆ pStatus

NVVIOSTATUS* pStatus