NAMD
ProcessorPrivate.C
Go to the documentation of this file.
1 
7 #include "ProcessorPrivate.h"
8 #include "Debug.h"
9 #include "InfoStream.h"
10 
11 /*
12  * Variable Definitions
13  */
14 
15 // Instance Variables that maintain singletonness of classes
16 
17 CkpvDeclare(AtomMap*, AtomMap_instance);
18 CkpvDeclare(BroadcastMgr*, BroadcastMgr_instance);
19 CkpvDeclare(CollectionMaster*, CollectionMaster_instance);
20 CkpvDeclare(CollectionMgr*, CollectionMgr_instance);
21 CkpvDeclare(LdbCoordinator*, LdbCoordinator_instance);
22 CkpvDeclare(Node*, Node_instance);
23 CkpvDeclare(PatchMap*, PatchMap_instance);
24 CkpvDeclare(PatchMgr*, PatchMgr_instance);
25 CkpvDeclare(ProxyMgr*, ProxyMgr_instance);
26 CkpvDeclare(ReductionMgr*, ReductionMgr_instance);
27 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
28 CkpvDeclare(GlobalGPUMgr*, GlobalGPUMgr_instance);
29 CkpvDeclare(SynchronousCollectives*, SynchronousCollectives_instance);
30 CkpvDeclare(SequencerCUDA*, SequencerCUDA_instance);
31 #endif
32 
33 #ifdef PROCTRACE_DEBUG
34 CkpvDeclare(DebugFileTrace*, DebugFileTrace_instance);
35 #endif
36 
37 #ifdef NODEGROUP_FORCE_REGISTER
38 CkpvDeclare(ComputeGlobalResultsMsg*, ComputeGlobalResultsMsg_instance);
39 #endif
40 
41 // Other static variables
42 
43 CkpvDeclare(PatchMgr*, PatchMap_patchMgr);
44 CkpvDeclare(BOCgroup, BOCclass_group);
45 CkpvDeclare(Communicate*, comm);
46 CkpvDeclare(Sync*, Sync_instance);
47 CkpvDeclare(infostream, iout_obj);
48 
49 //handlers for replica communication
50 CkpvDeclare(int, recv_data_idx);
51 CkpvDeclare(int, recv_ack_idx);
52 CkpvDeclare(int, recv_bcast_idx);
53 CkpvDeclare(int, recv_red_idx);
54 CkpvDeclare(int, recv_eval_command_idx);
55 CkpvDeclare(int, recv_eval_result_idx);
56 CkpvDeclare(int, recv_replica_dcd_init_idx);
57 CkpvDeclare(int, recv_replica_dcd_data_idx);
58 CkpvDeclare(int, recv_replica_dcd_ack_idx);
59 
61 
62 /*
63  * Initialization Function to be called on every processor
64  */
65 
67 {
68  CkpvInitialize(AtomMap*, AtomMap_instance);
69  CkpvAccess(AtomMap_instance) = 0;
70  CkpvInitialize(BroadcastMgr*, BroadcastMgr_instance);
71  CkpvAccess(BroadcastMgr_instance) = 0;
72  CkpvInitialize(CollectionMaster*, CollectionMaster_instance);
73  CkpvAccess(CollectionMaster_instance) = 0;
74  CkpvInitialize(CollectionMgr*, CollectionMgr_instance);
75  CkpvAccess(CollectionMgr_instance) = 0;
76  CkpvInitialize(LdbCoordinator*, LdbCoordinator_instance);
77  CkpvAccess(LdbCoordinator_instance) = 0;
78  CkpvInitialize(Node*, Node_instance);
79  CkpvAccess(Node_instance) = 0;
80 
81  CkpvInitialize(PatchMap*, PatchMap_instance);
82  CkpvAccess(PatchMap_instance) = 0;
83  CkpvInitialize(PatchMgr*, PatchMgr_instance);
84  CkpvAccess(PatchMgr_instance) = 0;
85  CkpvInitialize(ProxyMgr*, ProxyMgr_instance);
86  CkpvAccess(ProxyMgr_instance) = 0;
87  CkpvInitialize(ReductionMgr*, ReductionMgr_instance);
88  CkpvAccess(ReductionMgr_instance) = 0;
89  CkpvInitialize(PatchMgr*, PatchMap_patchMgr);
90  CkpvAccess(PatchMap_patchMgr) = 0;
91  CkpvInitialize(BOCgroup, BOCclass_group);
92  CkpvAccess(BOCclass_group).dataExchanger.setZero();
93  CkpvInitialize(Communicate*, comm);
94  CkpvAccess(comm) = 0;
95  CkpvInitialize(Sync*, Sync_instance);
96  CkpvAccess(Sync_instance) = 0;
97  CkpvInitialize(infostream, iout_obj);
99 
100 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
101  CkpvInitialize(GlobalGPUMgr*, GlobalGPUMgr_instance);
102  CkpvAccess(GlobalGPUMgr_instance) = 0;
103  CkpvInitialize(SynchronousCollectives*, SynchronousCollectives_instance);
104  CkpvAccess(SynchronousCollectives_instance) = 0;
105  CkpvInitialize(SequencerCUDA*, SequencerCUDA_instance);
106  CkpvAccess(SequencerCUDA_instance) = 0;
107 #endif
108 
109 #ifdef PROCTRACE_DEBUG
110  CkpvInitialize(DebugFileTrace*, DebugFileTrace_instance);
111  CkpvAccess(DebugFileTrace_instance) = 0;
112 #endif
113 
114 #ifdef NODEGROUP_FORCE_REGISTER
115  CkpvInitialize(ComputeGlobalResultsMsg*, ComputeGlobalResultsMsg_instance);
116  CkpvAccess(ComputeGlobalResultsMsg_instance) = nullptr;
117 #endif
118 
119 }
Definition: Node.h:78
Definition: Sync.h:24
void ProcessorPrivateInit(void)
CkpvDeclare(AtomMap *, AtomMap_instance)
void initializeReplicaConverseHandlers()