Struct cubecl_core::frontend::BF16
source · pub struct BF16 {
pub val: f32,
pub vectorization: u8,
}
Fields§
§val: f32
§vectorization: u8
Trait Implementations§
source§impl Abs for BF16
impl Abs for BF16
fn abs(x: Self) -> Self
fn __expand_abs( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl AddAssign<f32> for BF16
impl AddAssign<f32> for BF16
source§fn add_assign(&mut self, _rhs: f32)
fn add_assign(&mut self, _rhs: f32)
Performs the
+=
operation. Read moresource§impl AddAssign<u32> for BF16
impl AddAssign<u32> for BF16
source§fn add_assign(&mut self, _rhs: u32)
fn add_assign(&mut self, _rhs: u32)
Performs the
+=
operation. Read moresource§impl AddAssign for BF16
impl AddAssign for BF16
source§fn add_assign(&mut self, _rhs: Self)
fn add_assign(&mut self, _rhs: Self)
Performs the
+=
operation. Read moresource§impl Ceil for BF16
impl Ceil for BF16
fn ceil(x: Self) -> Self
fn __expand_ceil( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl Clamp for BF16
impl Clamp for BF16
source§fn clamp(input: Self, min_value: Self, max_value: Self) -> Self
fn clamp(input: Self, min_value: Self, max_value: Self) -> Self
Clamp the input value between the max and min values provided.
fn __expand_clamp( context: &mut CubeContext, input: Self::ExpandType, min_value: Self::ExpandType, max_value: Self::ExpandType, ) -> Self::ExpandType
source§impl ComptimeType for BF16
impl ComptimeType for BF16
source§fn into_expand(self) -> Self::ExpandType
fn into_expand(self) -> Self::ExpandType
Create the expand type from the normal type.
source§impl Cos for BF16
impl Cos for BF16
fn cos(x: Self) -> Self
fn __expand_cos( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl CubePrimitive for BF16
impl CubePrimitive for BF16
fn from_expand_elem(elem: ExpandElement) -> Self::ExpandType
source§impl CubeType for BF16
impl CubeType for BF16
type ExpandType = ExpandElementTyped<BF16>
source§fn init(context: &mut CubeContext, expand: Self::ExpandType) -> Self::ExpandType
fn init(context: &mut CubeContext, expand: Self::ExpandType) -> Self::ExpandType
Wrapper around the init method, necessary to type inference.
source§impl DivAssign<f32> for BF16
impl DivAssign<f32> for BF16
source§fn div_assign(&mut self, _rhs: f32)
fn div_assign(&mut self, _rhs: f32)
Performs the
/=
operation. Read moresource§impl DivAssign<u32> for BF16
impl DivAssign<u32> for BF16
source§fn div_assign(&mut self, _rhs: u32)
fn div_assign(&mut self, _rhs: u32)
Performs the
/=
operation. Read moresource§impl DivAssign for BF16
impl DivAssign for BF16
source§fn div_assign(&mut self, _rhs: Self)
fn div_assign(&mut self, _rhs: Self)
Performs the
/=
operation. Read moresource§impl Erf for BF16
impl Erf for BF16
fn erf(x: Self) -> Self
fn __expand_erf( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl Exp for BF16
impl Exp for BF16
fn exp(x: Self) -> Self
fn __expand_exp( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl ExpandElementBaseInit for BF16
impl ExpandElementBaseInit for BF16
fn init_elem(context: &mut CubeContext, elem: ExpandElement) -> ExpandElement
source§impl Float for BF16
impl Float for BF16
fn new(val: f32) -> Self
fn vectorized(val: f32, vectorization: UInt) -> Self
fn vectorized_empty(vectorization: UInt) -> Self
fn __expand_vectorized_empty( context: &mut CubeContext, vectorization: UInt, ) -> <Self as CubeType>::ExpandType
fn __expand_new( context: &mut CubeContext, val: Self::ExpandType, ) -> <Self as CubeType>::ExpandType
fn __expand_vectorized( context: &mut CubeContext, val: Self::ExpandType, vectorization: UInt, ) -> <Self as CubeType>::ExpandType
source§impl Floor for BF16
impl Floor for BF16
fn floor(x: Self) -> Self
fn __expand_floor( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl From<BF16> for ExpandElement
impl From<BF16> for ExpandElement
source§impl LaunchArgExpand for BF16
impl LaunchArgExpand for BF16
source§fn expand(
builder: &mut KernelBuilder,
vectorization: Vectorization,
) -> ExpandElementTyped<Self>
fn expand( builder: &mut KernelBuilder, vectorization: Vectorization, ) -> ExpandElementTyped<Self>
Register an input variable during compilation that fill the KernelBuilder.
source§fn expand_output(
builder: &mut KernelBuilder,
vectorization: Vectorization,
) -> <Self as CubeType>::ExpandType
fn expand_output( builder: &mut KernelBuilder, vectorization: Vectorization, ) -> <Self as CubeType>::ExpandType
Register an output variable during compilation that fill the KernelBuilder.
source§impl Log for BF16
impl Log for BF16
fn log(x: Self) -> Self
fn __expand_log( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl Log1p for BF16
impl Log1p for BF16
fn log1p(x: Self) -> Self
fn __expand_log1p( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl Max for BF16
impl Max for BF16
fn max(self, _rhs: Self) -> Self
fn __expand_max( context: &mut CubeContext, lhs: ExpandElementTyped<Self>, rhs: ExpandElementTyped<Self>, ) -> ExpandElementTyped<Self>
source§impl Min for BF16
impl Min for BF16
fn min(self, _rhs: Self) -> Self
fn __expand_min( context: &mut CubeContext, lhs: ExpandElementTyped<Self>, rhs: ExpandElementTyped<Self>, ) -> ExpandElementTyped<Self>
source§impl MulAssign<f32> for BF16
impl MulAssign<f32> for BF16
source§fn mul_assign(&mut self, _rhs: f32)
fn mul_assign(&mut self, _rhs: f32)
Performs the
*=
operation. Read moresource§impl MulAssign<u32> for BF16
impl MulAssign<u32> for BF16
source§fn mul_assign(&mut self, _rhs: u32)
fn mul_assign(&mut self, _rhs: u32)
Performs the
*=
operation. Read moresource§impl MulAssign for BF16
impl MulAssign for BF16
source§fn mul_assign(&mut self, _rhs: Self)
fn mul_assign(&mut self, _rhs: Self)
Performs the
*=
operation. Read moresource§impl Numeric for BF16
impl Numeric for BF16
type Primitive = bf16
fn from_vec<const D: usize>(_vec: [u32; D]) -> Self
fn __expand_from_int( _context: &mut CubeContext, val: ExpandElementTyped<I64>, ) -> <Self as CubeType>::ExpandType
fn __expand_from_vec<const D: usize>( context: &mut CubeContext, vec: [ExpandElementTyped<UInt>; D], ) -> <Self as CubeType>::ExpandType
source§impl PartialOrd<f32> for BF16
impl PartialOrd<f32> for BF16
source§impl PartialOrd<u32> for BF16
impl PartialOrd<u32> for BF16
source§impl PartialOrd for BF16
impl PartialOrd for BF16
source§impl Powf for BF16
impl Powf for BF16
fn powf(self, _rhs: Self) -> Self
fn __expand_powf( context: &mut CubeContext, lhs: ExpandElementTyped<Self>, rhs: ExpandElementTyped<Self>, ) -> ExpandElementTyped<Self>
source§impl Recip for BF16
impl Recip for BF16
fn recip(x: Self) -> Self
fn __expand_recip( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl Remainder for BF16
impl Remainder for BF16
fn rem(self, _rhs: Self) -> Self
fn __expand_rem( context: &mut CubeContext, lhs: ExpandElementTyped<Self>, rhs: ExpandElementTyped<Self>, ) -> ExpandElementTyped<Self>
source§impl Sin for BF16
impl Sin for BF16
fn sin(x: Self) -> Self
fn __expand_sin( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl Sqrt for BF16
impl Sqrt for BF16
fn sqrt(x: Self) -> Self
fn __expand_sqrt( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl SubAssign<f32> for BF16
impl SubAssign<f32> for BF16
source§fn sub_assign(&mut self, _rhs: f32)
fn sub_assign(&mut self, _rhs: f32)
Performs the
-=
operation. Read moresource§impl SubAssign<u32> for BF16
impl SubAssign<u32> for BF16
source§fn sub_assign(&mut self, _rhs: u32)
fn sub_assign(&mut self, _rhs: u32)
Performs the
-=
operation. Read moresource§impl SubAssign for BF16
impl SubAssign for BF16
source§fn sub_assign(&mut self, _rhs: Self)
fn sub_assign(&mut self, _rhs: Self)
Performs the
-=
operation. Read moresource§impl Tanh for BF16
impl Tanh for BF16
fn tanh(x: Self) -> Self
fn __expand_tanh( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl Vectorized for BF16
impl Vectorized for BF16
impl Copy for BF16
impl Eq for BF16
Auto Trait Implementations§
impl Freeze for BF16
impl RefUnwindSafe for BF16
impl Send for BF16
impl Sync for BF16
impl Unpin for BF16
impl UnwindSafe for BF16
Blanket Implementations§
source§impl<P> BitCast for Pwhere
P: CubePrimitive,
impl<P> BitCast for Pwhere
P: CubePrimitive,
source§fn bitcast_from<From: CubePrimitive>(value: From) -> Self
fn bitcast_from<From: CubePrimitive>(value: From) -> Self
Reinterpret the bits of another primitive as this primitive without conversion.
fn __expand_bitcast_from<From>(
context: &mut CubeContext,
value: From,
) -> <Self as CubeType>::ExpandTypewhere
From: Into<ExpandElement>,
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
source§impl<P> Cast for Pwhere
P: CubePrimitive,
impl<P> Cast for Pwhere
P: CubePrimitive,
fn cast_from<From>(_value: From) -> Pwhere
From: CubePrimitive,
fn __expand_cast_from<From>(
context: &mut CubeContext,
value: From,
) -> <Self as CubeType>::ExpandTypewhere
From: Into<ExpandElement>,
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<T> LaunchArg for Twhere
T: Numeric,
impl<T> LaunchArg for Twhere
T: Numeric,
§type RuntimeArg<'a, R: Runtime> = ScalarArg<T>
type RuntimeArg<'a, R: Runtime> = ScalarArg<T>
The runtime argument for the kernel.