Module prelude

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::KernelBuilder;
pub use crate::compute::KernelLauncher;
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§

Binding
CompiledKernel
A kernel, compiled in the target language
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
CubeTaskKernel
Generic CubeTask for compiling kernels
DebugInformation
Extra debugging information about the compiled kernel.
KernelDefinition
KernelId
Kernel unique identifier.
KernelOptions
Options for a specific kernel compilation
KernelTask
Wraps a kernel to allow it be compiled.
ScalarBinding
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.
FastMath
Unchecked optimizations for float operations. May cause precision differences, or undefined behaviour if the relevant conditions are not followed.
LaunchError
Error that can happen when calling [ComputeServer::execute];
Location
StorageType
Physical type containing one or more elements
Visibility

Traits§

CubeElement
The base element trait for the jit backend.
CubeKernel
Kernel that can be defined
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