Mila 0.13.48
Deep Neural Network Library
Loading...
Searching...
No Matches
Mila::Dnn::Compute::Cuda::CublasLtMatMulPlan< TComputePrecision > Struct Template Referenceexport

RAII wrapper owning cuBLASLt descriptors and the selected heuristic algorithm. More...

Public Member Functions

 CublasLtMatMulPlan ()=default
 CublasLtMatMulPlan (const CublasLtMatMulPlan &)=delete
 CublasLtMatMulPlan (CublasLtMatMulPlan &&other) noexcept
 ~CublasLtMatMulPlan ()
bool isValid () const
CublasLtMatMulPlanoperator= (const CublasLtMatMulPlan &)=delete
CublasLtMatMulPlanoperator= (CublasLtMatMulPlan &&other) noexcept

Public Attributes

cublasLtMatmulAlgo_t algorithm {}
bool has_algorithm { false }
bool has_bias_epilogue { false }
cublasLtMatrixLayout_t layoutA { nullptr }
cublasLtMatrixLayout_t layoutB { nullptr }
cublasLtMatrixLayout_t layoutC { nullptr }
cublasLtMatmulDesc_t matmul_desc { nullptr }
cublasLtMatmulPreference_t preference { nullptr }

Detailed Description

template<typename TComputePrecision>
struct Mila::Dnn::Compute::Cuda::CublasLtMatMulPlan< TComputePrecision >

RAII wrapper owning cuBLASLt descriptors and the selected heuristic algorithm.

Owns:

  • matmul_desc: operation descriptor (transpose flags, epilogue, bias pointer)
  • layoutA, layoutB, layoutC: matrix memory layouts
  • preference: algorithm preference used during heuristic search
  • algorithm: selected algorithm (present when has_algorithm is true)

Non-copyable; move-only.

Constructor & Destructor Documentation

◆ CublasLtMatMulPlan() [1/3]

template<typename TComputePrecision>
Mila::Dnn::Compute::Cuda::CublasLtMatMulPlan< TComputePrecision >::CublasLtMatMulPlan ( )
exportdefault
Here is the caller graph for this function:

◆ ~CublasLtMatMulPlan()

template<typename TComputePrecision>
Mila::Dnn::Compute::Cuda::CublasLtMatMulPlan< TComputePrecision >::~CublasLtMatMulPlan ( )
inlineexport

◆ CublasLtMatMulPlan() [2/3]

template<typename TComputePrecision>
Mila::Dnn::Compute::Cuda::CublasLtMatMulPlan< TComputePrecision >::CublasLtMatMulPlan ( const CublasLtMatMulPlan< TComputePrecision > & )
exportdelete
Here is the call graph for this function:

◆ CublasLtMatMulPlan() [3/3]

template<typename TComputePrecision>
Mila::Dnn::Compute::Cuda::CublasLtMatMulPlan< TComputePrecision >::CublasLtMatMulPlan ( CublasLtMatMulPlan< TComputePrecision > && other)
inlineexportnoexcept
Here is the call graph for this function:

Member Function Documentation

◆ isValid()

template<typename TComputePrecision>
bool Mila::Dnn::Compute::Cuda::CublasLtMatMulPlan< TComputePrecision >::isValid ( ) const
inlineexport
Here is the caller graph for this function:

◆ operator=() [1/2]

template<typename TComputePrecision>
CublasLtMatMulPlan & Mila::Dnn::Compute::Cuda::CublasLtMatMulPlan< TComputePrecision >::operator= ( const CublasLtMatMulPlan< TComputePrecision > & )
exportdelete
Here is the call graph for this function:

◆ operator=() [2/2]

template<typename TComputePrecision>
CublasLtMatMulPlan & Mila::Dnn::Compute::Cuda::CublasLtMatMulPlan< TComputePrecision >::operator= ( CublasLtMatMulPlan< TComputePrecision > && other)
inlineexportnoexcept
Here is the call graph for this function:

The documentation for this struct was generated from the following file:
  • /__w/Mila/Mila/Mila/Src/Dnn/Compute/Devices/Cuda/Operations/Common/CublasLtPlan.ixx