pub struct HalInstanceProperties {
pub sync_mode: SyncMode,
pub pipeline_cache: bool,
pub kernel_lang: KernelTarget,
pub easily_update_bind_groups: bool,
pub semaphore_signal: bool,
pub map_buffers: bool,
pub is_unified_memory: bool,
pub map_buffer_while_gpu_use: bool,
pub upload_download_buffers: bool,
}Fields§
§sync_mode: SyncModeWhat synchronization requirements the backend has
pipeline_cache: boolWhether the backend supports pipeline caches
kernel_lang: KernelTargetWhat kernel langauge the backend takes
easily_update_bind_groups: boolWhether the backend supports bind groups that are updated while commands are already recorded. This makes bind groups far cheaper to use
semaphore_signal: boolWhether the backend supports CPU->GPU synchronization using CPU-side semaphore signalling.
map_buffers: boolWhether the backend supports directly mapping host memory on the CPU instead of just reads/writes. This is likely false only on some wgpu backends such as WebGPU itself. Currently it is true everywhere.
is_unified_memory: boolWhether the system has unified memory, which provides opportunities for optimization, particularly on apple, mobile, or other devices with integrated GPUs
map_buffer_while_gpu_use: boolWhether you can map buffers while they are in use on the GPU(even if the slices don’t overlap)
upload_download_buffers: boolWhether it supports dual upload-download buffers
Trait Implementations§
Source§impl Clone for HalInstanceProperties
impl Clone for HalInstanceProperties
Source§fn clone(&self) -> HalInstanceProperties
fn clone(&self) -> HalInstanceProperties
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more