85 void deallocate(
void* address, std::size_t nbytes)
const;
91 int id()
const {
return -1; }
102 bool pageable_ =
true;
103 bool pinned_ =
false;
139 return devices.count_;
185 int id() const noexcept {
195 bool blocking_ =
false;
Device memory domain.
Definition: resources.hpp:156
bool blocking() const
Definition: resources.hpp:189
int id() const noexcept
Device identifier.
Definition: resources.hpp:185
Device(int id=0, bool blocking=false)
Constructs a device memory environment.
void deallocate(void *address, std::size_t nbytes) const
Releases device memory.
void * allocate(std::size_t nbytes) const
Allocates device memory
Device enumeration singleton.
Definition: resources.hpp:120
static Devices & instance()
Definition: resources.hpp:132
Devices(const Devices &)=delete
static int count()
Definition: resources.hpp:137
Devices(Devices &&)=delete
Devices & operator=(Devices &&)=delete
Devices & operator=(const Devices &)=delete
Host memory domain.
Definition: resources.hpp:60
Host()=default
Constructs a host memory environment
bool pinned() const
Definition: resources.hpp:97
bool pageable() const
Definition: resources.hpp:93
int id() const
Domain identifier constant.
Definition: resources.hpp:91
void deallocate(void *address, std::size_t nbytes) const
Releases host memory resources.
void * allocate(std::size_t nbytes) const
Allocates memory in host address space.
Definition: buffer.hpp:41
std::variant< Host, Device > Environment
Memory environment variant type.
Definition: resources.hpp:204