Functions | |
def | calc_MinMaxAvgRMS |
def | calcRMS |
def | extractRSS_VSIZE |
def | loadTimeLog |
def | manual_run |
def | perf_profile |
def | processModuleTimeLogData |
mod_data["stats"] =calc_MinMaxAvgRMS(f_time = lambda x: x["time"], f_evt_num = lambda x: x["event_number"], items = times_bymod[mod_name]) More... | |
def parserTimingReport.calc_MinMaxAvgRMS | ( | items, | |
remove_first = True , |
|||
f_time = lambda x: x[0] , |
|||
f_evt_num = lambda x: x[1] |
|||
) |
returns a dict of avg, min, max, rms
Definition at line 126 of file parserTimingReport.py.
References calcRMS(), Association.map, max(), and min.
Referenced by processModuleTimeLogData().
def parserTimingReport.calcRMS | ( | items, | |
avg | |||
) |
returns RootMeanSquare of items in a list
Definition at line 119 of file parserTimingReport.py.
Referenced by calc_MinMaxAvgRMS().
def parserTimingReport.extractRSS_VSIZE | ( | line1, | |
line2 | |||
) |
>>> extractRSS_VSIZE("%MSG-w MemoryCheck: PostModule 19-Jun-2009 13:06:08 CEST Run: 1 Event: 1", \ "MemoryCheck: event : VSIZE 923.07 0 RSS 760.25 0") (('1', '760.25'), ('1', '923.07'))
Definition at line 29 of file parserTimingReport.py.
References split, and strip().
Referenced by loadTimeLog().
def parserTimingReport.loadTimeLog | ( | log_filename, | |
maxsize_rad = 0 |
|||
) |
gets the timing data from the logfile returns 4 lists: * ModuleTime data (event_number, module_label, module_name, seconds) and * EventTime data - with granularity of event (initial - not processed data) * RSS per event * VSIZE per event
Definition at line 48 of file parserTimingReport.py.
References extractRSS_VSIZE().
Referenced by manual_run(), perf_profile(), and cmsPerfSuiteHarvest.process_timesize_dir().
def parserTimingReport.manual_run | ( | ) |
Definition at line 230 of file parserTimingReport.py.
References cmssw_exportdb_xml.export_xml(), FileNamesHelper.getJobID_fromTimeReportLogName(), loadTimeLog(), and processModuleTimeLogData().
def parserTimingReport.perf_profile | ( | ) |
Definition at line 259 of file parserTimingReport.py.
References cmssw_exportdb_xml.export_xml(), FileNamesHelper.getJobID_fromTimeReportLogName(), loadTimeLog(), processModuleTimeLogData(), and MCScenario_CRAFT1_22X.write_xml().
def parserTimingReport.processModuleTimeLogData | ( | modules_timelog, | |
groupBy = "module_name" |
|||
) |
mod_data["stats"] =calc_MinMaxAvgRMS(f_time = lambda x: x["time"], f_evt_num = lambda x: x["event_number"], items = times_bymod[mod_name])
Processes the timelog data grouping events by module and calculates min, max, avg, rms Returns data as a list of dicts like: ! { <module_name>: {name:, label:, stats: {num_events, avg, min, max, rms} }
mod_data["stats"]["num_events"] = len(times_bymod[mod_name])
times_bymod[mod_name] = mod_data Let's rewrite this using the dictionary we now have without any logical change (could do with some...):
Definition at line 147 of file parserTimingReport.py.
References python.multivaluedict.append(), calc_MinMaxAvgRMS(), relativeConstraints.keys, and update.
Referenced by manual_run(), perf_profile(), and cmsPerfSuiteHarvest.process_timesize_dir().