doc: Add serial to list of ci file reserved words
[charm.git] / src / ck-ldb / LBProfit.C
1 /**
2  * \addtogroup CkLdb
3 */
4 /*@{*/
5
6 #include "converse.h"
7
8 #include "LBProfit.h"
9
10 // a naive formular to determining if profitable
11 // if Lmax - Lavg less than a threshold, then skip LB
12 int LBProfit::profitable(BaseLB::ProcStats *procArray, int np)
13 {
14   int doit = 1;
15   double lmax = 0.0;
16   double ltotal = 0.0;
17   for (int i=0; i<np; i++) {
18     BaseLB::ProcStats &p = procArray[i];
19     // FIXME
20     double objTime = p.total_walltime - p.idletime - p.bg_walltime;
21     if (objTime > lmax) lmax = objTime;
22     ltotal += objTime;
23   }
24   double lavg = ltotal/np;
25   if ((lmax - lavg) / lavg < 0.01) doit = 0;
26
27   return doit;
28 }
29
30 /*@}*/