NVML API Reference Guide (PDF) - vR550 (older) - Last updated March 12, 2024 - Send Feedback

1. NVML API Reference

The NVIDIA Management Library (NVML) is a C-based programmatic interface for monitoring and managing various states within NVIDIA Tesla™ GPUs. It is intended to be a platform for building 3rd party applications, and is also the underlying library for the NVIDIA-supported nvidia-smi tool. NVML is thread-safe so it is safe to make simultaneous NVML calls from multiple threads.

API Documentation

Supported OS platforms:

  • Windows 64-bit: Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows 10
  • Linux: 64-bit

Supported products:

  • Full Support

    • NVIDIA Tesla Line:
      • A100, A40, A30, A16, A10
      • H100
      • T4
      • V100
      • P100, P40, P4, P6
      • M60, M40, M6, M4
      • K80, K520
    • NVIDIA Quadro Line:
      • RTX 8000, RTX 6000, RTX 5000, RTX 4000, RTX 3000
      • GV100, GP100, P6000, P5200, P5000, P4000, P2200, P2000, P1000, P620, P600, P400
      • M6000 24GB, M6000, M5000, M4000, M2000
      • K6000, K5200, K5000, K4000, K4200, K2200, K2000, K2000D, K1200, K620, K600, K420, 410
    • NVIDIA GeForce Line:
      • none
  • Limited Support
    • NVIDIA Tesla Line: All other current and previous generation Tesla-branded parts
    • NVIDIA Quadro Line: All other current and previous generation Quadro-branded parts
    • NVIDIA GeForce Line: All current and previous generation GeForce-branded parts
The NVML library can be found at the following locations on Windows
  • Standard driver install: %ProgramW6432%\"NVIDIA Corporation"\NVSMI\
  • DCH driver install: \Windows\System32

Note that these libraries will not be added to the path on Windows. To dynamically link to NVML, add this path to the PATH environmental variable. To dynamically load NVML, call LoadLibrary with this path.

On Linux the NVML library is named "libnvidia-ml.so" and can be found on the standard library path. To link against the NVML library add the -lnvidia-ml flag to your linker command.

The NVML API is divided into five categories:

NVML API Reference Guide (PDF) - vR550 (older) - Last updated March 12, 2024 - Send Feedback