16 #ifndef TMVA_DNN_ARCHITECTURES_CUDA_CUDABUFFERS
17 #define TMVA_DNN_ARCHITECTURES_CUDA_CUDABUFFERS
20 #include "cuda_runtime.h"
26 template<
typename AFloat>
40 template<
typename AFloat>
76 operator AFloat * ()
const;
95 template<
typename AFloat>
131 operator AFloat * ()
const;
145 template<
typename AFloat>
148 return (*fHostPointer + fOffset)[index];
151 template<
typename AFloat>
154 return (*fHostPointer + fOffset)[index];
TDestructor & operator=(const TDestructor &)=default
std::shared_ptr< AFloat * > fHostPointer
Pointer to the buffer data.
TCudaDeviceBuffer()=default
void SetComputeStream(cudaStream_t stream)
void CopyTo(const TCudaHostBuffer< AFloat > &) const
void CopyFrom(const TCudaHostBuffer< AFloat > &) const
size_t fOffset
Offset for sub-buffers.
AFloat & operator[](size_t index)
struct TMVA::DNN::TCudaHostBuffer::TDestructor fDestructor
cudaStream_t fComputeStream
cudaStream for data transfer
cudaStream_t GetComputeStream() const
struct TMVA::DNN::TCudaDeviceBuffer::TDestructor fDestructor
void operator()(AFloat **devicePointer)
void operator()(AFloat **devicePointer)
TCudaHostBuffer & operator=(const TCudaHostBuffer &)=default
std::shared_ptr< AFloat * > fDevicePointer
Pointer to the buffer data.
TCudaDeviceBuffer & operator=(const TCudaDeviceBuffer &)=default
TCudaHostBuffer()=default
TCudaDeviceBuffer GetSubBuffer(size_t offset, size_t size)
Return sub-buffer of the current buffer.
TCudaHostBuffer GetSubBuffer(size_t offset, size_t size)
Return sub-buffer of the current buffer.
size_t fOffset
Offset for sub-buffers.
TDestructor & operator=(const TDestructor &)=default
cudaStream_t fComputeStream
cudaStream for data transfer