Documentation ¶
Index ¶
Constants ¶
const (
// AttributeMediaExtensions holds the string representation for the media extension MIG profile attribute.
AttributeMediaExtensions = "me"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Device ¶
type Device interface { nvml.Device GetArchitectureAsString() (string, error) GetBrandAsString() (string, error) GetCudaComputeCapabilityAsString() (string, error) GetMigDevices() ([]MigDevice, error) GetMigProfiles() ([]MigProfile, error) IsMigCapable() (bool, error) IsMigEnabled() (bool, error) VisitMigDevices(func(j int, m MigDevice) error) error VisitMigProfiles(func(p MigProfile) error) error }
Device defines the set of extended functions associated with a device.Device.
type Identifier ¶
type Identifier string
Identifier can be used to refer to a GPU or MIG device. This includes a device index or UUID.
func (Identifier) IsGpuIndex ¶
func (i Identifier) IsGpuIndex() bool
IsGpuIndex checks if an identifier is a full GPU index.
func (Identifier) IsGpuUUID ¶
func (i Identifier) IsGpuUUID() bool
IsGpuUUID checks if an identifier is a GPU UUID. A GPU UUID must be of the form GPU-b1028956-cfa2-0990-bf4a-5da9abb51763.
func (Identifier) IsMigIndex ¶
func (i Identifier) IsMigIndex() bool
IsMigIndex checks if an identifier is a MIG index.
func (Identifier) IsMigUUID ¶
func (i Identifier) IsMigUUID() bool
IsMigUUID checks if an identifier is a MIG UUID. A MIG UUID can be of one of two forms:
- MIG-b1028956-cfa2-0990-bf4a-5da9abb51763
- MIG-GPU-b1028956-cfa2-0990-bf4a-5da9abb51763/3/0
func (Identifier) IsUUID ¶
func (i Identifier) IsUUID() bool
IsUUID checks if an identifier is a UUID.
type Interface ¶
type Interface interface { AssertValidMigProfileFormat(profile string) error GetDevices() ([]Device, error) GetMigDevices() ([]MigDevice, error) GetMigProfiles() ([]MigProfile, error) NewDevice(d nvml.Device) (Device, error) NewDeviceByUUID(uuid string) (Device, error) NewMigDevice(d nvml.Device) (MigDevice, error) NewMigDeviceByUUID(uuid string) (MigDevice, error) NewMigProfile(giProfileID, ciProfileID, ciEngProfileID int, migMemorySizeMB, deviceMemorySizeBytes uint64) (MigProfile, error) ParseMigProfile(profile string) (MigProfile, error) VisitDevices(func(i int, d Device) error) error VisitMigDevices(func(i int, d Device, j int, m MigDevice) error) error VisitMigProfiles(func(p MigProfile) error) error }
Interface provides the API to the 'device' package.
type MigDevice ¶
type MigDevice interface { nvml.Device GetProfile() (MigProfile, error) }
MigDevice defines the set of extended functions associated with a MIG device.
type MigProfile ¶
type MigProfile interface { String() string GetInfo() MigProfileInfo Equals(other MigProfile) bool Matches(profile string) bool }
MigProfile represents a specific MIG profile. Examples include "1g.5gb", "2g.10gb", "1c.2g.10gb", or "1c.1g.5gb+me", etc.
type MigProfileInfo ¶
type MigProfileInfo struct { C int G int GB int Attributes []string GIProfileID int CIProfileID int CIEngProfileID int }
MigProfileInfo holds all info associated with a specific MIG profile.
func (MigProfileInfo) Equals ¶
func (p MigProfileInfo) Equals(other MigProfile) bool
Equals checks if two Profiles are identical or not.
func (MigProfileInfo) GetInfo ¶
func (p MigProfileInfo) GetInfo() MigProfileInfo
GetInfo returns detailed info about a Profile.
func (MigProfileInfo) Matches ¶
func (p MigProfileInfo) Matches(profile string) bool
Matches checks if a MigProfile matches the string passed in.
func (MigProfileInfo) String ¶
func (p MigProfileInfo) String() string
String returns the string representation of a Profile.
type Option ¶
type Option func(*devicelib)
Option defines a function for passing options to the New() call.
func WithSkippedDevices ¶
WithSkippedDevices provides an Option to set devices to be skipped by model name.
func WithVerifySymbols ¶
WithVerifySymbols provides an option to toggle whether to verify select symbols exist in dynamic libraries before calling them.