pub struct CommandQueueGroupTable { /* private fields */ }Expand description
A queried command-queue-group property table for one device.
Intel GPUs expose a primary compute+copy group (ordinal 0) and, on discrete parts, dedicated copy-only “link” engines. Selecting the right ordinal lets copies overlap compute on a separate engine.
Implementations§
Source§impl CommandQueueGroupTable
impl CommandQueueGroupTable
Sourcepub fn new(groups: Vec<CommandQueueGroupInfo>) -> Self
pub fn new(groups: Vec<CommandQueueGroupInfo>) -> Self
Build a table from queue-group records.
Sourcepub fn groups(&self) -> &[CommandQueueGroupInfo]
pub fn groups(&self) -> &[CommandQueueGroupInfo]
All queue groups, in driver-reported order.
Sourcepub fn select_compute_ordinal(&self) -> LevelZeroResult<u32>
pub fn select_compute_ordinal(&self) -> LevelZeroResult<u32>
Select an ordinal that can run compute kernels (lowest ordinal first).
Sourcepub fn select_copy_ordinal(&self) -> LevelZeroResult<u32>
pub fn select_copy_ordinal(&self) -> LevelZeroResult<u32>
Select an ordinal for asynchronous copies.
Prefers a copy-only group (so it does not contend with compute); falls back to any copy-capable group. This is the basis for async copy queues discovered separately from compute queues.
Sourcepub fn has_dedicated_copy_engine(&self) -> bool
pub fn has_dedicated_copy_engine(&self) -> bool
true when a dedicated copy-only engine exists (enabling overlap).
Trait Implementations§
Source§impl Clone for CommandQueueGroupTable
impl Clone for CommandQueueGroupTable
Source§fn clone(&self) -> CommandQueueGroupTable
fn clone(&self) -> CommandQueueGroupTable
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 CommandQueueGroupTable
impl Debug for CommandQueueGroupTable
Source§impl Default for CommandQueueGroupTable
impl Default for CommandQueueGroupTable
Source§fn default() -> CommandQueueGroupTable
fn default() -> CommandQueueGroupTable
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for CommandQueueGroupTable
impl RefUnwindSafe for CommandQueueGroupTable
impl Send for CommandQueueGroupTable
impl Sync for CommandQueueGroupTable
impl Unpin for CommandQueueGroupTable
impl UnsafeUnpin for CommandQueueGroupTable
impl UnwindSafe for CommandQueueGroupTable
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