ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
Loading...
Searching...
No Matches
orb5x::ParallelVariables Struct Reference

MPI topology, communicator ownership, and host-thread settings. More...

#include "globals.hpp"

Public Attributes

MPI_Comm comm_cg = MPI_COMM_WORLD
 Communicator used by conjugate-gradient solves.
MPI_Comm comm_clones = MPI_COMM_WORLD
 Communicator joining clones of one domain.
MPI_Comm comm_krcol = MPI_COMM_WORLD
 Communicator used by Krylov column reductions.
MPI_Comm comm_sd = MPI_COMM_WORLD
 Toroidal spatial-decomposition communicator.
int me_clones = 0
 Zero-based clone rank within comm_clones.
int me_sd = 0
 Zero-based rank within the spatial-domain communicator.
int me_world = 0
 Zero-based rank in MPI_COMM_WORLD.
int nclones = 0
 Number of particle clones sharing one spatial domain.
int nsd = 0
 Number of toroidal spatial domains.
int nsel_ptransp = 0
 Particle-transport selector; see NSelPtransp.
int nthreads = 1
 Host threads available to the process.
int nvp_world = 0
 Number of MPI ranks in MPI_COMM_WORLD.
int p_nthreads = 1
 Host threads used by particle kernels.

Detailed Description

MPI topology, communicator ownership, and host-thread settings.

Rank fields are zero-based. Communicators are borrowed MPI handles managed by the parallel setup and teardown code.

Member Data Documentation

◆ comm_cg

MPI_Comm orb5x::ParallelVariables::comm_cg = MPI_COMM_WORLD

Communicator used by conjugate-gradient solves.

◆ comm_clones

MPI_Comm orb5x::ParallelVariables::comm_clones = MPI_COMM_WORLD

Communicator joining clones of one domain.

◆ comm_krcol

MPI_Comm orb5x::ParallelVariables::comm_krcol = MPI_COMM_WORLD

Communicator used by Krylov column reductions.

◆ comm_sd

MPI_Comm orb5x::ParallelVariables::comm_sd = MPI_COMM_WORLD

Toroidal spatial-decomposition communicator.

◆ me_clones

int orb5x::ParallelVariables::me_clones = 0

Zero-based clone rank within comm_clones.

◆ me_sd

int orb5x::ParallelVariables::me_sd = 0

Zero-based rank within the spatial-domain communicator.

◆ me_world

int orb5x::ParallelVariables::me_world = 0

Zero-based rank in MPI_COMM_WORLD.

◆ nclones

int orb5x::ParallelVariables::nclones = 0

Number of particle clones sharing one spatial domain.

◆ nsd

int orb5x::ParallelVariables::nsd = 0

Number of toroidal spatial domains.

◆ nsel_ptransp

int orb5x::ParallelVariables::nsel_ptransp = 0

Particle-transport selector; see NSelPtransp.

◆ nthreads

int orb5x::ParallelVariables::nthreads = 1

Host threads available to the process.

◆ nvp_world

int orb5x::ParallelVariables::nvp_world = 0

Number of MPI ranks in MPI_COMM_WORLD.

◆ p_nthreads

int orb5x::ParallelVariables::p_nthreads = 1

Host threads used by particle kernels.


The documentation for this struct was generated from the following file: