contrib/nvidia: export helper binary path and list of Nvidia capabilities

Signed-off-by: Tibor Vass <tibor@docker.com>
This commit is contained in:
Tibor Vass 2019-03-12 14:48:59 -07:00
parent 09da2d867a
commit 7ca2c3d68d

View File

@ -29,7 +29,8 @@ import (
specs "github.com/opencontainers/runtime-spec/specs-go" specs "github.com/opencontainers/runtime-spec/specs-go"
) )
const nvidiaCLI = "nvidia-container-cli" // NvidiaCLI is the path to the Nvidia helper binary
const NvidiaCLI = "nvidia-container-cli"
// Capability specifies capabilities for the gpu inside the container // Capability specifies capabilities for the gpu inside the container
// Detailed explanation of options can be found: // Detailed explanation of options can be found:
@ -51,13 +52,16 @@ const (
Display Capability = "display" Display Capability = "display"
) )
var allCaps = []Capability{ // AllCaps returns the complete list of supported Nvidia capabilties.
func AllCaps() []Capability {
return []Capability{
Compute, Compute,
Compat32, Compat32,
Graphics, Graphics,
Utility, Utility,
Video, Video,
Display, Display,
}
} }
// WithGPUs adds NVIDIA gpu support to a container // WithGPUs adds NVIDIA gpu support to a container
@ -76,7 +80,7 @@ func WithGPUs(opts ...Opts) oci.SpecOpts {
} }
c.OCIHookPath = path c.OCIHookPath = path
} }
nvidiaPath, err := exec.LookPath(nvidiaCLI) nvidiaPath, err := exec.LookPath(NvidiaCLI)
if err != nil { if err != nil {
return err return err
} }
@ -166,7 +170,7 @@ func WithAllDevices(c *config) error {
// WithAllCapabilities adds all capabilities to the container for the gpus // WithAllCapabilities adds all capabilities to the container for the gpus
func WithAllCapabilities(c *config) error { func WithAllCapabilities(c *config) error {
c.Capabilities = allCaps c.Capabilities = AllCaps()
return nil return nil
} }