Skip to content

Class TempLat::MemoryToolBox

template <size_t _NDim>

ClassList > TempLat > MemoryToolBox

A class which collects all the tool classes which deal with memory(-state) manipulation. Make one toolbox using the makeShared method, and instantiate as many memory managers as you want, with identical layouts! More...

  • #include <memorytoolbox.h>

Public Attributes

Type Name
FFTLibrarySelector< NDim > mFFTLibrary
FFTNormalization< NDim > mFFTNormalization
GhostBuster< NDim > mGhostBuster_toConfig
GhostBuster< NDim > mGhostBuster_toFFTConfig
device::Idx mGhostDepth
GhostUpdater< NDim > mGhostUpdater
MPICartesianGroup mGroup
TripleStateLayouts< NDim > mLayouts
device::IdxArray< NDim > mNGridPointsVec
VerbosityLevels verbosity

Public Static Attributes

Type Name
constexpr size_t NDim = \_NDim

Public Functions

Type Name
MemoryToolBox (device::Idx nGridPoints, device::Idx ghostDepth, bool forbidTransposition=false)
Constructor with default MPI layout and MPI_COMM_WORLD.
MemoryToolBox (device::IdxArray< NDim > nGrid, device::Idx ghostDepth, bool forbidTransposition=false)
Constructor with default MPI layout and MPI_COMM_WORLD.
MemoryToolBox (device::Idx nGridPoints, device::Idx ghostDepth, device::Idx nThreads, bool forbidTransposition)
Constructor with default MPI layout and MPI_COMM_WORLD but custom number of threads.
MemoryToolBox (device::IdxArray< NDim > nGrid, device::Idx ghostDepth, device::Idx nThreads, bool forbidTransposition)
Constructor with default MPI layout and MPI_COMM_WORLD but custom number of threads.
MemoryToolBox (MPICommReference comm, device::Idx nGridPoints, device::Idx ghostDepth, bool forbidTransposition=false)
Constructor with default MPI layout and but custom MPI_Comm.
MemoryToolBox (MPICommReference comm, device::IdxArray< NDim > nGrid, device::Idx ghostDepth, bool forbidTransposition=false)
Constructor with default MPI layout and but custom MPI_Comm.
MemoryToolBox (MPICartesianGroup group, device::Idx nGridPoints, device::Idx ghostDepth, bool forbidTransposition=false)
Constructor with user chosen MPI layout.
MemoryToolBox (MPICartesianGroup group, device::IdxArray< NDim > nGrid, device::Idx ghostDepth, bool forbidTransposition=false)
Constructor with user chosen MPI layout.
MemoryToolBox (MPICartesianGroup group, device::Idx nGridPoints, device::Idx ghostDepth, device::Idx nThreads, bool forbidTransposition=false)
Constructor with user chosen MPI layout and number of threads.
MemoryToolBox (MPICartesianGroup group, device::IdxArray< NDim > nGrid, device::Idx ghostDepth, device::Idx nThreads, bool forbidTransposition=false)
bool amIRoot ()
void checkParallelConsistency ()
auto getDecomposition () const
int getMPIRank ()
device::Idx getNGhosts () const
int getNProcesses () const
bool initializeFFT ()
void resetVerbose ()
void setVerbose ()
void unsetVerbose ()

Public Static Functions

Type Name
device::memory::host_ptr< MemoryToolBox< NDim > > makeShared (device::Idx nGridPoints, device::Idx ghostDepth, bool forbidTransposition=false)
Shared-pointer constructor with default MPI layout and MPI_COMM_WORLD.
device::memory::host_ptr< MemoryToolBox< NDim > > makeShared (device::IdxArray< NDim > nGrid, device::Idx ghostDepth, bool forbidTransposition=false)
Shared-pointer constructor with default MPI layout and MPI_COMM_WORLD.
device::memory::host_ptr< MemoryToolBox< NDim > > makeShared (device::Idx nGridPoints, device::Idx ghostDepth, device::Idx nThreads, bool forbidTransposition=false)
Shared-pointer constructor with default MPI layout and MPI_COMM_WORLD.
device::memory::host_ptr< MemoryToolBox< NDim > > makeShared (device::IdxArray< NDim > nGrid, device::Idx ghostDepth, device::Idx nThreads, bool forbidTransposition=false)
Shared-pointer constructor with default MPI layout and MPI_COMM_WORLD.
device::memory::host_ptr< MemoryToolBox< NDim > > makeShared (MPICommReference comm, device::Idx nGridPoints, device::Idx ghostDepth, bool forbidTransposition=false)
Shared-pointer constructor with default MPI layout and but custom MPI_Comm.
device::memory::host_ptr< MemoryToolBox< NDim > > makeShared (MPICommReference comm, device::IdxArray< NDim > nGrid, device::Idx ghostDepth, bool forbidTransposition=false)
Shared-pointer constructor with default MPI layout and but custom MPI_Comm.
device::memory::host_ptr< MemoryToolBox< NDim > > makeShared (MPICartesianGroup group, device::Idx nGridPoints, device::Idx ghostDepth, bool forbidTransposition=false)
Shared-pointer constructor with user chosen MPI layout.
device::memory::host_ptr< MemoryToolBox< NDim > > makeShared (MPICartesianGroup group, device::IdxArray< NDim > nGrid, device::Idx ghostDepth, bool forbidTransposition=false)
Shared-pointer constructor with user chosen MPI layout.

