Template Function Pennylane::LightningGPU::Util::asum_CUDA_device

Function Documentation

template<class T = double, class DevTypeID = int>
inline void Pennylane::LightningGPU::Util::asum_CUDA_device(const T *A, const int n, DevTypeID dev_id, cudaStream_t stream_id, const CublasCaller &cublas, T *res)

cuBLAS backed sum of the absolute value of a vector for GPU data.

Template Parameters
  • T – Float data-type. Accepts float and double

  • DevTypeID – Integer type of device id.

Parameters
  • A – Device data pointer of vector A.

  • n – Length of the vector.

  • 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.

  • res – Device data pointer to store the result.