CubeCountSelection

Enum CubeCountSelection 

Source
pub enum CubeCountSelection {
    Exact(CubeCount),
    Approx(CubeCount, u32),
}
Expand description

Defines how to select cube count based on the number of cubes required.

Variants§

§

Exact(CubeCount)

If the number of cubes is the same as required.

§

Approx(CubeCount, u32)

If the number of cubes isn’t the same as required.

This can happened based on hardware limit, requirering the kernel to perform OOB checks.

Implementations§

Source§

impl CubeCountSelection

Source

pub fn new<R: Runtime>(client: &ComputeClient<R>, num_cubes: u32) -> Self

Creates a CubeCount while respecting the hardware limits.

Source

pub fn has_idle(&self) -> bool

If some cubes will be idle.

Source

pub fn cube_count(self) -> CubeCount

Converts into CubeCount.

Trait Implementations§

Source§

impl From<CubeCountSelection> for CubeCount

Source§

fn from(value: CubeCountSelection) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more