NVML API Reference Guide (PDF) - vR384 (older) - Last updated October 31, 2017 - 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: Windows 7-8 64-bit, Windows Server 2012 R2 64bit, Windows Server 2016 64bit
  • Linux: 32-bit and 64-bit

Supported products:

  • Full Support

    • NVIDIA Tesla Line:
      • V100
      • P100, P40, P4
      • M40, M6, M4, M2050, M2070, M2075, M2090
      • K8, K10, K20, K20X, K20Xm, K20c, K20m, K20s, K40c, K40m, K40t, K40s, K40st, K40d, K80
      • S2050, C2050, C2070, C2075
      • X2070, X2090,
    • NVIDIA Quadro Line:
      • P400, P600, P1000, P2000, P3000, P4000, P5000, P6000, GP100
      • M500M, M520, M600M, M620, M1000M, M2000, M2000M, M2200, M3000M, M4000M, M5000, M5000M, M5500M, M6000 24GB, M6000
      • K420, K500M, K510M, K600, K610, K620, K620M, K1100M, K1200, K2000, K2000D, K2100M, K2200, K2200M, K4000, K4100M, K4200M, K5000, K5100M, K5200M, K6000, K6000M
      • 410, 600, 2000, 4000, 5000, 6000, 7000, M2070-Q
    • NVIDIA GRID Line:
      • M60
      • K1, K2, K340, K520
    • NVIDIA GeForce Line: None

    Limited Support

    • NVIDIA Tesla Line: S1070, C1060, M1060 and all other 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:%ProgramW6432%\"NVIDIA Corporation"\NVSMI\on Windows, but will not be added to the path. 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 will be found on the standard library path. For 64-bit Linux, both the 32-bit and 64-bit NVML libraries will be installed.

The NVML API is divided into five categories:

NVML API Reference Guide (PDF) - vR384 (older) - Last updated October 31, 2017 - Send Feedback