Template Function icrar::cuda::multiply(cublasHandle_t, const device_matrix<T>&, const device_vector<T>&, device_vector<T>&, MatrixOp, MatrixOp)

Function Documentation

template<typename T>
__host__ void icrar::cuda::multiply(cublasHandle_t handle, const device_matrix<T> &a, const device_vector<T> &b, device_vector<T> &c, MatrixOp transa = MatrixOp::normal, MatrixOp transb = MatrixOp::normal)

Performs matrix-vector multiplication where C = opA(A) * opB(B). The transpose and hermetian of A and B can be used instead.

Template Parameters:

T – scalar type

Parameters:
  • handle – cublas handle

  • a – A matrix in C = opA(A) * opB(B)

  • b – B matrix in C = opA(A) * opB(B)

  • c – C matrix in C = opA(A) * opB(B)

  • opA – A matrix operation in C = opA(A) * opB(B)

  • opB – B matrix operation in C = opA(A) * opB(B)