fn init() -> Result<(), GpuError>
Source: gpu/cuda.joule:10
fn init() -> Result<(), GpuError>Source: gpu/cuda.joule:10
fn cuInit(flags: u32) -> i32;Source: gpu/cuda.joule:12
fn list_devices() -> Vec<GpuDevice>Source: gpu/cuda.joule:25
fn cuDeviceGetCount(count: *mut i32) -> i32;Source: gpu/cuda.joule:27
fn cuDeviceGet(device: *mut i32, ordinal: i32) -> i32;Source: gpu/cuda.joule:28
fn cuDeviceGetName(name: *mut i8, len: i32, device: i32) -> i32;Source: gpu/cuda.joule:29
fn cuDeviceTotalMem_v2(bytes: *mut usize, device: i32) -> i32;Source: gpu/cuda.joule:30
fn cuDeviceGetAttribute(pi: *mut i32, attrib: i32, device: i32) -> i32;Source: gpu/cuda.joule:31
fn get_driver_version() -> StringGet CUDA driver version string
Source: gpu/cuda.joule:167
fn cuDriverGetVersion(version: *mut i32) -> i32;Source: gpu/cuda.joule:169
fn create_context(device_id: i32) -> Result<*mut std::ffi::c_void, GpuError>Source: gpu/cuda.joule:184
fn cuCtxCreate_v2(Source: gpu/cuda.joule:186
fn current_device() -> Option<i32>Get current CUDA device
Source: gpu/cuda.joule:207
fn cudaGetDevice(device: *mut i32) -> i32;Source: gpu/cuda.joule:209
fn enable_peer_access(device: i32, peer_device: i32) -> Result<(), GpuError>Source: gpu/cuda.joule:221
fn cudaDeviceEnablePeerAccess(peer_device: i32, flags: u32) -> i32;Source: gpu/cuda.joule:223
fn can_access_peer(device: i32, peer_device: i32) -> boolCheck if peer-to-peer access is possible
Source: gpu/cuda.joule:233
fn cudaDeviceCanAccessPeer(Source: gpu/cuda.joule:235
fn memory_info() -> Result<(usize, usize), GpuError>Source: gpu/cuda.joule:248
fn cudaMemGetInfo(free: *mut usize, total: *mut usize) -> i32;Source: gpu/cuda.joule:250
fn set_device_flags(flags: u32) -> Result<(), GpuError>Set CUDA device flags
Source: gpu/cuda.joule:262
fn cudaSetDeviceFlags(flags: u32) -> i32;Source: gpu/cuda.joule:264
const DEVICE_SCHEDULE_AUTO: u32Source: gpu/cuda.joule:274
const DEVICE_SCHEDULE_SPIN: u32Source: gpu/cuda.joule:275
const DEVICE_SCHEDULE_YIELD: u32Source: gpu/cuda.joule:276
const DEVICE_SCHEDULE_BLOCKING_SYNC: u32Source: gpu/cuda.joule:277
const DEVICE_MAP_HOST: u32Source: gpu/cuda.joule:278
fn init() -> Result<(), GpuError>Initialize NVML
Source: gpu/cuda.joule:289
fn nvmlInit_v2() -> i32;Source: gpu/cuda.joule:291
fn get_power_usage(device_index: u32) -> Option<u32>Get GPU power usage in milliwatts
Source: gpu/cuda.joule:308
fn nvmlDeviceGetHandleByIndex_v2(Source: gpu/cuda.joule:310
fn nvmlDeviceGetPowerUsage(Source: gpu/cuda.joule:314
fn get_temperature(device_index: u32) -> Option<u32>Get GPU temperature in Celsius
Source: gpu/cuda.joule:334
fn nvmlDeviceGetHandleByIndex_v2(Source: gpu/cuda.joule:336
fn nvmlDeviceGetTemperature(Source: gpu/cuda.joule:340
fn get_utilization(device_index: u32) -> Option<(u32, u32)>Get GPU utilization (0-100)
Source: gpu/cuda.joule:361
fn nvmlDeviceGetHandleByIndex_v2(Source: gpu/cuda.joule:363
fn nvmlDeviceGetUtilizationRates(Source: gpu/cuda.joule:367
struct NvmlUtilizationSource: gpu/cuda.joule:374
fn get_clock_speeds(device_index: u32) -> Option<(u32, u32)>Get current GPU clock speeds in MHz
Source: gpu/cuda.joule:393
fn nvmlDeviceGetHandleByIndex_v2(Source: gpu/cuda.joule:395
fn nvmlDeviceGetClockInfo(Source: gpu/cuda.joule:399