周玉环 d906a41c2e first commit 2 days ago
..
.travis.gofmt.sh d906a41c2e first commit 2 days ago
.travis.yml d906a41c2e first commit 2 days ago
LICENSE d906a41c2e first commit 2 days ago
Makefile d906a41c2e first commit 2 days ago
NVML_NOTICE d906a41c2e first commit 2 days ago
README.md d906a41c2e first commit 2 days ago
bindings.go d906a41c2e first commit 2 days ago
bindings_nocgo.go d906a41c2e first commit 2 days ago
nvml.h d906a41c2e first commit 2 days ago

README.md

Go Bindings for NVML

NVML or NVIDIA Management Library is a C-based API that can be used for monitoring NVIDIA GPU devices. It's closed source but can be downloaded as part of the GPU Deployment Kit.

The NVML API Reference describe various methods that are available as part of NVML.

The nvml.h file is included in this repository so that we don't depend on the presence of NVML in the build environment.

The bindings.go file is the cgo bridge which calls the NVML functions. The cgo preamble in bindings.go uses dlopen to dynamically load NVML and makes its functions available.