10 #include "TempAwareGreedyLB.decl.h"
12 void CreateTempAwareGreedyLB();
13 BaseLB
* AllocateTempAwareGreedyLB();
15 class TempAwareGreedyLB
: public CBase_TempAwareGreedyLB
{
24 TempAwareGreedyLB(const CkLBOptions
&);
25 TempAwareGreedyLB(CkMigrateMessage
*m
) : CBase_TempAwareGreedyLB(m
) { lbname
= "GreedyLB"; }
26 void work(LDStats
* stats
);
28 class ProcLoadGreater
;
31 enum HeapCmp
{GT
= '>', LT
= '<'};
32 void Heapify(HeapData
*, int, int, HeapCmp
);
33 void HeapSort(HeapData
*, int, HeapCmp
);
34 void BuildHeap(HeapData
*, int, HeapCmp
);
35 bool Compare(double, double, HeapCmp
);
36 HeapData
* BuildCpuArray(BaseLB::LDStats
*, int, int *);
37 HeapData
* BuildObjectArray(BaseLB::LDStats
*, int, int *);
38 bool QueryBalanceNow(int step
);
41 #endif /* _HEAPCENTLB_H_ */