CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Functions
parserTimingReport Namespace Reference

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...
 

Function Documentation

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 141 of file parserTimingReport.py.

def parserTimingReport.calcRMS (   items,
  avg 
)
returns RootMeanSquare  of items in a list 

Definition at line 134 of file parserTimingReport.py.

def parserTimingReport.extractRSS_VSIZE (   line1,
  line2,
  record_number 
)
>>> 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.

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 50 of file parserTimingReport.py.

def parserTimingReport.manual_run ( )

Definition at line 245 of file parserTimingReport.py.

def parserTimingReport.perf_profile ( )

Definition at line 274 of file parserTimingReport.py.

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 162 of file parserTimingReport.py.