Detailed Description

Unit test: ctest -R test-memorytoolbox

Public Attributes Documentation

variable mFFTLibrary

FFTLibrarySelector<NDim> TempLat::MemoryToolBox< _NDim >::mFFTLibrary;

variable mFFTNormalization

FFTNormalization<NDim> TempLat::MemoryToolBox< _NDim >::mFFTNormalization;

variable mGhostBuster_toConfig

GhostBuster<NDim> TempLat::MemoryToolBox< _NDim >::mGhostBuster_toConfig;

variable mGhostBuster_toFFTConfig

GhostBuster<NDim> TempLat::MemoryToolBox< _NDim >::mGhostBuster_toFFTConfig;

variable mGhostDepth

device::Idx TempLat::MemoryToolBox< _NDim >::mGhostDepth;

variable mGhostUpdater

GhostUpdater<NDim> TempLat::MemoryToolBox< _NDim >::mGhostUpdater;

variable mGroup

MPICartesianGroup TempLat::MemoryToolBox< _NDim >::mGroup;

variable mLayouts

TripleStateLayouts<NDim> TempLat::MemoryToolBox< _NDim >::mLayouts;

variable mNGridPointsVec

device::IdxArray<NDim> TempLat::MemoryToolBox< _NDim >::mNGridPointsVec;

variable verbosity

VerbosityLevels TempLat::MemoryToolBox< _NDim >::verbosity;

Public Static Attributes Documentation

variable NDim

constexpr size_t TempLat::MemoryToolBox< _NDim >::NDim;

Public Functions Documentation

function MemoryToolBox [1/10]

Constructor with default MPI layout and MPI_COMM_WORLD.

