00001 /* 00002 * This class implements a dummy load balancer. One application is to provide a distributed 00003 * load balancer by means of the hybrid approach, where the first level doesn't balance 00004 * the load at all. 00005 */ 00006 00007 #ifndef _NAMDDUMMYLB_H_ 00008 #define _NAMDDUMMYLB_H_ 00009 00010 #include <CentralLB.h> 00011 #include "NamdDummyLB.decl.h" 00012 00013 #include "Node.h" 00014 #include "PatchMap.h" 00015 #include "SimParameters.h" 00016 #include "RefineOnly.h" 00017 #include "Alg7.h" 00018 #include "AlgRecBisection.h" 00019 #include "InfoStream.h" 00020 #include "TorusLB.h" 00021 #include "RefineTorusLB.h" 00022 00023 class NamdDummyLB : public CentralLB { 00024 00025 public: 00026 NamdDummyLB(); 00027 NamdDummyLB(CkMigrateMessage *); 00028 #if CHARM_VERSION > 60301 00029 void work(LDStats* stats); 00030 #else 00031 void work(LDStats* stats, int n_pes); 00032 #endif 00033 00034 private: 00035 bool QueryBalanceNow(int step); 00036 bool QueryDumpData(); 00037 00038 }; 00039 00040 void CreateNamdDummyLB(); 00041 NamdDummyLB *AllocateNamdDummyLB(); 00042 00043 #endif /* _NAMDDUMMYLB_H_ */
1.3.9.1