|
| Blas (cuda::device_t device=common::Device(common::EDeviceSelectionPreference::HighestComputeCapability)) |
|
| Blas (Blas const &)=delete |
|
| Blas (Blas &&)=delete |
|
Blas & | operator= (Blas const &)=delete |
|
Blas & | operator= (Blas &&)=delete |
|
cublasHandle_t | Handle () const |
|
template<CVector TVectorX, CVector TVectorY, class TScalar = TVectorX::ValueType> |
void | Copy (TVectorX const &x, TVectorY &y, std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|
template<CVector TVectorX, CVector TVectorY, class TScalar = TVectorX::ValueType> |
void | Axpy (TVectorX const &x, TVectorY &y, TScalar alpha=TScalar(1), std::shared_ptr< cuda::stream_t > stream=nullptr) |
|
template<CMatrix TMatrixA, CVector TVectorX, CVector TVectorY, class TScalar = TMatrixA::ValueType> |
void | Gemv (TMatrixA const &A, TVectorX const &x, TVectorY &y, TScalar alpha=TScalar(1), TScalar beta=TScalar(0), std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|
template<CMatrix TMatrixA, CMatrix TMatrixB, class TScalar = TMatrixA::ValueType> |
void | UpperTriangularSolve (TMatrixA const &A, TMatrixB &B, TScalar alpha=TScalar(1), bool bHasUnitDiagonal=false, std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|
template<CMatrix TMatrixA, CMatrix TMatrixB, class TScalar = TMatrixA::ValueType> |
void | LowerTriangularSolve (TMatrixA const &A, TMatrixB &B, TScalar alpha=TScalar(1), bool bHasUnitDiagonal=false, std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|
template<CMatrix TMatrixA, CVector TVectorB, class TScalar = TMatrixA::ValueType> |
void | UpperTriangularSolve (TMatrixA const &A, TVectorB &B, TScalar alpha=TScalar(1), bool bHasUnitDiagonal=false, std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|
template<CMatrix TMatrixA, CVector TVectorB, class TScalar = TMatrixA::ValueType> |
void | LowerTriangularSolve (TMatrixA const &A, TVectorB &B, TScalar alpha=TScalar(1), bool bHasUnitDiagonal=false, std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|
template<CMatrix TMatrixA, CMatrix TMatrixB, class TScalar = TMatrixA::ValueType> |
void | Trsm (cublasSideMode_t side, cublasFillMode_t uplo, cublasDiagType_t diag, TMatrixA const &A, TMatrixB &B, TScalar alpha=TScalar(1), std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|