Documentation
¶
Index ¶
- func GetGPUBoardInfo(processor ProcessorHandle) (BoardInfo, Status)
- func GetGPUVRAM(processor ProcessorHandle) (VRAM, Status)
- func GetProcessorHandles(socket SocketHandle) ([]ProcessorHandle, Status)
- func GetProcessorType(processor ProcessorHandle) (ProcessorType, Status)
- func GetSocketHandles() ([]SocketHandle, Status)
- type BoardInfo
- type ProcessorHandle
- type ProcessorType
- type SocketHandle
- type Status
- func GetGPUBDFID(processor ProcessorHandle) (uint64, Status)
- func GetGPUID(processor ProcessorHandle) (uint32, Status)
- func GetGPUUUID(processor ProcessorHandle) (string, Status)
- func GetSocketName(socketHandle SocketHandle, maxLen int) (string, Status)
- func Init() (Status, error)
- func Shutdown() Status
- type StatusCode
- type VRAM
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetGPUBoardInfo ¶
func GetGPUBoardInfo(processor ProcessorHandle) (BoardInfo, Status)
GetGPUBoardInfo retrieves the board information for a given GPU processor handle.
func GetGPUVRAM ¶
func GetGPUVRAM(processor ProcessorHandle) (VRAM, Status)
GetGPUVRAM retrieves the GPU VRAM stats for a given processor handle.
func GetProcessorHandles ¶
func GetProcessorHandles(socket SocketHandle) ([]ProcessorHandle, Status)
GetProcessorHandles retrieves all processor handles for a given socket.
func GetProcessorType ¶
func GetProcessorType(processor ProcessorHandle) (ProcessorType, Status)
GetProcessorType retrieves the type of a given processor.
func GetSocketHandles ¶
func GetSocketHandles() ([]SocketHandle, Status)
GetSocketHandles returns the socket handles of the GPUs.
Types ¶
type BoardInfo ¶
type BoardInfo struct { ModelNumber string ProductSerial string FruID string ProductName string ManufacturerName string }
BoardInfo is a Go representation of the C amdsmi_board_info_t struct.
type ProcessorHandle ¶
type ProcessorHandle struct {
// contains filtered or unexported fields
}
ProcessorHandle is a Go type that encapsulates the C amdsmi_processor_handle (void*).
type ProcessorType ¶
type ProcessorType C.processor_type_t
ProcessorType is a Go type to represent processor_type_t from C. TODO: Use a Go type instead of C type.
type SocketHandle ¶
type SocketHandle struct {
// contains filtered or unexported fields
}
SocketHandle is a Go type that encapsulates the C amdsmi_socket_handle (void*).
type Status ¶
type Status struct { Code StatusCode Message string }
Status a wrapper around StatusCode and a message
func GetGPUBDFID ¶
func GetGPUBDFID(processor ProcessorHandle) (uint64, Status)
GetGPUBDFID retrieves the GPU BDF ID for a given processor handle.
func GetGPUID ¶
func GetGPUID(processor ProcessorHandle) (uint32, Status)
GetGPUID retrieves the GPU ID for a given processor handle.
func GetGPUUUID ¶
func GetGPUUUID(processor ProcessorHandle) (string, Status)
GetGPUUUID retrieves the GPU UUID for a given processor handle.
func GetSocketName ¶
func GetSocketName(socketHandle SocketHandle, maxLen int) (string, Status)
GetSocketName retrieves the socket name for a given socket handle.
type StatusCode ¶
type StatusCode uint32
StatusCode is a Go type to represent amdsmi_status_t from C.
const ( StatusSuccess StatusCode = 0 // AMDSMI_STATUS_SUCCESS StatusInval StatusCode = 1 // AMDSMI_STATUS_INVAL StatusNotSupported StatusCode = 2 // AMDSMI_STATUS_NOT_SUPPORTED StatusNotYetImplemented StatusCode = 3 // AMDSMI_STATUS_NOT_YET_IMPLEMENTED StatusFailLoadModule StatusCode = 4 // AMDSMI_STATUS_FAIL_LOAD_MODULE StatusFailLoadSymbol StatusCode = 5 // AMDSMI_STATUS_FAIL_LOAD_SYMBOL StatusDRMError StatusCode = 6 // AMDSMI_STATUS_DRM_ERROR StatusAPIFailed StatusCode = 7 // AMDSMI_STATUS_API_FAILED StatusTimeout StatusCode = 8 // AMDSMI_STATUS_TIMEOUT StatusRetry StatusCode = 9 // AMDSMI_STATUS_RETRY StatusNoPerm StatusCode = 10 // AMDSMI_STATUS_NO_PERM StatusInterrupt StatusCode = 11 // AMDSMI_STATUS_INTERRUPT StatusIO StatusCode = 12 // AMDSMI_STATUS_IO StatusAddressFault StatusCode = 13 // AMDSMI_STATUS_ADDRESS_FAULT StatusFileError StatusCode = 14 // AMDSMI_STATUS_FILE_ERROR StatusOutOfResources StatusCode = 15 // AMDSMI_STATUS_OUT_OF_RESOURCES StatusInternalException StatusCode = 16 // AMDSMI_STATUS_INTERNAL_EXCEPTION StatusInputOutOfBounds StatusCode = 17 // AMDSMI_STATUS_INPUT_OUT_OF_BOUNDS StatusInitError StatusCode = 18 // AMDSMI_STATUS_INIT_ERROR StatusRefcountOverflow StatusCode = 19 // AMDSMI_STATUS_REFCOUNT_OVERFLOW StatusBusy StatusCode = 30 // AMDSMI_STATUS_BUSY StatusNotFound StatusCode = 31 // AMDSMI_STATUS_NOT_FOUND StatusNotInit StatusCode = 32 // AMDSMI_STATUS_NOT_INIT StatusNoSlot StatusCode = 33 // AMDSMI_STATUS_NO_SLOT StatusDriverNotLoaded StatusCode = 34 // AMDSMI_STATUS_DRIVER_NOT_LOADED StatusNoData StatusCode = 40 // AMDSMI_STATUS_NO_DATA StatusInsufficientSize StatusCode = 41 // AMDSMI_STATUS_INSUFFICIENT_SIZE StatusUnexpectedSize StatusCode = 42 // AMDSMI_STATUS_UNEXPECTED_SIZE StatusUnexpectedData StatusCode = 43 // AMDSMI_STATUS_UNEXPECTED_DATA StatusMapError StatusCode = 0xFFFFFFFE // AMDSMI_STATUS_MAP_ERROR StatusUnknownError StatusCode = 0xFFFFFFFF // AMDSMI_STATUS_UNKNOWN_ERROR )
func (StatusCode) String ¶
func (code StatusCode) String() string
String returns the string representation of the StatusCode