Skip to content

v0.13.0

Latest

Choose a tag to compare

@brayniac brayniac released this 31 Aug 19:27
2bbb28e

Changed

  • Breaking: Device::active_vgpus() now returns Vec<VgpuInstance<'_>> instead of raw vGPU instance ids, and drops its explicit lifetime clause (#130, #144)
  • Bindings updated to the NVML API version 13 (CUDA 13) header via nvml-wrapper-sys 0.10.0 (#139)

Added

  • Greatly expanded vGPU API coverage (#130): a VgpuInstance wrapper with methods for UUID, VM id, framebuffer usage, encoder/FBC sessions and stats, license info, metadata, placement id, runtime state size, mdev UUID, guest driver version, ECC and accounting modes, and more; new VgpuType methods (bar1_info(), fb_reservation(), gsp_heap_size()); new vGPU enum and struct wrappers
  • VgpuInstance::new() is public, allowing construction from a raw vGPU instance id (#144)
  • Device::power_mizer_mode() and Device::set_power_mizer_mode() for NVML v580 PowerMizer mode support (#140)
  • GpmSample::from_handle() (unsafe) to reconstruct a GpmSample from its raw handle, with a documented ownership contract (#141, #143)

Fixed

  • VgpuInstance::instance_type() takes &self instead of &'dev self, so the returned VgpuType no longer keeps the instance borrowed for the device's lifetime (#144)

Also released alongside: nvml-wrapper-sys 0.10.0 — bindings regenerated using the NVML 13.0.39 header (CUDA 13, sourced from NVIDIA/go-nvml v0.13.0-1) and bindgen 0.72.1 (#139). Function signatures are preserved; some public constants changed value (e.g. NVML_API_VERSION is now 13). Field IDs 251-273 retain v12 numbering so the wrapper's runtime remapping logic is unaffected.