26#ifndef dftefeLinAlgOpContext_h
27#define dftefeLinAlgOpContext_h
40 namespace linearAlgebra
50 template <utils::MemorySpace memorySpace>
106 inline static std::vector<utils::deviceStream_t>
d_streams;
Definition: LinAlgOpContext.h:52
static utils::deviceStream_t * getBlasStreamsVec()
Definition: LinAlgOpContext.h:92
static std::vector< utils::deviceStream_t > d_streams
Definition: LinAlgOpContext.h:106
~LinAlgOpContext()=default
static utils::deviceStream_t & getBlasStream()
Definition: LinAlgOpContext.h:74
TensorOpDataType getTensorOpDataType()
Definition: LinAlgOpContext.h:65
TensorOpDataType d_opType
storage for deviceblas handle
Definition: LinAlgOpContext.h:112
void setTensorOpDataType(TensorOpDataType opType)
Definition: LinAlgOpContext.h:59
static utils::deviceStream_t d_stream
Definition: LinAlgOpContext.h:109
static std::vector< utils::deviceBlasHandle_t > d_deviceBlasHandles
Definition: LinAlgOpContext.h:105
static utils::deviceBlasStatus_t setBlasStream(utils::deviceStream_t &streamId)
Definition: LinAlgOpContext.t.cpp:104
static utils::deviceBlasHandle_t & getDeviceBlasHandle()
Definition: LinAlgOpContext.h:80
size_type numBlasStreams() const
Definition: LinAlgOpContext.h:86
size_type d_numBlasStreams
Definition: LinAlgOpContext.h:104
utils::deviceBlasStatus_t create(utils::deviceBlasHandle_t &handleId)
Definition: LinAlgOpContext.t.cpp:129
static utils::deviceBlasHandle_t * getDeviceBlasHandlesVec()
Definition: LinAlgOpContext.h:98
utils::deviceBlasStatus_t destroy(utils::deviceBlasHandle_t &handleId)
Definition: LinAlgOpContext.t.cpp:145
static utils::deviceBlasHandle_t d_deviceBlasHandle
Definition: LinAlgOpContext.h:108
TensorOpDataType
Definition: LinAlgOpContext.h:43
cublasHandle_t deviceBlasHandle_t
Definition: DeviceTypeConfig.cu.h:36
cudaStream_t deviceStream_t
Definition: DeviceTypeConfig.cu.h:27
cublasStatus_t deviceBlasStatus_t
Definition: DeviceTypeConfig.cu.h:38
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
std::uint64_t size_type
Definition: TypeConfig.h:9