in ecs-init/gpu/nvidia_gpu_manager.go [71:101]
func (n *NvidiaGPUManager) Setup() error {
seelog.Info(nvidiaEULAAgreementInfo)
err := n.DetectGPUDevices()
if err != nil {
if err == ErrNoGPUDeviceFound {
return nil
}
return errors.Wrapf(err, "setup failed")
}
err = n.Initialize()
if err != nil {
return errors.Wrapf(err, "setup failed")
}
defer n.Shutdown()
version, err := n.GetDriverVersion()
if err != nil {
return errors.Wrapf(err, "setup failed")
}
n.DriverVersion = version
gpuIDs, err := n.GetGPUDeviceIDs()
if err != nil {
return errors.Wrapf(err, "setup failed")
}
n.GPUIDs = gpuIDs
err = n.SaveGPUState()
if err != nil {
return errors.Wrapf(err, "setup failed")
}
return nil
}