doc: Add serial to list of ci file reserved words
[charm.git] / src / ck-perf / trace-summaryBOC.h
index b1b6f948580ddd427fee1aae8750c0ff609a2284..9e8463fa2c3a9f063126811556a816233624a227 100644 (file)
@@ -1,5 +1,6 @@
 #include "ckcallback-ccs.h"
 #include "TraceSummary.decl.h"
+#include <deque>
 
 extern CkGroupID traceSummaryGID;
 extern bool summaryCcsStreaming;
@@ -26,6 +27,8 @@ private:
   int  nBins;
   int nTracedPEs;
 
+  bool firstTime; // used to make sure traceEnableCCS only has an effect the first time.
+  double _maxBinSize; //the max bin size collected from all processors
 public:
   /* CCS support variables */
   int lastRequestedIndexBlock;
@@ -37,7 +40,7 @@ public:
 
 public:
   TraceSummaryBOC(void): count(0), bins(NULL), nBins(0), 
-    nTracedPEs(0), nextBinIndexCcs(0) {};
+    nTracedPEs(0), nextBinIndexCcs(0), firstTime(true) {};
   TraceSummaryBOC(CkMigrateMessage *m):CBase_TraceSummaryBOC(m) {};
   void startSumOnly();
   void askSummary(int size);
@@ -45,13 +48,18 @@ public:
 
   /* CCS support methods/entry methods */
   void initCCS();
-  void ccsClientRequest(CkCcsRequestMsg *m);
-  void ccsClientRequestUnsignedChar(CkCcsRequestMsg *m);
-  void ccsClientRequestSumDetailUnsignedChar(CkCcsRequestMsg *m);
-  void ccsClientRequestSumDetailCompressed(CkCcsRequestMsg *m);
+  void ccsRequestSummaryDouble(CkCcsRequestMsg *m);
+  void ccsRequestSummaryUnsignedChar(CkCcsRequestMsg *m);
+
+  void collectSummaryData(double startTime, double binSize, int numBins);
+  void summaryDataCollected(CkReductionMsg *);
+
+  void traceSummaryParallelShutdown(int pe);
+  void maxBinSize(CkReductionMsg *msg);
+  void shrink(double _maxBinSize);
+
+  void sumData(CkReductionMsg *msg);
 
-  void collectData(double startTime, double binSize, int numBins);
-  void dataCollected(CkReductionMsg *);
 private:
   void write();
 };