Template Function Pennylane::LightningGPU::Util::GEMM_CUDA_device

Function Documentation

template<class T = cuDoubleComplex, class DevTypeID = int>
inline void Pennylane::LightningGPU::Util::GEMM_CUDA_device(T *A, T *B, T *C, const int m, const int k, const int n, DevTypeID dev_id, cudaStream_t stream_id, const CublasCaller &cublas)

cuBLAS backed matrix-matrix multiply for GPU data.

Template Parameters

T – Complex data-type. Accepts cuFloatComplex and cuDoubleComplex

Parameters
  • A – Device data pointer of matrix A.

  • B – Device data pointer of matrix B.

  • C – Device data pointer of matrix C.

  • m – Row size of the matrix A.

  • n – Column size of the matrix B.

  • k – Column size of the matrix A and row size of the matrix B.

  • dev_id – the device on which the function should be executed.

  • stream_id – the CUDA stream on which the operation should be executed.

  • cublas – the CublasCaller object that manages the cuBLAS handle.