Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
AMReX_BArena.H
Go to the documentation of this file.
1#ifndef AMREX_BARENA_H_
2#define AMREX_BARENA_H_
3#include <AMReX_Config.H>
4
5#include <AMReX_Arena.H>
6
12namespace amrex {
18class BArena
19 :
20 public Arena
21{
22public:
28 [[nodiscard]] void* alloc (std::size_t sz) final;
33 void free (void* pt) final;
34
36 [[nodiscard]] bool isDeviceAccessible () const final;
38 [[nodiscard]] bool isHostAccessible () const final;
39
41 [[nodiscard]] bool isManaged () const final;
43 [[nodiscard]] bool isDevice () const final;
45 [[nodiscard]] bool isPinned () const final;
46};
47
48}
49
50#endif
Memory arena base class and global arena accessors.
Abstract base class for memory arenas.
Definition AMReX_Arena.H:153
Basic Arena that allocates aligned memory on the host heap.
Definition AMReX_BArena.H:21
bool isPinned() const final
Return false; BArena does not allocate pinned memory.
Definition AMReX_BArena.cpp:52
void free(void *pt) final
Free memory previously returned by alloc().
Definition AMReX_BArena.cpp:17
bool isManaged() const final
Return false; BArena memory is not managed/unified.
Definition AMReX_BArena.cpp:40
bool isHostAccessible() const final
Return true; BArena allocations reside on the host.
Definition AMReX_BArena.cpp:34
bool isDevice() const final
Return false; BArena operates on the host.
Definition AMReX_BArena.cpp:46
void * alloc(std::size_t sz) final
Allocate host memory.
Definition AMReX_BArena.cpp:4
bool isDeviceAccessible() const final
Return false; BArena allocations are not device accessible.
Definition AMReX_BArena.cpp:28
Definition AMReX_Amr.cpp:50