pub struct GpuCapabilities {
pub has_compute: bool,
pub has_texture_float: bool,
pub max_workgroup_size: u32,
pub max_buffer_size: u64,
}Expand description
GPU feature capabilities descriptor.
Use GpuCapabilities::default for native targets and
GpuCapabilities::webgpu_conservative when targeting WebGPU / WASM.
Fields§
§has_compute: boolTrue when compute shaders are supported.
has_texture_float: boolTrue when texture_float / float32-filterable is available.
max_workgroup_size: u32Maximum total invocations per workgroup (product of x * y * z sizes).
max_buffer_size: u64Maximum size of a single buffer in bytes.
Implementations§
Source§impl GpuCapabilities
impl GpuCapabilities
Sourcepub fn webgpu_conservative() -> Self
pub fn webgpu_conservative() -> Self
Conservative capabilities for a WebGPU (WASM) context.
Buffer size is limited to 128 MiB as mandated by the WebGPU specification minimum.
Sourcepub fn validate_buffer_size(&self, size: u64) -> bool
pub fn validate_buffer_size(&self, size: u64) -> bool
Returns true when size bytes fit within the maximum buffer limit.
Sourcepub fn validate_workgroup(&self, size: u32) -> bool
pub fn validate_workgroup(&self, size: u32) -> bool
Returns true when size invocations fit within the workgroup limit.
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 Default for GpuCapabilities
impl Default for GpuCapabilities
Source§impl PartialEq for GpuCapabilities
impl PartialEq for GpuCapabilities
impl StructuralPartialEq for GpuCapabilities
Auto Trait Implementations§
impl Freeze for GpuCapabilities
impl RefUnwindSafe for GpuCapabilities
impl Send for GpuCapabilities
impl Sync for GpuCapabilities
impl Unpin for GpuCapabilities
impl UnsafeUnpin 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