pub struct PlatformInfo {
pub backend: Backend,
pub device_name: String,
pub compute_units: usize,
pub total_memory: usize,
pub memory_bandwidth: f32,
pub peak_tflops: f32,
pub cache_sizes: Vec<usize>,
pub warp_size: usize,
pub max_threads_per_block: usize,
}Expand description
Platform characteristics for tuning decisions
Fields§
§backend: BackendBackend type
device_name: StringDevice name (e.g., “NVIDIA RTX 4090”, “Apple M3 Max”)
compute_units: usizeNumber of compute units (SMs, CUs, cores)
total_memory: usizeTotal memory in bytes
memory_bandwidth: f32Memory bandwidth in GB/s
peak_tflops: f32Peak compute performance in TFLOPS
cache_sizes: Vec<usize>Cache sizes (L1, L2, L3) in bytes
warp_size: usizeWarp/wavefront size
max_threads_per_block: usizeMaximum threads per block/workgroup
Implementations§
Trait Implementations§
Source§impl Clone for PlatformInfo
impl Clone for PlatformInfo
Source§fn clone(&self) -> PlatformInfo
fn clone(&self) -> PlatformInfo
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 PlatformInfo
impl Debug for PlatformInfo
Source§impl<'de> Deserialize<'de> for PlatformInfo
impl<'de> Deserialize<'de> for PlatformInfo
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 PlatformInfo
impl RefUnwindSafe for PlatformInfo
impl Send for PlatformInfo
impl Sync for PlatformInfo
impl Unpin for PlatformInfo
impl UnsafeUnpin for PlatformInfo
impl UnwindSafe for PlatformInfo
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> ConfigSerializable for Twhere
T: Serialize + for<'de> Deserialize<'de>,
impl<T> ConfigSerializable for Twhere
T: Serialize + for<'de> Deserialize<'de>,
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