def main(): file15 = "HommeTime.1" file16 = "HommeTime.2" fifteenRanks = cpt.cesmTimeParser() sixteenRanks = cpt.cesmTimeParser() fifteenRanks.parseFile(file15) sixteenRanks.parseFile(file16) wallMax15 = fifteenRanks.getDataCol("wallmax") wallMax16 = sixteenRanks.getDataCol("wallmax") subNames = fifteenRanks.getRoutineNames() # fifteenRanks.printRunInfo() for i in range(len(wallMax15)): print " HommeTime.1", subNames[i], "took", wallMax15[i], "s" primRunList=[] for i in range(1,3): print i parser=cpt.cesmTimeParser() parser.parseFile("HommeTime." + str(i)) primRunList.append(parser.getDataEntry("prim_run","wallmax")) primRunArray=np.array(primRunList) print "avg = ", np.average(primRunArray) print "std = ", np.std(primRunArray)
def calcAvg(theDir,groupTime): #which thing to average and get std primRunList=[] numList=[] flist=os.listdir(".") for fileName in flist: if ("HommeTime." in fileName): suffix=fileName.split(".")[1] if (suffix.isdigit()): numList.append(int(suffix)) for i in numList: print i parser=cpt.cesmTimeParser() try: parser.parseFile("HommeTime." + str(i)) except: print "Error: There seems to be no HommeTime.<number> files." sys.exit(1) try: primRunList.append(parser.getDataEntry(groupTime,"wallmax")) except: print "Error: The " + groupTime + " seems not to be in the HommeTime files." sys.exit(1) num= len(numList) array=np.array(primRunList) avg = np.average(array) std = np.std(array) print "avg = ", avg print "std = ", std print " % = ", std/avg * 100 print "number of members = ", num return avg,std,array,num
def main(): file15 = "ccsm_timing_stats-stampede-15x2x8.13.gz" file16 = "ccsm_timing_stats-stampede-16x2x8.13.gz" fifteenRanks = cpt.cesmTimeParser() sixteenRanks = cpt.cesmTimeParser() fifteenRanks.parseFile(file15) sixteenRanks.parseFile(file16) wallMax15 = fifteenRanks.getDataCol("wallmax") wallMax16 = sixteenRanks.getDataCol("wallmax") subNames = fifteenRanks.getRoutineNames() # fifteenRanks.printRunInfo() for i in range(len(wallMax15)): print "15 Rank per node Routine", subNames[i], "took", wallMax15[i], "s" print "Wallmax ratio [15mpiranks/16mpiranks] time for DRIVER_INIT=", (fifteenRanks.getDataEntry("DRIVER_INIT","wallmax")/sixteenRanks.getDataEntry("DRIVER_INIT","wallmax")) print "Wallmax ratio [15mpiranks/16mpiranks] time for DRIVER_RUN_LOOP=", (fifteenRanks.getDataEntry("DRIVER_RUN_LOOP","wallmax")/sixteenRanks.getDataEntry("DRIVER_RUN_LOOP","wallmax"))
def main(): primRunList=[] numList=[] flist=os.listdir(".") for fileName in flist: if ("HommeTime" in fileName): suffix=fileName.split(".")[1] if (suffix.isdigit()): numList.append(int(suffix)) #for i in range(1,101): for i in numList: print i parser=cpt.cesmTimeParser() parser.parseFile("HommeTime." + str(i)) primRunList.append(parser.getDataEntry("prim_run","wallmax")) print "number of members = ", len(numList) primRunArray=np.array(primRunList) print "avg = ", np.average(primRunArray) print "std = ", np.std(primRunArray)