Merge branch 'charm' of charmgit:charm into charm
[charm.git] / src / ck-cp / controlPoints.ci
1 module ControlPoints {
2
3   readonly CProxy_controlPointManager controlPointManagerProxy;
4   readonly int random_seed;
5   readonly long controlPointSamplePeriod;
6   readonly int whichTuningScheme;
7   readonly bool shouldGatherMemoryUsage;
8   readonly bool shouldGatherUtilization;
9   readonly bool shouldGatherAll;
10   readonly char CPDataFilename[512];
11
12
13
14   initproc void registerCPReductions(void);     
15
16
17  message controlPointMsg { 
18          char data[];
19  };
20
21
22  message redistributor2DMsg {  
23         double data[]; 
24  }; 
25  
26
27   mainchare controlPointMain {
28     entry controlPointMain(CkArgMsg*);
29   };
30
31  initnode void controlPointInitNode();
32
33  group  [migratable]  controlPointManager {
34     entry controlPointManager();
35
36     entry [expedited] void requestMemoryUsage(CkCallback cb);
37     entry [expedited] void gatherMemoryUsage(CkReductionMsg *msg);
38
39     entry [expedited] void requestIdleTime(CkCallback cb);
40     entry [expedited] void gatherIdleTime(CkReductionMsg *msg);
41
42     entry [expedited] void requestAll(CkCallback cb);
43     entry [expedited] void gatherAll(CkReductionMsg *msg);
44   
45  }   
46
47
48  
49   array [2D] redistributor2D {
50    entry redistributor2D(void);
51
52    entry void startup();        
53    
54     entry void resizeGranules(int, int);
55     entry void receiveTransposeData(redistributor2DMsg *msg);
56
57   } 
58
59
60
61
62 };