Loading [MathJax]/extensions/tex2jax.js
  • <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>
  • NVIDIA DRIVE OS Linux SDK API Reference

    6.0.4 Release
    All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
    nvrm_gpu.h
    Go to the documentation of this file.
    1 /*
    2  * Copyright (c) 2014-2022 NVIDIA Corporation. All rights reserved.
    3  *
    4  * NVIDIA Corporation and its licensors retain all intellectual property
    5  * and proprietary rights in and to this software, related documentation
    6  * and any modifications thereto. Any use, reproduction, disclosure or
    7  * distribution of this software and related documentation without an express
    8  * license agreement from NVIDIA Corporation is strictly prohibited.
    9  */
    10 
    11 #ifndef INCLUDED_nvrm_gpu_H
    12 #define INCLUDED_nvrm_gpu_H
    13 
    14 #include <stdbool.h>
    15 #include <stdint.h>
    16 #include <stddef.h>
    17 
    18 #include "nvcommon.h"
    19 #include "nverror.h"
    20 
    21 #if defined(__cplusplus)
    22 extern "C"
    23 {
    24 #endif
    25 
    26 #if defined(NVRM_GPU_BUILD_VARIANT)
    27 namespace nvrm_gpu
    28 {
    29 #endif
    30 
    215 
    216 // -------------------------------------------------
    217 // --------------- API Groups ----------------------
    218 // -------------------------------------------------
    219 
    221 
    226 
    230 
    235 
    239 
    240 // -------------------------------------------------
    241 // --------------- Handles -------------------------
    242 // -------------------------------------------------
    243 
    251 typedef struct NvRmGpuLibRec NvRmGpuLib;
    252 
    260 typedef struct NvRmGpuDeviceRec NvRmGpuDevice;
    261 
    267 typedef struct NvRmGpuDeviceEventSessionRec NvRmGpuDeviceEventSession;
    268 
    269 
    270 // -------------------------------------------------
    271 // --------------- Library functions ---------------
    272 // -------------------------------------------------
    273 
    280 {
    284  uint32_t major;
    285 
    289  uint32_t minor;
    290 
    294  uint32_t patch;
    295 
    306  const char *suffix;
    307 
    309 
    329 
    347 typedef struct NvRmGpuLibOpenAttrRec
    348 {
    350  uint32_t reserved;
    351 
    353 
    360 #define NVRM_GPU_DEFINE_LIB_OPEN_ATTR(x) NvRmGpuLibOpenAttr x = { 0U }
    361 
    426 
    456 
    463 typedef enum
    464 {
    467 
    470 
    474 
    476 
    477 
    484 {
    487 
    492 
    502  const char *name;
    504 
    533 const NvRmGpuLibDeviceListEntry *NvRmGpuLibListDevices(NvRmGpuLib *hLib, size_t *pNumDevices);
    534 
    535 
    536 
    546 #define NVRM_GPU_DEVICE_INDEX_DEFAULT (-1)
    547 
    586 typedef enum
    587 {
    596 
    599 
    603 
    604 
    614 {
    628 
    641 
    650 #define NVRM_GPU_DEFINE_DEVICE_OPEN_ATTR(x) \
    651  NvRmGpuDeviceOpenAttr x = { NvRmGpuSyncType_Default, false }
    652 
    653 
    685 NvError NvRmGpuDeviceOpen(NvRmGpuLib *hLib, int deviceIndex, const NvRmGpuDeviceOpenAttr *attr,
    686  NvRmGpuDevice **phDevice);
    687 
    718 
    719 
    720 #if NVOS_IS_LINUX || NVOS_IS_QNX
    721 
    726 #define NVRM_GPU_CLOCK_ASYNC_REQ_HANDLE_PRIFMT "d"
    727 
    732 #define NVRM_GPU_CLOCK_ASYNC_REQ_INVALID_HANDLE (-1)
    733 
    745 typedef int NvRmGpuClockAsyncReqHandle;
    746 #else
    747 
    752 #define NVRM_GPU_CLOCK_ASYNC_REQ_HANDLE_PRIFMT "p"
    753 
    758 #define NVRM_GPU_CLOCK_ASYNC_REQ_INVALID_HANDLE (NULL)
    759 
    781 #endif
    782 
    790 typedef enum
    791 {
    794 
    797 
    801 
    806 typedef enum NvRmGpuClockType
    807 {
    813 
    819 
    823 
    824 
    830 {
    836 
    842 
    847  uint64_t freqHz;
    848 
    850 
    856 {
    859 
    861  uint64_t freqHz;
    863 
    868 typedef struct NvRmGpuClockRangeRec
    869 {
    870  uint64_t minHz;
    871  uint64_t maxHz;
    873 
    878 typedef struct NvRmGpuClockPointRec
    879 {
    880  uint64_t freqHz;
    882 
    888 {
    891 
    894 
    897  size_t maxVfPoints;
    898 
    900 
    938  const NvRmGpuClockDomainInfo **infos,
    939  size_t *pNumDomains);
    940 
    978  NvRmGpuClockDomain domain,
    979  NvRmGpuClockPoint *pClkPoints,
    980  size_t *pNumPoints);
    981 
    1092  const NvRmGpuClockSetEntry *pClkSetEntries,
    1093  size_t numEntries,
    1095 
    1129  const NvRmGpuClockAsyncReqHandle *phReqs,
    1130  size_t numEntries,
    1131  uint32_t timeoutMs);
    1132 
    1133 
    1164 
    1165 
    1178  uint32_t timeoutMs);
    1179 
    1180 
    1224  NvRmGpuClockGetEntry *pClkGetEntries,
    1225  size_t numEntries);
    1226 
    1229 typedef enum
    1230 {
    1233 
    1236 
    1240 
    1268  const NvRmGpuDeviceVoltage **pSensors,
    1269  size_t *pNumSensors);
    1270 
    1271 
    1301  NvRmGpuDeviceVoltage which,
    1302  uint64_t *pVoltageMicroVolt);
    1303 
    1306 typedef enum
    1307 {
    1311 
    1312 
    1341  const NvRmGpuDeviceCurrent **pSensors,
    1342  size_t *pNumSensors);
    1343 
    1372  NvRmGpuDeviceCurrent which,
    1373  uint64_t *pCurrentMicroAmpere);
    1374 
    1377 typedef enum
    1378 {
    1382 
    1410  const NvRmGpuDevicePower **pSensors,
    1411  size_t *pNumSensors);
    1412 
    1442  NvRmGpuDevicePower which,
    1443  uint64_t *pPowerMicroWatt);
    1444 
    1445 
    1448 typedef enum
    1449 {
    1453 
    1482  const NvRmGpuDeviceTemperature **pSensors,
    1483  size_t *pNumSensors);
    1484 
    1516  int32_t *pTemperatureMilliCelsius);
    1517 
    1543  int32_t temperature_mC);
    1544 
    1545 
    1550 typedef enum
    1551 {
    1552  // @brief Frequency change event
    1561 
    1567 
    1574 
    1580 
    1588 
    1597 
    1604 
    1615 
    1618 
    1620 
    1631 {
    1637 
    1640 
    1642 
    1650 #define NVRM_GPU_DEFINE_DEVICE_EVENT_SESSION_ATTR(x) \
    1651  NvRmGpuDeviceEventSessionOpenAttr x = { NULL, 0 }
    1652 
    1670 {
    1671  static const NvRmGpuDeviceEventId allEvents[] =
    1672  {
    1681  };
    1682  attr->filterList = allEvents;
    1683  attr->filterListSize = NV_ARRAY_SIZE(allEvents);
    1684 }
    1685 
    1714  NvRmGpuDeviceEventSession **phSession);
    1715 
    1725 {
    1728 
    1739  uint64_t timeNs;
    1740 
    1742 
    1777  NvRmGpuDeviceEventInfo *pEventInfo,
    1778  uint32_t timeoutMs);
    1779 
    1804 
    1805 #if defined(NVRM_GPU_BUILD_VARIANT)
    1806 } // namespace nvrm_gpu
    1807 #endif
    1808 
    1809 #if defined(__cplusplus)
    1810 }
    1811 #endif
    1812 
    1813 #if !defined(NV_SDK_BUILD)
    1814 #include "nvrm_gpu_priv.h"
    1815 #endif
    1816 
    1817 #endif
    NvRmGpuClockSetEntryRec::freqHz
    uint64_t freqHz
    Frequency for clock request.
    Definition: nvrm_gpu.h:861
    NvRmGpuLibOpen
    NvRmGpuLib * NvRmGpuLibOpen(const NvRmGpuLibOpenAttr *attr)
    Opens a new instance of the nvrm_gpu library.
    NvRmGpuClockDomainInfoRec::maxVfPoints
    size_t maxVfPoints
    Maximum number of voltage/frequency points returned by NvRmGpuClockGetPoints()
    Definition: nvrm_gpu.h:897
    NvRmGpuLibOpenAttrRec
    Extensible attribute structure for NvRmGpuLibOpen()
    Definition: nvrm_gpu.h:347
    NvRmGpuClockDomain_Count
    @ NvRmGpuClockDomain_Count
    Number of clock domains.
    Definition: nvrm_gpu.h:799
    NvRmGpuLibDeviceListEntryRec::deviceState
    NvRmGpuLibDeviceState deviceState
    Device attachment state.
    Definition: nvrm_gpu.h:491
    NvRmGpuDeviceGetVoltage
    NvError NvRmGpuDeviceGetVoltage(NvRmGpuDevice *hDevice, NvRmGpuDeviceVoltage which, uint64_t *pVoltageMicroVolt)
    Retrieves the voltage sensor reading.
    NvRmGpuLibVersionInfoRec
    The version information structure returned by NvRmGpuLibGetVersionInfo().
    Definition: nvrm_gpu.h:279
    NvRmGpuDeviceListVoltageSensors
    NvError NvRmGpuDeviceListVoltageSensors(NvRmGpuDevice *hDevice, const NvRmGpuDeviceVoltage **pSensors, size_t *pNumSensors)
    Returns the list of available voltage sensors for the device.
    NvRmGpuDeviceEventId_AlarmVfTableUpdateFailed
    @ NvRmGpuDeviceEventId_AlarmVfTableUpdateFailed
    VF table update failed.
    Definition: nvrm_gpu.h:1587
    NvRmGpuLibDeviceState_Attached
    @ NvRmGpuLibDeviceState_Attached
    Device is attached and may be opened with NvRmGpuDeviceOpen()
    Definition: nvrm_gpu.h:466
    NvRmGpuClockWaitAsyncReq
    NvError NvRmGpuClockWaitAsyncReq(NvRmGpuDevice *hDevice, const NvRmGpuClockAsyncReqHandle *phReqs, size_t numEntries, uint32_t timeoutMs)
    Waits for the completion of one or more asynchronous clock requests.
    NvRmGpuDeviceEventSessionOpenAttrRec::filterList
    const NvRmGpuDeviceEventId * filterList
    List of events to listen.
    Definition: nvrm_gpu.h:1636
    NvRmGpuDeviceEventSession
    struct NvRmGpuDeviceEventSessionRec NvRmGpuDeviceEventSession
    Device event session handle.
    Definition: nvrm_gpu.h:267
    NvRmGpuDeviceEventId
    NvRmGpuDeviceEventId
    Definition: nvrm_gpu.h:1550
    NvRmGpuDeviceEventId_Count
    @ NvRmGpuDeviceEventId_Count
    Number of events.
    Definition: nvrm_gpu.h:1617
    NvRmGpuDeviceEventId_AlarmLocalTargetVfNotPossible
    @ NvRmGpuDeviceEventId_AlarmLocalTargetVfNotPossible
    A clock domain frequency is below local target frequency requested by a session.
    Definition: nvrm_gpu.h:1573
    NvRmGpuDeviceVoltage_SRAM
    @ NvRmGpuDeviceVoltage_SRAM
    SRAM voltage.
    Definition: nvrm_gpu.h:1235
    NvRmGpuDeviceEventId_AlarmTargetVfNotPossible
    @ NvRmGpuDeviceEventId_AlarmTargetVfNotPossible
    A clock domain frequency is below target.
    Definition: nvrm_gpu.h:1566
    NvRmGpuLibVersionInfoRec::patch
    uint32_t patch
    The library patch level.
    Definition: nvrm_gpu.h:294
    NvRmGpuLib
    struct NvRmGpuLibRec NvRmGpuLib
    Library handle.
    Definition: nvrm_gpu.h:251
    NvRmGpuClockDomainInfoRec::range
    NvRmGpuClockRange range
    Frequency range of the clock domain.
    Definition: nvrm_gpu.h:893
    NvRmGpuClockAsyncNotImplemented
    OS-specific type of asynchronous clock request handle (unimplemented).
    NvRmGpuClockDomainInfo
    struct NvRmGpuClockDomainInfoRec NvRmGpuClockDomainInfo
    Clock domain info.
    nverror.h
    NvRmGpuDeviceEventId_VfUpdate
    @ NvRmGpuDeviceEventId_VfUpdate
    Voltage/frequency update occurred for a clock domain.
    Definition: nvrm_gpu.h:1560
    NvRmGpuDeviceVoltage
    NvRmGpuDeviceVoltage
    Voltage sensors.
    Definition: nvrm_gpu.h:1229
    NvRmGpuClockCloseAsyncReq
    NvError NvRmGpuClockCloseAsyncReq(NvRmGpuDevice *hDevice, NvRmGpuClockAsyncReqHandle hReq)
    Closes an asynchronous clock request handle.
    NvRmGpuDeviceEventSessionOpenAttrSetAllEvents
    static void NvRmGpuDeviceEventSessionOpenAttrSetAllEvents(NvRmGpuDeviceEventSessionOpenAttr *attr)
    Assigns device events attribute structure with a list of all events to listen to.
    Definition: nvrm_gpu.h:1669
    NvRmGpuClockDomain_GPCCLK
    @ NvRmGpuClockDomain_GPCCLK
    Main graphics core clock.
    Definition: nvrm_gpu.h:796
    NvRmGpuLibDeviceListEntryRec::deviceIndex
    int deviceIndex
    Internal device index. Used in NvRmGpuDeviceOpen()
    Definition: nvrm_gpu.h:486
    NvRmGpuDeviceListPowerSensors
    NvError NvRmGpuDeviceListPowerSensors(NvRmGpuDevice *hDevice, const NvRmGpuDevicePower **pSensors, size_t *pNumSensors)
    Returns the list of available power sensors for the device.
    NvRmGpuLibDeviceListEntryRec
    Device list entry.
    Definition: nvrm_gpu.h:483
    NvRmGpuClockGetPoints
    NvError NvRmGpuClockGetPoints(NvRmGpuDevice *hDevice, NvRmGpuClockDomain domain, NvRmGpuClockPoint *pClkPoints, size_t *pNumPoints)
    Retrieves voltage/frequency (VF) points for a given clock domain. For information about VF points,...
    NvRmGpuDeviceEventInfoRec
    GPU device event.
    Definition: nvrm_gpu.h:1724
    NvRmGpuDeviceEventInfo
    struct NvRmGpuDeviceEventInfoRec NvRmGpuDeviceEventInfo
    GPU device event.
    NvRmGpuClockSetEntry
    struct NvRmGpuClockSetEntryRec NvRmGpuClockSetEntry
    Entry for clock set request.
    nvcommon.h
    NvRmGpuClockSetEntryRec::domain
    NvRmGpuClockDomain domain
    Domain for clock request.
    Definition: nvrm_gpu.h:858
    NvRmGpuClockDomainInfoRec
    Clock domain info.
    Definition: nvrm_gpu.h:887
    NvRmGpuLibVersionInfoRec::major
    uint32_t major
    The library major version.
    Definition: nvrm_gpu.h:284
    NvRmGpuSyncType_Syncpoint
    @ NvRmGpuSyncType_Syncpoint
    Synchronization type is Tegra HOST1X syncpoint.
    Definition: nvrm_gpu.h:601
    NvRmGpuLibClose
    NvError NvRmGpuLibClose(NvRmGpuLib *hLib)
    Closes the library and releases all resources.
    NvRmGpuClockGetDomains
    NvError NvRmGpuClockGetDomains(NvRmGpuDevice *hDevice, const NvRmGpuClockDomainInfo **infos, size_t *pNumDomains)
    Returns available GPU clock domains for the device.
    NvRmGpuClockSetEntryRec
    Entry for clock set request.
    Definition: nvrm_gpu.h:855
    NvRmGpuClockDomain_MCLK
    @ NvRmGpuClockDomain_MCLK
    Memory clock.
    Definition: nvrm_gpu.h:793
    NvRmGpuClockPointRec::freqHz
    uint64_t freqHz
    Definition: nvrm_gpu.h:880
    NvRmGpuClockGetEntryRec
    Entry for clock get request.
    Definition: nvrm_gpu.h:829
    NvRmGpuDeviceVoltage_Core
    @ NvRmGpuDeviceVoltage_Core
    Core GPU voltage.
    Definition: nvrm_gpu.h:1232
    NvRmGpuClockWaitAnyEvent
    NvError NvRmGpuClockWaitAnyEvent(NvRmGpuDevice *hDevice, uint32_t timeoutMs)
    This function is not implemented and it should be deleted.
    NvRmGpuDeviceGetCurrent
    NvError NvRmGpuDeviceGetCurrent(NvRmGpuDevice *hDevice, NvRmGpuDeviceCurrent which, uint64_t *pCurrentMicroAmpere)
    Retrieves the electric current reading.
    NvRmGpuLibListDevices
    const NvRmGpuLibDeviceListEntry * NvRmGpuLibListDevices(NvRmGpuLib *hLib, size_t *pNumDevices)
    Returns the list of probed GPUs.
    NvRmGpuDeviceEventId_AlarmThermalAboveThreshold
    @ NvRmGpuDeviceEventId_AlarmThermalAboveThreshold
    Temperature above threshold.
    Definition: nvrm_gpu.h:1596
    NvRmGpuDevicePower
    NvRmGpuDevicePower
    Electric power sensors.
    Definition: nvrm_gpu.h:1377
    NvRmGpuDeviceEventId_AlarmGpuLost
    @ NvRmGpuDeviceEventId_AlarmGpuLost
    Device lost.
    Definition: nvrm_gpu.h:1614
    NvRmGpuDeviceVoltage_Bus
    @ NvRmGpuDeviceVoltage_Bus
    Bus voltage.
    Definition: nvrm_gpu.h:1238
    NvRmGpuDeviceEventSessionOpenAttrRec::filterListSize
    size_t filterListSize
    Number of entries in the event list.
    Definition: nvrm_gpu.h:1639
    NvRmGpuClockGetEntryRec::type
    NvRmGpuClockType type
    (IN) Request type
    Definition: nvrm_gpu.h:841
    NvRmGpuClockAsyncReqHandle
    struct NvRmGpuClockAsyncNotImplemented * NvRmGpuClockAsyncReqHandle
    OS-specific type of asynchronous clock request handle.
    Definition: nvrm_gpu.h:780
    NvRmGpuDeviceEventSessionOpenAttr
    struct NvRmGpuDeviceEventSessionOpenAttrRec NvRmGpuDeviceEventSessionOpenAttr
    Extensible attribute structure for NvRmGpuDeviceEventSessionOpen().
    NvRmGpuSyncType_SyncFd
    @ NvRmGpuSyncType_SyncFd
    Synchronization type is Android/Linux sync fd.
    Definition: nvrm_gpu.h:598
    NvRmGpuDeviceTemperature
    NvRmGpuDeviceTemperature
    Temperature sensors.
    Definition: nvrm_gpu.h:1448
    NvRmGpuClockGetEntryRec::domain
    NvRmGpuClockDomain domain
    (IN) Domain for the clock request
    Definition: nvrm_gpu.h:835
    NvRmGpuDeviceListCurrentSensors
    NvError NvRmGpuDeviceListCurrentSensors(NvRmGpuDevice *hDevice, const NvRmGpuDeviceCurrent **pSensors, size_t *pNumSensors)
    Returns the list of available electric current sensors for the device.
    NvRmGpuDeviceOpen
    NvError NvRmGpuDeviceOpen(NvRmGpuLib *hLib, int deviceIndex, const NvRmGpuDeviceOpenAttr *attr, NvRmGpuDevice **phDevice)
    Opens a GPU device.
    NvRmGpuDeviceClose
    NvError NvRmGpuDeviceClose(NvRmGpuDevice *hDevice)
    Closes the GPU device.
    NvRmGpuSyncType
    NvRmGpuSyncType
    Inter-engine synchronization type for GPU jobs.
    Definition: nvrm_gpu.h:586
    NvRmGpuDeviceEventSessionClose
    NvError NvRmGpuDeviceEventSessionClose(NvRmGpuDeviceEventSession *hSession)
    Closes the device event session.
    NvRmGpuDeviceEventSessionRead
    NvError NvRmGpuDeviceEventSessionRead(NvRmGpuDeviceEventSession *hSession, NvRmGpuDeviceEventInfo *pEventInfo, uint32_t timeoutMs)
    Read next device event.
    NvRmGpuDeviceEventInfoRec::timeNs
    uint64_t timeNs
    GPU time (in nanoseconds)
    Definition: nvrm_gpu.h:1739
    NvRmGpuDeviceEventId_AlarmPowerAboveThreshold
    @ NvRmGpuDeviceEventId_AlarmPowerAboveThreshold
    Power above threshold.
    Definition: nvrm_gpu.h:1603
    NvRmGpuLibVersionInfoRec::suffix
    const char * suffix
    Version string suffix (always non-NULL)
    Definition: nvrm_gpu.h:306
    NvRmGpuClockDomainInfoRec::domain
    NvRmGpuClockDomain domain
    Clock domain.
    Definition: nvrm_gpu.h:890
    NvRmGpuDeviceOpenAttrRec::sandboxFriendlyChannels
    bool sandboxFriendlyChannels
    Ignored field.
    Definition: nvrm_gpu.h:639
    NvRmGpuClockGetEntryRec::freqHz
    uint64_t freqHz
    (OUT) Frequency in Hz
    Definition: nvrm_gpu.h:847
    NvRmGpuLibVersionInfoRec::minor
    uint32_t minor
    The library minor version.
    Definition: nvrm_gpu.h:289
    NvRmGpuClockType_Effective
    @ NvRmGpuClockType_Effective
    Effective clock as measured from hardware.
    Definition: nvrm_gpu.h:821
    NvRmGpuClockGetEntry
    struct NvRmGpuClockGetEntryRec NvRmGpuClockGetEntry
    Entry for clock get request.
    NvRmGpuLibDeviceState_Unknown
    @ NvRmGpuLibDeviceState_Unknown
    Device state is not known.
    Definition: nvrm_gpu.h:473
    NvRmGpuClockRangeRec::maxHz
    uint64_t maxHz
    Definition: nvrm_gpu.h:871
    NvRmGpuDeviceThermalAlertSetLimit
    NvError NvRmGpuDeviceThermalAlertSetLimit(NvRmGpuDevice *hDevice, int32_t temperature_mC)
    Sets the thermal alert limit.
    NvRmGpuClockDomain
    NvRmGpuClockDomain
    Clock domains.
    Definition: nvrm_gpu.h:790
    NvRmGpuLibOpenAttrRec::reserved
    uint32_t reserved
    Dummy field for C/C++ ABI compatibility.
    Definition: nvrm_gpu.h:350
    NvRmGpuClockPointRec
    Clock voltage/frequency point.
    Definition: nvrm_gpu.h:878
    NvRmGpuLibDeviceState_InsufficientPrivileges
    @ NvRmGpuLibDeviceState_InsufficientPrivileges
    Device exists, but not enough privileges to access.
    Definition: nvrm_gpu.h:469
    NvRmGpuDeviceCurrent
    NvRmGpuDeviceCurrent
    Electric current sensors.
    Definition: nvrm_gpu.h:1306
    NvRmGpuLibDeviceState
    NvRmGpuLibDeviceState
    Device attachment state.
    Definition: nvrm_gpu.h:463
    NvRmGpuClockRangeRec::minHz
    uint64_t minHz
    Definition: nvrm_gpu.h:870
    NvRmGpuDeviceOpenAttrRec
    Extensible attribute structure for NvRmGpuDeviceOpen()
    Definition: nvrm_gpu.h:613
    NvRmGpuClockGet
    NvError NvRmGpuClockGet(NvRmGpuDevice *hDevice, NvRmGpuClockGetEntry *pClkGetEntries, size_t numEntries)
    Request one or more clock domain frequency state.
    NvRmGpuClockType_Actual
    @ NvRmGpuClockType_Actual
    Clock frequency programmed to the HW (including PLL constraints).
    Definition: nvrm_gpu.h:818
    NvRmGpuClockPoint
    struct NvRmGpuClockPointRec NvRmGpuClockPoint
    Clock voltage/frequency point.
    NvRmGpuClockType
    NvRmGpuClockType
    Request type for clock get.
    Definition: nvrm_gpu.h:806
    NvRmGpuDeviceGetTemperature
    NvError NvRmGpuDeviceGetTemperature(NvRmGpuDevice *hDevice, NvRmGpuDeviceTemperature which, int32_t *pTemperatureMilliCelsius)
    Retrieves the temperature sensor reading.
    NvRmGpuDeviceEventId_AlarmClockArbiterFailed
    @ NvRmGpuDeviceEventId_AlarmClockArbiterFailed
    The clock arbiter has failed.
    Definition: nvrm_gpu.h:1579
    NvRmGpuDeviceCurrent_Bus
    @ NvRmGpuDeviceCurrent_Bus
    Bus current.
    Definition: nvrm_gpu.h:1309
    NvRmGpuClockSet
    NvError NvRmGpuClockSet(NvRmGpuDevice *hDevice, const NvRmGpuClockSetEntry *pClkSetEntries, size_t numEntries, NvRmGpuClockAsyncReqHandle *phReq)
    Requests minimum clocks for one or more clock domains.
    NvRmGpuDevice
    struct NvRmGpuDeviceRec NvRmGpuDevice
    Device handle.
    Definition: nvrm_gpu.h:260
    NvRmGpuClockRange
    struct NvRmGpuClockRangeRec NvRmGpuClockRange
    Frequency range for clock domain.
    NvRmGpuDeviceTemperature_InternalSensor
    @ NvRmGpuDeviceTemperature_InternalSensor
    The internal GPU temperature sensor.
    Definition: nvrm_gpu.h:1451
    NvRmGpuDeviceOpenAttrRec::syncType
    NvRmGpuSyncType syncType
    The default sync type for this device.
    Definition: nvrm_gpu.h:627
    NvError
    NvError
    The NvError enumeration contains ALL return / error codes.
    Definition: nverror.h:32
    NvRmGpuLibVersionInfo
    struct NvRmGpuLibVersionInfoRec NvRmGpuLibVersionInfo
    The version information structure returned by NvRmGpuLibGetVersionInfo().
    NvRmGpuDeviceEventSessionOpen
    NvError NvRmGpuDeviceEventSessionOpen(NvRmGpuDevice *hDevice, const NvRmGpuDeviceEventSessionOpenAttr *attr, NvRmGpuDeviceEventSession **phSession)
    Opens a session to monitor device events.
    NvRmGpuSyncType_Default
    @ NvRmGpuSyncType_Default
    Default sync type.
    Definition: nvrm_gpu.h:595
    NV_ARRAY_SIZE
    #define NV_ARRAY_SIZE(x)
    Macro for determining the size of an array.
    Definition: nvcommon.h:145
    NvRmGpuDeviceGetPower
    NvError NvRmGpuDeviceGetPower(NvRmGpuDevice *hDevice, NvRmGpuDevicePower which, uint64_t *pPowerMicroWatt)
    Retrieves the power sensor reading.
    NvRmGpuLibDeviceListEntry
    struct NvRmGpuLibDeviceListEntryRec NvRmGpuLibDeviceListEntry
    Device list entry.
    NvRmGpuDeviceEventInfoRec::eventId
    NvRmGpuDeviceEventId eventId
    Event type.
    Definition: nvrm_gpu.h:1727
    NvRmGpuDeviceEventSessionOpenAttrRec
    Extensible attribute structure for NvRmGpuDeviceEventSessionOpen().
    Definition: nvrm_gpu.h:1630
    NvRmGpuClockRangeRec
    Frequency range for clock domain.
    Definition: nvrm_gpu.h:868
    NvRmGpuDevicePower_Bus
    @ NvRmGpuDevicePower_Bus
    Power consumed at the regulator.
    Definition: nvrm_gpu.h:1380
    NvRmGpuClockType_Target
    @ NvRmGpuClockType_Target
    Target clock frequency requested by the user.
    Definition: nvrm_gpu.h:812
    NvRmGpuLibGetVersionInfo
    const NvRmGpuLibVersionInfo * NvRmGpuLibGetVersionInfo(void)
    Returns the library version information.
    NvRmGpuDeviceOpenAttr
    struct NvRmGpuDeviceOpenAttrRec NvRmGpuDeviceOpenAttr
    Extensible attribute structure for NvRmGpuDeviceOpen()
    NvRmGpuLibDeviceListEntryRec::name
    const char * name
    Informative device name.
    Definition: nvrm_gpu.h:502
    NvRmGpuDeviceListTemperatureSensors
    NvError NvRmGpuDeviceListTemperatureSensors(NvRmGpuDevice *hDevice, const NvRmGpuDeviceTemperature **pSensors, size_t *pNumSensors)
    Returns the list of available temperature sensors for the device.
    NvRmGpuLibOpenAttr
    struct NvRmGpuLibOpenAttrRec NvRmGpuLibOpenAttr
    Extensible attribute structure for NvRmGpuLibOpen()
    人人超碰97caoporen国产