OPAL (Object Oriented Parallel Accelerator Library)
2024.1
OPAL
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
ippl
src
Utility
StaticIpplInfo.h
Go to the documentation of this file.
1
#ifndef STATIC_IPPL_INFO_H
2
#define STATIC_IPPL_INFO_H
3
4
#include <mpi.h>
5
6
class
Communicate
;
7
class
IpplStats
;
8
class
Inform
;
9
10
class
StaticIpplInfo
{
11
public
:
12
StaticIpplInfo
();
13
~StaticIpplInfo
();
14
15
// Inform *Info;
16
// Inform *Warn;
17
// Inform *Error;
18
// Inform *Debug;
19
20
// the parallel communication object
21
Communicate
*
Comm
;
22
23
// the statistics collection object
24
IpplStats
*
Stats
;
25
26
Inform
*
Info
;
27
Inform
*
Warn
;
28
Inform
*
Error
;
29
Inform
*
Debug
;
30
31
// flag telling whether to use optimization for reducing
32
// communication by deferring guard cell fills.
33
bool
deferGuardCellFills
;
34
35
// flag telling whether to turn off compression in the Field classes.
36
bool
noFieldCompression
;
37
38
// flag telling whether to try to (pseudo-)randomly offset the
39
// LField blocks to try to avoid cache conflicts.
40
bool
offsetStorage
;
41
42
// flag telling whether to try to do a TryCompress after each
43
// individual LField has been processed in an expression.
44
bool
extraCompressChecks
;
45
46
MPI_Comm
communicator_m
;
47
48
// counter indicating how many IpplInit objects have been created.
49
// When this gets back to zero, it's time to delete the Comm and quit.
50
int
NumCreated
;
51
52
// flag indicating whether this class has been created with
53
// argc,argv specified ever. This should only be done once.
54
bool
CommInitialized
;
55
56
// flag indicating whether we should print out stats info at the
57
// end of the program.
58
bool
PrintStats
;
59
60
// flag indicating if we need to delete the comm object at the end.
61
bool
NeedDeleteComm
;
62
63
// flag indicating whether to use checksums on messages
64
bool
UseChecksums
;
65
66
// flag indicating whether to retransmit messages when errors occur
67
bool
Retransmit
;
68
69
// data with argc and argv
70
int
MyArgc
;
71
char
**
MyArgv
;
72
73
// data with my node number and total number of nodes. These are
74
// only changed when a new Communicate object is created.
75
int
MyNode
;
76
int
TotalNodes
;
77
78
// data with SMP information. These are changed after a new
79
// Communicate object is created.
80
int
NumSMPs
;
81
int
*
SMPIDList
;
82
int
*
SMPNodeList
;
83
84
// data about a limit to the number of nodes that should be used
85
// in FFT operations. If this is <= 0 or > number of nodes, it is ignored.
86
int
MaxFFTNodes
;
87
88
// Maximum read chunk size
89
int
ChunkSize
;
90
91
// A boolean setting for whether we should attempt to use parallel
92
// I/O within a single SMP, for example by having multipple processors
93
// try to read from a single file (vs just having one node do it).
94
bool
PerSMPParallelIO
;
95
96
};
97
98
#endif
StaticIpplInfo::noFieldCompression
bool noFieldCompression
Definition:
StaticIpplInfo.h:36
StaticIpplInfo::PerSMPParallelIO
bool PerSMPParallelIO
Definition:
StaticIpplInfo.h:94
StaticIpplInfo::~StaticIpplInfo
~StaticIpplInfo()
Definition:
StaticIpplInfo.cpp:6
StaticIpplInfo::SMPNodeList
int * SMPNodeList
Definition:
StaticIpplInfo.h:82
StaticIpplInfo::NumSMPs
int NumSMPs
Definition:
StaticIpplInfo.h:80
StaticIpplInfo::MaxFFTNodes
int MaxFFTNodes
Definition:
StaticIpplInfo.h:86
StaticIpplInfo::communicator_m
MPI_Comm communicator_m
Definition:
StaticIpplInfo.h:46
StaticIpplInfo::UseChecksums
bool UseChecksums
Definition:
StaticIpplInfo.h:64
StaticIpplInfo::NeedDeleteComm
bool NeedDeleteComm
Definition:
StaticIpplInfo.h:61
StaticIpplInfo::SMPIDList
int * SMPIDList
Definition:
StaticIpplInfo.h:81
StaticIpplInfo::MyNode
int MyNode
Definition:
StaticIpplInfo.h:75
StaticIpplInfo::StaticIpplInfo
StaticIpplInfo()
Definition:
StaticIpplInfo.cpp:5
StaticIpplInfo::NumCreated
int NumCreated
Definition:
StaticIpplInfo.h:50
Communicate
Definition:
Communicate.h:112
StaticIpplInfo::MyArgc
int MyArgc
Definition:
StaticIpplInfo.h:70
StaticIpplInfo::Warn
Inform * Warn
Definition:
StaticIpplInfo.h:27
StaticIpplInfo::Debug
Inform * Debug
Definition:
StaticIpplInfo.h:29
IpplStats
Definition:
IpplStats.h:46
StaticIpplInfo::MyArgv
char ** MyArgv
Definition:
StaticIpplInfo.h:71
StaticIpplInfo::Stats
IpplStats * Stats
Definition:
StaticIpplInfo.h:24
StaticIpplInfo::TotalNodes
int TotalNodes
Definition:
StaticIpplInfo.h:76
Inform
Definition:
Inform.h:42
StaticIpplInfo::deferGuardCellFills
bool deferGuardCellFills
Definition:
StaticIpplInfo.h:33
StaticIpplInfo::extraCompressChecks
bool extraCompressChecks
Definition:
StaticIpplInfo.h:44
StaticIpplInfo
Definition:
StaticIpplInfo.h:10
StaticIpplInfo::Info
Inform * Info
Definition:
StaticIpplInfo.h:26
StaticIpplInfo::Retransmit
bool Retransmit
Definition:
StaticIpplInfo.h:67
StaticIpplInfo::PrintStats
bool PrintStats
Definition:
StaticIpplInfo.h:58
StaticIpplInfo::ChunkSize
int ChunkSize
Definition:
StaticIpplInfo.h:89
StaticIpplInfo::CommInitialized
bool CommInitialized
Definition:
StaticIpplInfo.h:54
StaticIpplInfo::Error
Inform * Error
Definition:
StaticIpplInfo.h:28
StaticIpplInfo::offsetStorage
bool offsetStorage
Definition:
StaticIpplInfo.h:40
StaticIpplInfo::Comm
Communicate * Comm
Definition:
StaticIpplInfo.h:21
Generated on Tue Jul 2 2024 15:05:16 for OPAL (Object Oriented Parallel Accelerator Library) by
1.8.5