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

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.