6 #include "senseiConfig.h" 41 std::shared_ptr<void> MakeCudaAccessible_(
void *ptr,
size_t nBytes);
43 template <
typename data_t>
44 std::shared_ptr<data_t> MakeCudaAccessible(data_t *ptr,
size_t nVals)
46 return std::static_pointer_cast<data_t>(
47 sensei::MemoryUtils::MakeCudaAccessible_(
48 (
void*)ptr, nVals*
sizeof(data_t)));
60 std::shared_ptr<void> MakeHostAccessible_(
void *ptr,
size_t nBytes);
62 template <
typename data_t>
63 std::shared_ptr<data_t> MakeHostAccessible(data_t *ptr,
size_t nVals)
65 return std::static_pointer_cast<data_t>(
66 sensei::MemoryUtils::MakeHostAccessible_(
67 (
void*)ptr, nVals*
sizeof(data_t)));
int HostAccessible(const void *ptr)
return true if the pointer is accessible by code running on the CPU
int CudaAccessible(const void *ptr)
return true if the pointer is accessible by code running on a CUDA GPU
void FreeHostPtr(void *ptr)
callback that can free memory managed by malloc
void FreeCudaPtr(void *ptr)
callback that can free memory managed by CUDA
SENSEI.
Definition: ADIOS2AnalysisAdaptor.h:27
void DontFreePtr(void *ptr)
A callback that does not free the pointer.