pub struct GpuCapabilities {
    pub gpus: Vec<GpuDevice>,
    pub primary_compute_gpu: Option<usize>,
    pub total_vram_gb: f64,
    pub cuda_support: bool,
    pub opencl_support: bool,
    pub ai_acceleration_score: f64,
    pub graphics_score: f64,
    pub compute_score: f64,
}Expand description
GPU-specific capabilities
Fields§
§gpus: Vec<GpuDevice>Available GPUs
primary_compute_gpu: Option<usize>Best GPU for compute
total_vram_gb: f64Total VRAM across all GPUs
cuda_support: boolCUDA support available
opencl_support: boolOpenCL support available
ai_acceleration_score: f64AI acceleration score (0-10)
graphics_score: f64Graphics performance score (0-10)
compute_score: f64Compute performance score (0-10)
Implementations§
Source§impl GpuCapabilities
 
impl GpuCapabilities
Sourcepub fn from_gpu_info(gpu_info: &[GpuInfo]) -> Self
 
pub fn from_gpu_info(gpu_info: &[GpuInfo]) -> Self
Create GPU capabilities from GPU info
Trait Implementations§
Source§impl Clone for GpuCapabilities
 
impl Clone for GpuCapabilities
Source§fn clone(&self) -> GpuCapabilities
 
fn clone(&self) -> GpuCapabilities
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
 
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from 
source. Read moreSource§impl Debug for GpuCapabilities
 
impl Debug for GpuCapabilities
Source§impl<'de> Deserialize<'de> for GpuCapabilities
 
impl<'de> Deserialize<'de> for GpuCapabilities
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
    __D: Deserializer<'de>,
 
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
    __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for GpuCapabilities
impl RefUnwindSafe for GpuCapabilities
impl Send for GpuCapabilities
impl Sync for GpuCapabilities
impl Unpin for GpuCapabilities
impl UnwindSafe for GpuCapabilities
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
    T: Clone,
 
impl<T> CloneToUninit for Twhere
    T: Clone,
Source§impl<T> Instrument for T
 
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
 
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
 
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
 
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
 
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
 
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more