OpenAtom
Version1.5a
|
Defining all the Charm++ readonly variables, which include proxies. More...
Functions | |
CkHashtableT< intdual, int > | GSmaptable (10000, 0.25) |
CkHashtableT< intdual, int > | RSmaptable (10000, 0.25) |
CkHashtableT< intdual, int > | RPPmaptable (10000, 0.25) |
CkHashtableT< intdual, int > | AsymScalcmaptable (10000, 0.25) |
CkHashtableT< intdual, int > | SymScalcmaptable (10000, 0.25) |
Variables | |
bool | firstInstance = true |
int | numInst =0 |
CkVec< int > | PIBImaptable |
INT_MAPs are the ones actually used so these are being changed to CkVec's for beads. | |
CkVec< MapType1 > | AtomImaptable |
CkVec< MapType2 > | GSImaptable |
CkVec< MapType2 > | RSImaptable |
CkVec< MapType2 > | RPPImaptable |
CkVec< MapType2 > | RhoGSImaptable |
CkVec< MapType2 > | RhoRSImaptable |
CkVec< MapType2 > | RhoGHartImaptable |
CkVec< MapType3 > | RhoRHartImaptable |
CkVec< MapType2 > | LSPRhoRSImaptable |
CkVec <MapType1> LSPRhoGSImaptable;. | |
CkHashtableT< intdual, int > | RhoGSmaptable |
CkHashtableT< intdual, int > | RhoRSmaptable |
CkHashtableT< intdual, int > | RhoGHartmaptable |
CkHashtableT< inttriple, int > | RhoRHartmaptable |
CkHashtableT< intdual, int > | Orthomaptable |
CkHashtableT< intdual, int > | OrthoHelpermaptable |
CProxy_main | mainProxy |
CProxy_PhysScratchCache | pScratchProxy |
Config | config |
addtogroup Uber More... | |
CProxy_TimeKeeper | TimeKeeperProxy |
CProxy_InstanceController | instControllerProxy |
CProxy_TemperController | temperControllerProxy |
CProxy_ENL_EKE_Collector | ENLEKECollectorProxy |
CPcharmParaInfo | simReadOnly |
Defining all the Charm++ readonly variables, which include proxies.
to access the arrays and groups and the Communication Library handles.
Config config |
addtogroup Uber
Uber Arrays connect multiple arrays by referring to them by Uber Indexed collections. So all elements which have Uarr[i][j][k] are one logical instance.
Where we formerly had readonly proxies we now have readonly CkVec's of proxies. Each index tuple (i,j,k) will have an associated proxyOffset (PO). someProxy[PO] will have the proxy for the tuple associated with PO for all proxies.
POs will be assigned using a dense 3D enumeration with k the innermost. So the PO is always derivable from the tuple and visa versa, but we keep PO to avoid recalculation overhead. No race condition for the ID space. Not that this matters since we don't have a scenario in which we create instances in parallel.
PO=(i*Jmax+j) * Kmax +k;
In practice, typical array objects only need a minority subset of the proxies in their instance, and perhaps 1 proxy outside their instance. These can be constructed local to the object without a great proliferation of proxies. They simply copy the proxy from someProxy[proxyOffset] for frequently used proxies.
Definition at line 58 of file mapvariables.h.
CProxy_InstanceController instControllerProxy |
Definition at line 60 of file mapvariables.h.
Referenced by CP_State_RealSpacePlane::init(), and CP_State_RealParticlePlane::initComplete().