123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- // +build !cgo
- package gonvml
- import (
- "errors"
- "time"
- )
- var errNoCgo = errors.New("this binary is built without CGO, NVML is disabled")
- // Initialize initializes NVML.
- // Call this before calling any other methods.
- func Initialize() error {
- return errNoCgo
- }
- // Shutdown shuts down NVML.
- // Call this once NVML is no longer being used.
- func Shutdown() error {
- return errNoCgo
- }
- // SystemDriverVersion returns the the driver version on the system.
- func SystemDriverVersion() (string, error) {
- return "", errNoCgo
- }
- // DeviceCount returns the number of nvidia devices on the system.
- func DeviceCount() (uint, error) {
- return 0, errNoCgo
- }
- // Device is the handle for the device.
- // This handle is obtained by calling DeviceHandleByIndex().
- type Device struct {
- }
- // DeviceHandleByIndex returns the device handle for a particular index.
- // The indices range from 0 to DeviceCount()-1. The order in which NVML
- // enumerates devices has no guarantees of consistency between reboots.
- func DeviceHandleByIndex(idx uint) (Device, error) {
- return Device{}, errNoCgo
- }
- // MinorNumber returns the minor number for the device.
- // The minor number for the device is such that the Nvidia device node
- // file for each GPU will have the form /dev/nvidia[minor number].
- func (d Device) MinorNumber() (uint, error) {
- return 0, errNoCgo
- }
- // UUID returns the globally unique immutable UUID associated with this device.
- func (d Device) UUID() (string, error) {
- return "", errNoCgo
- }
- // Name returns the product name of the device.
- func (d Device) Name() (string, error) {
- return "", errNoCgo
- }
- // MemoryInfo returns the total and used memory (in bytes) of the device.
- func (d Device) MemoryInfo() (uint64, uint64, error) {
- return 0, 0, errNoCgo
- }
- // UtilizationRates returns the percent of time over the past sample period during which:
- // utilization.gpu: one or more kernels were executing on the GPU.
- // utilizatoin.memory: global (device) memory was being read or written.
- func (d Device) UtilizationRates() (uint, uint, error) {
- return 0, 0, errNoCgo
- }
- // PowerUsage returns the power usage for this GPU and its associated circuitry
- // in milliwatts. The reading is accurate to within +/- 5% of current power draw.
- func (d Device) PowerUsage() (uint, error) {
- return 0, errNoCgo
- }
- // AveragePowerUsage returns the power usage for this GPU and its associated circuitry
- // in milliwatts averaged over the samples collected in the last `since` duration.
- func (d Device) AveragePowerUsage(since time.Duration) (uint, error) {
- return 0, errNoCgo
- }
- // AverageGPUUtilization returns the utilization.gpu metric (percent of time
- // one of more kernels were executing on the GPU) averaged over the samples
- // collected in the last `since` duration.
- func (d Device) AverageGPUUtilization(since time.Duration) (uint, error) {
- return 0, errNoCgo
- }
- // Temperature returns the temperature for this GPU in Celsius.
- func (d Device) Temperature() (uint, error) {
- return 0, errNoCgo
- }
- // FanSpeed returns the temperature for this GPU in the percentage of its full
- // speed, with 100 being the maximum.
- func (d Device) FanSpeed() (uint, error) {
- return 0, errNoCgo
- }
- // EncoderUtilization returns the percent of time over the last sample period during which the GPU video encoder was being used.
- // The sampling period is variable and is returned in the second return argument in microseconds.
- func (d Device) EncoderUtilization() (uint, uint, error) {
- return 0, 0, errNoCgo
- }
- // DecoderUtilization returns the percent of time over the last sample period during which the GPU video decoder was being used.
- // The sampling period is variable and is returned in the second return argument in microseconds.
- func (d Device) DecoderUtilization() (uint, uint, error) {
- return 0, 0, errNoCgo
- }
|