inline TempLat::MemoryToolBox::MemoryToolBox (
    device::Idx nGridPoints,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function MemoryToolBox [2/10]

Constructor with default MPI layout and MPI_COMM_WORLD.

inline TempLat::MemoryToolBox::MemoryToolBox (
    device::IdxArray< NDim > nGrid,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function MemoryToolBox [3/10]

Constructor with default MPI layout and MPI_COMM_WORLD but custom number of threads.

inline TempLat::MemoryToolBox::MemoryToolBox (
    device::Idx nGridPoints,
    device::Idx ghostDepth,
    device::Idx nThreads,
    bool forbidTransposition
) 


function MemoryToolBox [4/10]

Constructor with default MPI layout and MPI_COMM_WORLD but custom number of threads.

inline TempLat::MemoryToolBox::MemoryToolBox (
    device::IdxArray< NDim > nGrid,
    device::Idx ghostDepth,
    device::Idx nThreads,
    bool forbidTransposition
) 


function MemoryToolBox [5/10]

Constructor with default MPI layout and but custom MPI_Comm.

inline TempLat::MemoryToolBox::MemoryToolBox (
    MPICommReference comm,
    device::Idx nGridPoints,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function MemoryToolBox [6/10]

Constructor with default MPI layout and but custom MPI_Comm.

inline TempLat::MemoryToolBox::MemoryToolBox (
    MPICommReference comm,
    device::IdxArray< NDim > nGrid,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function MemoryToolBox [7/10]

Constructor with user chosen MPI layout.

inline TempLat::MemoryToolBox::MemoryToolBox (
    MPICartesianGroup group,
    device::Idx nGridPoints,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function MemoryToolBox [8/10]

Constructor with user chosen MPI layout.

inline TempLat::MemoryToolBox::MemoryToolBox (
    MPICartesianGroup group,
    device::IdxArray< NDim > nGrid,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function MemoryToolBox [9/10]

Constructor with user chosen MPI layout and number of threads.

inline TempLat::MemoryToolBox::MemoryToolBox (
    MPICartesianGroup group,
    device::Idx nGridPoints,
    device::Idx ghostDepth,
    device::Idx nThreads,
    bool forbidTransposition=false
) 


function MemoryToolBox [10/10]

inline TempLat::MemoryToolBox::MemoryToolBox (
    MPICartesianGroup group,
    device::IdxArray< NDim > nGrid,
    device::Idx ghostDepth,
    device::Idx nThreads,
    bool forbidTransposition=false
) 

function amIRoot

inline bool TempLat::MemoryToolBox::amIRoot () 

function checkParallelConsistency

inline void TempLat::MemoryToolBox::checkParallelConsistency () 

function getDecomposition

inline auto TempLat::MemoryToolBox::getDecomposition () const

function getMPIRank

inline int TempLat::MemoryToolBox::getMPIRank () 

function getNGhosts

inline device::Idx TempLat::MemoryToolBox::getNGhosts () const

function getNProcesses

inline int TempLat::MemoryToolBox::getNProcesses () const

function initializeFFT

template<typename T>
inline bool TempLat::MemoryToolBox::initializeFFT () 

function resetVerbose

inline void TempLat::MemoryToolBox::resetVerbose () 

function setVerbose

inline void TempLat::MemoryToolBox::setVerbose () 

function unsetVerbose

inline void TempLat::MemoryToolBox::unsetVerbose () 

Public Static Functions Documentation

function makeShared [1/8]

Shared-pointer constructor with default MPI layout and MPI_COMM_WORLD.

static inline device::memory::host_ptr < MemoryToolBox < NDim > > TempLat::MemoryToolBox::makeShared (
    device::Idx nGridPoints,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function makeShared [2/8]

Shared-pointer constructor with default MPI layout and MPI_COMM_WORLD.

static inline device::memory::host_ptr < MemoryToolBox < NDim > > TempLat::MemoryToolBox::makeShared (
    device::IdxArray< NDim > nGrid,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function makeShared [3/8]

Shared-pointer constructor with default MPI layout and MPI_COMM_WORLD.

static inline device::memory::host_ptr < MemoryToolBox < NDim > > TempLat::MemoryToolBox::makeShared (
    device::Idx nGridPoints,
    device::Idx ghostDepth,
    device::Idx nThreads,
    bool forbidTransposition=false
) 


function makeShared [4/8]

Shared-pointer constructor with default MPI layout and MPI_COMM_WORLD.

static inline device::memory::host_ptr < MemoryToolBox < NDim > > TempLat::MemoryToolBox::makeShared (
    device::IdxArray< NDim > nGrid,
    device::Idx ghostDepth,
    device::Idx nThreads,
    bool forbidTransposition=false
) 


function makeShared [5/8]

Shared-pointer constructor with default MPI layout and but custom MPI_Comm.

static inline device::memory::host_ptr < MemoryToolBox < NDim > > TempLat::MemoryToolBox::makeShared (
    MPICommReference comm,
    device::Idx nGridPoints,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function makeShared [6/8]

Shared-pointer constructor with default MPI layout and but custom MPI_Comm.

static inline device::memory::host_ptr < MemoryToolBox < NDim > > TempLat::MemoryToolBox::makeShared (
    MPICommReference comm,
    device::IdxArray< NDim > nGrid,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function makeShared [7/8]

Shared-pointer constructor with user chosen MPI layout.

static inline device::memory::host_ptr < MemoryToolBox < NDim > > TempLat::MemoryToolBox::makeShared (
    MPICartesianGroup group,
    device::Idx nGridPoints,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 


function makeShared [8/8]

Shared-pointer constructor with user chosen MPI layout.

static inline device::memory::host_ptr < MemoryToolBox < NDim > > TempLat::MemoryToolBox::makeShared (
    MPICartesianGroup group,
    device::IdxArray< NDim > nGrid,
    device::Idx ghostDepth,
    bool forbidTransposition=false
) 



The documentation for this class was generated from the following file cosmolatticeweb/tmp/code_source/templat/include/TempLat/lattice/memory/memorytoolbox.h