|
|
| HostMemoryResource ()=default |
| | Default constructor.
|
| |
|
| ~HostMemoryResource () override=default |
| | Destructor.
|
| |
| void * | allocate (size_t a_bytes, size_t a_alignment) override |
| | Allocate an aligned block of host memory.
|
| |
| void | deallocate (void *a_ptr, size_t a_bytes, size_t a_alignment) noexcept override |
| | Free a block previously returned by allocate.
|
| |
| bool | isHostAccessible () const noexcept override |
| | Host blocks are host-accessible.
|
| |
| bool | isDeviceAccessible () const noexcept override |
| | Host blocks are not device-accessible.
|
| |
|
| MemoryResource ()=default |
| | Default constructor.
|
| |
|
virtual | ~MemoryResource ()=default |
| | Destructor.
|
| |
|
| MemoryResource (const MemoryResource &)=delete |
| | Copy constructor. Deleted: a resource's identity is meaningful and non-copyable.
|
| |
|
MemoryResource & | operator= (const MemoryResource &)=delete |
| | Copy assignment. Deleted: a resource's identity is meaningful and non-copyable.
|
| |
| virtual void | copy (void *a_dst, const MemoryResource &a_dstResource, const void *a_src, const MemoryResource &a_srcResource, size_t a_bytes) const noexcept |
| | Copy a block between memory from two resources, one of which is this one.
|
| |
Host memory resource: plain aligned allocation in host RAM (std::aligned_alloc / free family).
Always compiled, on every backend. Blocks are host-accessible and not device-accessible.