pub struct SyclQueueManager { /* private fields */ }Expand description
SYCL queue manager
Implementations§
Source§impl SyclQueueManager
impl SyclQueueManager
pub fn new(config: SyclQueueConfig) -> Self
Sourcepub fn create_queue(
&mut self,
properties: Option<SyclQueueProperties>,
) -> Result<u32, OneApiError>
pub fn create_queue( &mut self, properties: Option<SyclQueueProperties>, ) -> Result<u32, OneApiError>
Create new queue
Reuses a previously Self::destroy_queued queue from queue_pool
when one is available (its operation queue is cleared and it is
given a fresh ID) instead of always allocating a new one.
Sourcepub fn destroy_queue(&mut self, queue_id: u32) -> Result<(), OneApiError>
pub fn destroy_queue(&mut self, queue_id: u32) -> Result<(), OneApiError>
Destroy queue
Returns the queue to queue_pool for Self::create_queue to
reuse instead of dropping it outright.
Sourcepub fn submit_operation(
&mut self,
queue_id: u32,
operation: SyclOperation,
) -> Result<(), OneApiError>
pub fn submit_operation( &mut self, queue_id: u32, operation: SyclOperation, ) -> Result<(), OneApiError>
Submit operation to queue
Sourcepub fn wait_for_queue(&mut self, queue_id: u32) -> Result<(), OneApiError>
pub fn wait_for_queue(&mut self, queue_id: u32) -> Result<(), OneApiError>
Wait for queue completion
Auto Trait Implementations§
impl !Send for SyclQueueManager
impl !Sync for SyclQueueManager
impl Freeze for SyclQueueManager
impl RefUnwindSafe for SyclQueueManager
impl Unpin for SyclQueueManager
impl UnsafeUnpin for SyclQueueManager
impl UnwindSafe for SyclQueueManager
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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