#include <CL/sycl/detail/memory_manager.hpp>
Public Member Functions | |
__SYCL_DEPRECATED ("copy_usm() accepting PiEvent& is deprecated, use " "copy_usm() accepting PiEvent* instead") static void copy_usm(const void *SrcMem | |
__SYCL_DEPRECATED ("fill_usm() accepting PiEvent& is deprecated, use " "fill_usm() accepting PiEvent* instead") static void fill_usm(void *DstMem | |
__SYCL_DEPRECATED ("prefetch_usm() accepting PiEvent& is deprecated, use " "prefetch_usm() accepting PiEvent* instead") static void prefetch_usm(void *Ptr | |
__SYCL_DEPRECATED ("advise_usm() accepting PiEvent& is deprecated, use " "advise_usm() accepting PiEvent* instead") static void advise_usm(const void *Ptr | |
Static Public Member Functions | |
static void | release (ContextImplPtr TargetContext, SYCLMemObjI *MemObj, void *MemAllocation, std::vector< EventImplPtr > DepEvents, RT::PiEvent &OutEvent) |
static void * | allocate (ContextImplPtr TargetContext, SYCLMemObjI *MemObj, bool InitFromUserData, void *HostPtr, std::vector< EventImplPtr > DepEvents, RT::PiEvent &OutEvent) |
static void * | wrapIntoImageBuffer (ContextImplPtr TargetContext, void *MemBuf, SYCLMemObjI *MemObj) |
static void | releaseImageBuffer (ContextImplPtr TargetContext, void *ImageBuf) |
static void * | allocateMemSubBuffer (ContextImplPtr TargetContext, void *ParentMemObj, size_t ElemSize, size_t Offset, range< 3 > Range, std::vector< EventImplPtr > DepEvents, RT::PiEvent &OutEvent) |
static void * | allocateMemBuffer (ContextImplPtr TargetContext, SYCLMemObjI *MemObj, void *UserPtr, bool HostPtrReadOnly, size_t Size, const EventImplPtr &InteropEvent, const ContextImplPtr &InteropContext, const sycl::property_list &PropsList, RT::PiEvent &OutEventToWait) |
static void * | allocateMemImage (ContextImplPtr TargetContext, SYCLMemObjI *MemObj, void *UserPtr, bool HostPtrReadOnly, size_t Size, const RT::PiMemImageDesc &Desc, const RT::PiMemImageFormat &Format, const EventImplPtr &InteropEvent, const ContextImplPtr &InteropContext, const sycl::property_list &PropsList, RT::PiEvent &OutEventToWait) |
static void | releaseMemObj (ContextImplPtr TargetContext, SYCLMemObjI *MemObj, void *MemAllocation, void *UserPtr) |
static void * | allocateHostMemory (SYCLMemObjI *MemObj, void *UserPtr, bool HostPtrReadOnly, size_t Size, const sycl::property_list &PropsList) |
static void * | allocateInteropMemObject (ContextImplPtr TargetContext, void *UserPtr, const EventImplPtr &InteropEvent, const ContextImplPtr &InteropContext, const sycl::property_list &PropsList, RT::PiEvent &OutEventToWait) |
static void * | allocateImageObject (ContextImplPtr TargetContext, void *UserPtr, bool HostPtrReadOnly, const RT::PiMemImageDesc &Desc, const RT::PiMemImageFormat &Format, const sycl::property_list &PropsList) |
static void * | allocateBufferObject (ContextImplPtr TargetContext, void *UserPtr, bool HostPtrReadOnly, const size_t Size, const sycl::property_list &PropsList) |
static void | copy (SYCLMemObjI *SYCLMemObj, void *SrcMem, QueueImplPtr SrcQueue, unsigned int DimSrc, sycl::range< 3 > SrcSize, sycl::range< 3 > SrcAccessRange, sycl::id< 3 > SrcOffset, unsigned int SrcElemSize, void *DstMem, QueueImplPtr TgtQueue, unsigned int DimDst, sycl::range< 3 > DstSize, sycl::range< 3 > DstAccessRange, sycl::id< 3 > DstOffset, unsigned int DstElemSize, std::vector< RT::PiEvent > DepEvents, RT::PiEvent &OutEvent) |
static void | fill (SYCLMemObjI *SYCLMemObj, void *Mem, QueueImplPtr Queue, size_t PatternSize, const char *Pattern, unsigned int Dim, sycl::range< 3 > Size, sycl::range< 3 > AccessRange, sycl::id< 3 > AccessOffset, unsigned int ElementSize, std::vector< RT::PiEvent > DepEvents, RT::PiEvent &OutEvent) |
static void * | map (SYCLMemObjI *SYCLMemObj, void *Mem, QueueImplPtr Queue, access::mode AccessMode, unsigned int Dim, sycl::range< 3 > Size, sycl::range< 3 > AccessRange, sycl::id< 3 > AccessOffset, unsigned int ElementSize, std::vector< RT::PiEvent > DepEvents, RT::PiEvent &OutEvent) |
static void | unmap (SYCLMemObjI *SYCLMemObj, void *Mem, QueueImplPtr Queue, void *MappedPtr, std::vector< RT::PiEvent > DepEvents, RT::PiEvent &OutEvent) |
static void | copy_usm (const void *SrcMem, QueueImplPtr Queue, size_t Len, void *DstMem, std::vector< RT::PiEvent > DepEvents, RT::PiEvent *OutEvent) |
static void | fill_usm (void *DstMem, QueueImplPtr Queue, size_t Len, int Pattern, std::vector< RT::PiEvent > DepEvents, RT::PiEvent *OutEvent) |
static void | prefetch_usm (void *Ptr, QueueImplPtr Queue, size_t Len, std::vector< RT::PiEvent > DepEvents, RT::PiEvent *OutEvent) |
static void | advise_usm (const void *Ptr, QueueImplPtr Queue, size_t Len, pi_mem_advice Advice, std::vector< RT::PiEvent > DepEvents, RT::PiEvent *OutEvent) |
Public Attributes | |
QueueImplPtr | Queue |
QueueImplPtr size_t | Len |
QueueImplPtr size_t void * | DstMem |
QueueImplPtr size_t void std::vector< RT::PiEvent > | DepEvents |
QueueImplPtr size_t void std::vector< RT::PiEvent > RT::PiEvent & | OutEvent |
QueueImplPtr size_t int | Pattern |
QueueImplPtr size_t int std::vector< RT::PiEvent > | DepEvents |
QueueImplPtr size_t int std::vector< RT::PiEvent > RT::PiEvent & | OutEvent |
QueueImplPtr size_t std::vector< RT::PiEvent > | DepEvents |
QueueImplPtr size_t std::vector< RT::PiEvent > RT::PiEvent & | OutEvent |
QueueImplPtr size_t pi_mem_advice | Advice |
QueueImplPtr size_t pi_mem_advice std::vector< RT::PiEvent > | DepEvents |
QueueImplPtr size_t pi_mem_advice std::vector< RT::PiEvent > RT::PiEvent & | OutEvent |
Definition at line 36 of file memory_manager.hpp.
cl::sycl::detail::MemoryManager::__SYCL_DEPRECATED | ( | "advise_usm() accepting PiEvent& is | deprecated, |
use " "advise_usm() accepting PiEvent *instead" | |||
) | const |
cl::sycl::detail::MemoryManager::__SYCL_DEPRECATED | ( | "copy_usm() accepting PiEvent& is | deprecated, |
use " "copy_usm() accepting PiEvent *instead" | |||
) | const |
cl::sycl::detail::MemoryManager::__SYCL_DEPRECATED | ( | "fill_usm() accepting PiEvent& is | deprecated, |
use " "fill_usm() accepting PiEvent *instead" | |||
) |
cl::sycl::detail::MemoryManager::__SYCL_DEPRECATED | ( | "prefetch_usm() accepting PiEvent& is | deprecated, |
use " "prefetch_usm() accepting PiEvent *instead" | |||
) |
|
static |
Definition at line 932 of file memory_manager.cpp.
References cl::sycl::detail::plugin::call(), cl::sycl::context::is_host(), and piextUSMEnqueueMemAdvise().
|
static |
Definition at line 272 of file memory_manager.cpp.
References cl::sycl::detail::SYCLMemObjI::allocateMem(), and cl::sycl::detail::waitForEvents().
|
static |
Definition at line 356 of file memory_manager.cpp.
References cl::sycl::property_list::get_property(), cl::sycl::detail::getMemObjCreationFlags(), cl::sycl::property_list::has_property(), cl::sycl::detail::memBufferCreateHelper(), PI_MEM_FLAGS_HOST_PTR_ALLOC, and PI_MEM_PROPERTIES_ALLOC_BUFFER_LOCATION.
|
static |
Definition at line 295 of file memory_manager.cpp.
References cl::sycl::detail::SYCLMemObjI::allocateHostMem(), and cl::sycl::detail::memcpy().
|
static |
Definition at line 339 of file memory_manager.cpp.
References cl::sycl::detail::plugin::call(), cl::sycl::detail::getMemObjCreationFlags(), and piMemImageCreate().
|
static |
Definition at line 310 of file memory_manager.cpp.
References cl::sycl::detail::plugin::call(), and piEventRetain().
|
static |
Definition at line 384 of file memory_manager.cpp.
|
static |
Definition at line 406 of file memory_manager.cpp.
Referenced by cl::sycl::detail::image_impl< Dimensions >::allocateMem().
|
static |
Definition at line 422 of file memory_manager.cpp.
References cl::sycl::detail::plugin::call_nocheck(), PI_BUFFER_CREATE_TYPE_REGION, PI_MEM_FLAGS_ACCESS_RW, piMemBufferPartition(), cl::sycl::detail::plugin::reportPiError(), and cl::sycl::detail::waitForEvents().
|
static |
Definition at line 736 of file memory_manager.cpp.
References cl::sycl::detail::copyD2D(), cl::sycl::detail::copyD2H(), cl::sycl::detail::copyH2D(), and cl::sycl::detail::copyH2H().
|
static |
Definition at line 860 of file memory_manager.cpp.
References cl::sycl::detail::plugin::call(), cl::sycl::context::is_host(), cl::sycl::detail::memcpy(), piEnqueueEventsWait(), and piextUSMEnqueueMemcpy().
|
static |
Definition at line 776 of file memory_manager.cpp.
References cl::sycl::detail::plugin::call(), cl::sycl::detail::SYCLMemObjI::getType(), piEnqueueMemBufferFill(), piEnqueueMemImageFill(), and cl::sycl::range< dimensions >::size().
|
static |
Definition at line 890 of file memory_manager.cpp.
References cl::sycl::detail::plugin::call(), cl::sycl::context::is_host(), piEnqueueEventsWait(), and piextUSMEnqueueMemset().
|
static |
Definition at line 802 of file memory_manager.cpp.
References cl::sycl::detail::memBufferMapHelper(), PI_FALSE, PI_MAP_READ, PI_MAP_WRITE, PI_MAP_WRITE_INVALIDATE_REGION, and cl::sycl::detail::write().
|
static |
Definition at line 917 of file memory_manager.cpp.
References cl::sycl::detail::plugin::call(), cl::sycl::context::is_host(), and piextUSMEnqueuePrefetch().
|
static |
Definition at line 234 of file memory_manager.cpp.
References cl::sycl::detail::SYCLMemObjI::releaseMem(), and cl::sycl::detail::waitForEvents().
|
static |
Definition at line 246 of file memory_manager.cpp.
|
static |
Definition at line 255 of file memory_manager.cpp.
References cl::sycl::detail::memReleaseHelper(), and cl::sycl::detail::SYCLMemObjI::releaseHostMem().
Referenced by cl::sycl::detail::SYCLMemObjT::releaseMem().
|
static |
Definition at line 847 of file memory_manager.cpp.
References cl::sycl::detail::memUnmapHelper().
|
static |
Definition at line 285 of file memory_manager.cpp.
QueueImplPtr size_t pi_mem_advice cl::sycl::detail::MemoryManager::Advice |
Definition at line 181 of file memory_manager.hpp.
QueueImplPtr size_t void std::vector<RT::PiEvent> cl::sycl::detail::MemoryManager::DepEvents |
Definition at line 150 of file memory_manager.hpp.
QueueImplPtr size_t int std::vector<RT::PiEvent> cl::sycl::detail::MemoryManager::DepEvents |
Definition at line 160 of file memory_manager.hpp.
QueueImplPtr size_t std::vector<RT::PiEvent> cl::sycl::detail::MemoryManager::DepEvents |
Definition at line 170 of file memory_manager.hpp.
QueueImplPtr size_t pi_mem_advice std::vector<RT::PiEvent> cl::sycl::detail::MemoryManager::DepEvents |
Definition at line 182 of file memory_manager.hpp.
QueueImplPtr size_t void* cl::sycl::detail::MemoryManager::DstMem |
Definition at line 150 of file memory_manager.hpp.
QueueImplPtr size_t cl::sycl::detail::MemoryManager::Len |
Definition at line 149 of file memory_manager.hpp.
QueueImplPtr size_t void std::vector<RT::PiEvent> RT::PiEvent& cl::sycl::detail::MemoryManager::OutEvent |
Definition at line 151 of file memory_manager.hpp.
QueueImplPtr size_t int std::vector<RT::PiEvent> RT::PiEvent& cl::sycl::detail::MemoryManager::OutEvent |
Definition at line 161 of file memory_manager.hpp.
QueueImplPtr size_t std::vector<RT::PiEvent> RT::PiEvent& cl::sycl::detail::MemoryManager::OutEvent |
Definition at line 171 of file memory_manager.hpp.
QueueImplPtr size_t pi_mem_advice std::vector<RT::PiEvent> RT::PiEvent& cl::sycl::detail::MemoryManager::OutEvent |
Definition at line 183 of file memory_manager.hpp.
QueueImplPtr size_t int cl::sycl::detail::MemoryManager::Pattern |
Definition at line 160 of file memory_manager.hpp.
QueueImplPtr cl::sycl::detail::MemoryManager::Queue |
Definition at line 149 of file memory_manager.hpp.