NAMD
Sync.h
Go to the documentation of this file.
1 
8 /*
9  Master BOC. coordinates startup, close down of each PE
10  Also owns pointers to common objects needed by system
11  Many utility static methods are owned by Node.
12 */
13 
14 #ifndef _SYNC_H
15 #define _SYNC_H
16 
17 #include "charm++.h"
18 
19 #include "ProcessorPrivate.h"
20 #include "Sync.decl.h"
21 
22 class Sync : public CBase_Sync
23 {
24 private:
25  struct _clist {
26  int pid;
27  int step;
28  Compute **cbegin;
29  Compute **cend;
30  int doneMigration;
31  } *clist;
32  const int INCREASE;
33  int capacity;
34 
35  int useSync, useProxySync;
36 
37  int step;
38  int counter;
39  int cnum;
40  int nPatcheReady;
41  int numPatches;
42 
43  char homeReady;
44 
45  void releaseComputes();
46  void triggerCompute();
47 public:
48  Sync(void);
49  ~Sync(void);
50  inline static Sync *Object() { return CkpvAccess(Sync_instance); }
51  void openSync();
52  int holdComputes(PatchID pid, Compute **cbegin, Compute **cend, int doneMigration, int seq);
53  void PatchReady(void);
54 };
55 
56 #endif
Sync(void)
Definition: Sync.C:42
~Sync(void)
Definition: Sync.C:58
void openSync()
Definition: Sync.C:63
Definition: Sync.h:22
static Sync * Object()
Definition: Sync.h:50
int PatchID
Definition: NamdTypes.h:182
void PatchReady(void)
Definition: Sync.C:150
int holdComputes(PatchID pid, Compute **cbegin, Compute **cend, int doneMigration, int seq)
Definition: Sync.C:103