Module prelude

Source

Re-exports§

pub use crate::RuntimeArg;
pub use crate::codegen::KernelExpansion;
pub use crate::codegen::KernelIntegrator;
pub use crate::codegen::KernelSettings;
pub use crate::compute::CompiledKernel;
pub use crate::compute::CubeKernel;
pub use crate::compute::KernelBuilder;
pub use crate::compute::KernelDefinition;
pub use crate::compute::KernelLauncher;
pub use crate::compute::KernelTask;
pub use crate::frontend::cmma;
pub use crate::frontend::Array;
pub use crate::frontend::ArrayHandleRef;
pub use crate::frontend::Atomic;
pub use crate::frontend::Float;
pub use crate::frontend::FloatExpand;
pub use crate::frontend::LaunchArg;
pub use crate::frontend::NumericExpand;
pub use crate::frontend::Slice;
pub use crate::frontend::SliceMut;
pub use crate::frontend::Tensor;
pub use crate::frontend::TensorArg;
pub use crate::frontend::plane_all;
pub use crate::frontend::plane_all;
pub use crate::frontend::plane_max;
pub use crate::frontend::plane_max;
pub use crate::frontend::plane_min;
pub use crate::frontend::plane_min;
pub use crate::frontend::plane_prod;
pub use crate::frontend::plane_prod;
pub use crate::frontend::plane_sum;
pub use crate::frontend::plane_sum;
pub use crate::frontend::branch::*;
pub use crate::frontend::synchronization::*;
pub use crate::frontend::*;

Macros§

comment
Insert a literal comment into the kernel source code.
comptime
Mark the contents of this macro as compile time values, turning off all expansion for this code and using it verbatim
comptime_type
Makes the function return a compile time value Useful in a cube trait to have a part of the trait return comptime values
terminate
Terminate the execution of the kernel for the current unit.

Structs§

ComputeClient
The ComputeClient is the entry point to require tasks from the ComputeServer. It should be obtained for a specific device via the Compute struct.
CubeDim
KernelId
Kernel unique identifier.
Scope
The scope is the main operation and variable container that simplify the process of reading inputs, creating local variables and adding new operations.
flex32
A floating point type with relaxed precision, minimum f16, max [f32].
tf32
A 19-bit floating point type implementing the tfloat32 format.

Enums§

CubeCount
Specifieds the number of cubes to be dispatched for a kernel.
ExecutionMode
The kind of execution to be performed.

Traits§

CubeElement
The base element trait for the jit backend.
KernelMetadata
Implement this trait to create a kernel definition.
Runtime
Runtime for the CubeCL.

Attribute Macros§

cube
Mark a cube function, trait or implementation for expansion.
derive_cube_comptime
Attribute macro to define a type that can be used as a kernel comptime argument This derive Debug, Hash, PartialEq, Eq, Clone, Copy

Derive Macros§

CubeLaunch
Derive macro to define a cube type that is launched with a kernel
CubeType
Derive macro to define a cube type that is not launched