Originally we used Elixirs for temporary FABs.
Then we switched to doing a resize, like:
FArrayBox tmp;
...
// inside the MFIter loop
tmp.resize(bx, 1, The_Async_Arena());
Now AMReX can do something like:
auto tmp_fab = amrex::FArrayBox{bx, ncomps, amrex::The_Async_Arena()};
This is the new stream-ordered allocator.
We can should look into updating the code with time.
Originally we used Elixirs for temporary FABs.
Then we switched to doing a resize, like:
Now AMReX can do something like:
This is the new stream-ordered allocator.
We can should look into updating the code with time.