Versions in this module Expand all Collapse all v0 v0.1.0 Jun 6, 2019 Changes in this version + type Allocator struct + GPUs []*Device + func NewAllocator(policy Policy) (*Allocator, error) + func NewBestEffortAllocator() (*Allocator, error) + func NewSimpleAllocator() (*Allocator, error) + func (a *Allocator) Allocate(num int) []*Device + func (a *Allocator) AllocateSpecific(devices ...*Device) error + func (a *Allocator) Free(devices ...*Device) + type Device struct + Index int + Links map[int][]P2PLink + func (d *Device) Details() string + func (d *Device) String() string + type DeviceSet map[string]*Device + func NewDeviceSet() DeviceSet + func (ds DeviceSet) Contains(device *Device) bool + func (ds DeviceSet) Delete(devices ...*Device) + func (ds DeviceSet) Insert(devices ...*Device) + func (ds DeviceSet) SortedSlice() []*Device + type GPUType int + const GPUTypePascal + const GPUTypeVolta + type P2PLink struct + GPU *Device + Type nvml.P2PLinkType + type Policy interface + Allocate func(devices []*Device, size int) []*Device + func NewBestEffortPolicy() Policy + func NewSimplePolicy() Policy + func NewStaticDGX1Policy(gpuType GPUType) Policy + func NewStaticDGX2Policy() Policy