KIDS  ver-0.0.1
KIDS : Kernel Integrated Dynamics Simulator
Loading...
Searching...
No Matches
PROJECT_NS::MPI_Guard Class Referencefinal

#include <mpi_utils.h>

Collaboration diagram for PROJECT_NS::MPI_Guard:
Collaboration graph

Public Member Functions

 MPI_Guard (std::size_t TOTAL)
 
 ~MPI_Guard ()
 

Static Public Member Functions

static int reduce (const std::tuple< kids_dtype, void *, void *, std::size_t > &info)
 
static int reduce (const std::vector< std::tuple< kids_dtype, void *, void *, std::size_t > > &info_list)
 

Public Attributes

std::size_t istart
 
std::size_t iend
 
std::size_t TOTAL
 

Static Public Attributes

static int rank = 0
 
static int nprocs = 1
 
static bool isroot = true
 

Static Private Member Functions

static int range (const size_t &idx1, const size_t &idx2, size_t &ista, size_t &iend)
 

Detailed Description

Definition at line 10 of file kidsrun/mpi_utils.h.

Constructor & Destructor Documentation

◆ MPI_Guard()

PROJECT_NS::MPI_Guard::MPI_Guard ( std::size_t TOTAL)

Definition at line 6 of file mpi_utils.cpp.

References iend, isroot, istart, nprocs, range(), rank, and TOTAL.

Here is the call graph for this function:

◆ ~MPI_Guard()

PROJECT_NS::MPI_Guard::~MPI_Guard ( )

Definition at line 130 of file mpi_utils.cpp.

Member Function Documentation

◆ range()

int PROJECT_NS::MPI_Guard::range ( const size_t & idx1,
const size_t & idx2,
size_t & ista,
size_t & iend )
staticprivate

Definition at line 14 of file mpi_utils.cpp.

References iend, nprocs, and rank.

Referenced by MPI_Guard().

Here is the caller graph for this function:

◆ reduce() [1/2]

int PROJECT_NS::MPI_Guard::reduce ( const std::tuple< kids_dtype, void *, void *, std::size_t > & info)
static

Definition at line 102 of file mpi_utils.cpp.

References PROJECT_NS::kids_complex_type, PROJECT_NS::kids_int_type, and PROJECT_NS::kids_real_type.

Referenced by PROJECT_NS::Context::execute(), and PROJECT_NS::Handler::run_parallel().

Here is the caller graph for this function:

◆ reduce() [2/2]

int PROJECT_NS::MPI_Guard::reduce ( const std::vector< std::tuple< kids_dtype, void *, void *, std::size_t > > & info_list)
static

Member Data Documentation

◆ iend

std::size_t PROJECT_NS::MPI_Guard::iend

◆ isroot

bool PROJECT_NS::MPI_Guard::isroot = true
static

◆ istart

std::size_t PROJECT_NS::MPI_Guard::istart

◆ nprocs

int PROJECT_NS::MPI_Guard::nprocs = 1
static

Definition at line 13 of file kidsrun/mpi_utils.h.

Referenced by MPI_Guard(), and range().

◆ rank

int PROJECT_NS::MPI_Guard::rank = 0
static

◆ TOTAL

std::size_t PROJECT_NS::MPI_Guard::TOTAL

Definition at line 18 of file kidsrun/mpi_utils.h.

Referenced by MPI_Guard().


The documentation for this class was generated from the following files: