Classes | |
class | PerfTest |
class | simpleGenReportThread |
Public Member Functions | |
def | __init__ |
def | benchmarks |
Run cmsScimark benchmarks a number of times. More... | |
def | cprootfile |
Copy root file from another candle's directory ! Again this is messy. More... | |
def | createIgVolume |
def | displayErrors |
Display G4 cerr errors and CMSExceptions in the logfile. More... | |
def | getDate |
def | mkCandleDir |
Make directory for a particular candle and profiler. More... | |
def | optionParse |
def | printDate |
def | printFlush |
Print and flush a string (for output to a log file) More... | |
def | runcmd |
Run a command and return the exit status. More... | |
def | runCmdSet |
Run a list of commands using system ! We should rewrite this not to use system (most cases it is unnecessary) More... | |
def | runCmsInput |
Wrapper for cmsRelvalreportInput. More... | |
def | runCmsReport |
This function is a wrapper around cmsRelvalreport. More... | |
def | runPerfSuite |
Runs benchmarking, cpu spinlocks on spare cores and profiles selected candles. More... | |
def | simpleGenReport |
Prepares the profiling directory and runs all the selected profiles (if this is not a unit test) More... | |
def | testCmsDriver |
Test cmsDriver.py (parses the simcandles file, removing duplicate lines, and runs the cmsDriver part) More... | |
def | valFilterReport |
Filter lines in the valgrind report that match GEN,SIM. More... | |
Public Attributes | |
AuxiliaryScripts | |
cmssw_arch | |
cmssw_version | |
Commands | |
ERRORS | |
HEPSPEC06 | |
host | |
logh | |
PerfTestTotalTimer | |
FIXME: We may want to introduce a switch here or agree on a different default (currently 10 cmsScimark and 10 cmsScimarkLarge) More... | |
Scripts | |
user | |
Private Attributes | |
_CASTOR_DIR | |
_debug | |
Developer options. More... | |
_dryrun | |
_noexec | |
_unittest | |
_verbose | |
Check logfile option. More... | |
Definition at line 60 of file cmsPerfSuite.py.
def cmsPerfSuite.PerfSuite.__init__ | ( | self | ) |
Definition at line 61 of file cmsPerfSuite.py.
def cmsPerfSuite.PerfSuite.benchmarks | ( | self, | |
cpu, | |||
pfdir, | |||
name, | |||
bencher, | |||
large = False |
|||
) |
Run cmsScimark benchmarks a number of times.
Definition at line 691 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite.Commands, cmsPerfSuite.PerfSuite.printFlush(), and cmsPerfSuite.PerfSuite.runcmd().
def cmsPerfSuite.PerfSuite.cprootfile | ( | self, | |
dir, | |||
candle, | |||
NumOfEvents, | |||
cmsdriverOptions = "" |
|||
) |
Copy root file from another candle's directory ! Again this is messy.
Definition at line 612 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite.printFlush(), and cmsPerfSuite.PerfSuite.runCmdSet().
def cmsPerfSuite.PerfSuite.createIgVolume | ( | self | ) |
Definition at line 109 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite.cmssw_arch, and cmsPerfSuite.PerfSuite.cmssw_version.
def cmsPerfSuite.PerfSuite.displayErrors | ( | self, | |
file | |||
) |
Display G4 cerr errors and CMSExceptions in the logfile.
Definition at line 632 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite.ERRORS.
Referenced by cmsPerfSuite.PerfSuite.simpleGenReport().
def cmsPerfSuite.PerfSuite.getDate | ( | self | ) |
Definition at line 592 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.printDate(), and cmsPerfSuite.PerfSuite.runCmdSet().
def cmsPerfSuite.PerfSuite.mkCandleDir | ( | self, | |
pfdir, | |||
candle, | |||
profiler | |||
) |
Make directory for a particular candle and profiler.
! This is really unnecessary code and should be replaced with a os.mkdir() call
Definition at line 601 of file cmsPerfSuite.py.
References ClusterTPAssociationProducer._verbose, HiHelperTools.MassSearchReplaceParamVisitor._verbose, HTMHTAnalyzer._verbose, HiHelperTools.MassSearchReplaceAnyInputTagVisitor._verbose, cmsPerfSuite.PerfSuite._verbose, ClusterAnalyzer._verbose, TcMETAnalyzer._verbose, MuCorrMETAnalyzer._verbose, helpers.MassSearchReplaceParamVisitor._verbose, PFMETAnalyzer._verbose, METAnalyzer._verbose, CaloMETAnalyzer._verbose, helpers.MassSearchReplaceAnyInputTagVisitor._verbose, ConfigBuilder.ConfigBuilder.MassSearchReplaceProcessNameVisitor._verbose, cmsPerfSuite.PerfSuite.printDate(), and cmsPerfSuite.PerfSuite.runcmd().
Referenced by cmsPerfSuite.PerfSuite.simpleGenReport().
def cmsPerfSuite.PerfSuite.optionParse | ( | self, | |
argslist = None |
|||
) |
Definition at line 154 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite._CASTOR_DIR, EcalMatacqAnalyzer._debug, LMFDefFabric._debug, cmsPerfSuite.PerfSuite._debug, EcalABAnalyzer._debug, EcalLaserAnalyzer2._debug, EcalLaserAnalyzer._debug, DTBtiCard._debug, DTTracoCard._debug, DTTrigGeom._debug, DTTrig._debug, cmsPerfSuite.PerfSuite._dryrun, cmsPerfSuite.PerfSuite._noexec, cmsPerfSuite.PerfSuite._unittest, ClusterTPAssociationProducer._verbose, HiHelperTools.MassSearchReplaceParamVisitor._verbose, HTMHTAnalyzer._verbose, HiHelperTools.MassSearchReplaceAnyInputTagVisitor._verbose, cmsPerfSuite.PerfSuite._verbose, ClusterAnalyzer._verbose, MuCorrMETAnalyzer._verbose, TcMETAnalyzer._verbose, helpers.MassSearchReplaceParamVisitor._verbose, PFMETAnalyzer._verbose, METAnalyzer._verbose, CaloMETAnalyzer._verbose, helpers.MassSearchReplaceAnyInputTagVisitor._verbose, ConfigBuilder.ConfigBuilder.MassSearchReplaceProcessNameVisitor._verbose, cmsCpuInfo.get_NumOfCores(), join(), list(), python.multivaluedict.map(), EcalTPGParamReaderFromDB.user, popcon::RpcDataV.user, popcon::RpcObGasData.user, popcon::RpcDataT.user, popcon::RPCObPVSSmapData.user, popcon::RpcDataS.user, popcon::RpcDataI.user, popcon::RpcDataUXC.user, popcon::RpcDataFebmap.user, popcon::RpcDataGasMix.user, MatrixInjector.MatrixInjector.user, cmsPerfSuite.PerfSuite.user, and EcalDBConnection.user.
def cmsPerfSuite.PerfSuite.printDate | ( | self | ) |
Definition at line 595 of file cmsPerfSuite.py.
References FittedEntriesSet.getDate(), results_db.ResultsDB.getDate(), and cmsPerfSuite.PerfSuite.getDate().
Referenced by cmsPerfSuite.PerfSuite.mkCandleDir().
def cmsPerfSuite.PerfSuite.printFlush | ( | self, | |
command | |||
) |
Print and flush a string (for output to a log file)
Definition at line 558 of file cmsPerfSuite.py.
References ClusterTPAssociationProducer._verbose, HiHelperTools.MassSearchReplaceParamVisitor._verbose, HTMHTAnalyzer._verbose, HiHelperTools.MassSearchReplaceAnyInputTagVisitor._verbose, cmsPerfSuite.PerfSuite._verbose, ClusterAnalyzer._verbose, TcMETAnalyzer._verbose, MuCorrMETAnalyzer._verbose, helpers.MassSearchReplaceParamVisitor._verbose, PFMETAnalyzer._verbose, METAnalyzer._verbose, CaloMETAnalyzer._verbose, helpers.MassSearchReplaceAnyInputTagVisitor._verbose, and ConfigBuilder.ConfigBuilder.MassSearchReplaceProcessNameVisitor._verbose.
Referenced by cmsPerfSuite.PerfSuite.benchmarks(), cmsPerfSuite.PerfSuite.cprootfile(), cmsPerfSuite.PerfSuite.runCmdSet(), and cmsPerfSuite.PerfSuite.simpleGenReport().
def cmsPerfSuite.PerfSuite.runcmd | ( | self, | |
command | |||
) |
Run a command and return the exit status.
Definition at line 566 of file cmsPerfSuite.py.
References ClusterTPAssociationProducer._verbose, HiHelperTools.MassSearchReplaceParamVisitor._verbose, HTMHTAnalyzer._verbose, HiHelperTools.MassSearchReplaceAnyInputTagVisitor._verbose, cmsPerfSuite.PerfSuite._verbose, ClusterAnalyzer._verbose, TcMETAnalyzer._verbose, MuCorrMETAnalyzer._verbose, helpers.MassSearchReplaceParamVisitor._verbose, PFMETAnalyzer._verbose, METAnalyzer._verbose, CaloMETAnalyzer._verbose, helpers.MassSearchReplaceAnyInputTagVisitor._verbose, and ConfigBuilder.ConfigBuilder.MassSearchReplaceProcessNameVisitor._verbose.
Referenced by cmsPerfSuite.PerfSuite.benchmarks(), cmsPerfSuite.PerfSuite.mkCandleDir(), and cmsPerfSuite.PerfSuite.runCmdSet().
def cmsPerfSuite.PerfSuite.runCmdSet | ( | self, | |
cmd | |||
) |
Run a list of commands using system ! We should rewrite this not to use system (most cases it is unnecessary)
Definition at line 540 of file cmsPerfSuite.py.
References ClusterTPAssociationProducer._verbose, HiHelperTools.MassSearchReplaceParamVisitor._verbose, HTMHTAnalyzer._verbose, HiHelperTools.MassSearchReplaceAnyInputTagVisitor._verbose, cmsPerfSuite.PerfSuite._verbose, ClusterAnalyzer._verbose, TcMETAnalyzer._verbose, MuCorrMETAnalyzer._verbose, helpers.MassSearchReplaceParamVisitor._verbose, PFMETAnalyzer._verbose, METAnalyzer._verbose, CaloMETAnalyzer._verbose, helpers.MassSearchReplaceAnyInputTagVisitor._verbose, ConfigBuilder.ConfigBuilder.MassSearchReplaceProcessNameVisitor._verbose, FittedEntriesSet.getDate(), results_db.ResultsDB.getDate(), cmsPerfSuite.PerfSuite.getDate(), join(), cmsPerfSuite.PerfSuite.printFlush(), and cmsPerfSuite.PerfSuite.runcmd().
Referenced by cmsPerfSuite.PerfSuite.cprootfile(), cmsPerfSuite.PerfSuite.runCmsInput(), cmsPerfSuite.PerfSuite.runCmsReport(), and cmsPerfSuite.PerfSuite.testCmsDriver().
def cmsPerfSuite.PerfSuite.runCmsInput | ( | self, | |
cpu, | |||
dir, | |||
numevents, | |||
candle, | |||
cmsdrvopts, | |||
stepopt, | |||
profiles, | |||
bypasshlt, | |||
userInputFile | |||
) |
Wrapper for cmsRelvalreportInput.
Definition at line 763 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite._unittest, cmsPerfSuite.PerfSuite.Commands, and cmsPerfSuite.PerfSuite.runCmdSet().
Referenced by cmsPerfSuite.PerfSuite.simpleGenReport().
def cmsPerfSuite.PerfSuite.runCmsReport | ( | self, | |
cpu, | |||
dir, | |||
candle | |||
) |
This function is a wrapper around cmsRelvalreport.
Definition at line 713 of file cmsPerfSuite.py.
References EcalMatacqAnalyzer._debug, LMFDefFabric._debug, cmsPerfSuite.PerfSuite._debug, EcalABAnalyzer._debug, EcalLaserAnalyzer2._debug, EcalLaserAnalyzer._debug, DTBtiCard._debug, DTTracoCard._debug, DTTrigGeom._debug, DTTrig._debug, cmsPerfSuite.PerfSuite._unittest, cmsPerfSuite.PerfSuite.cmssw_version, cmsPerfSuite.PerfSuite.Commands, reco.return(), and cmsPerfSuite.PerfSuite.runCmdSet().
Referenced by cmsPerfSuite.PerfSuite.simpleGenReport().
def cmsPerfSuite.PerfSuite.runPerfSuite | ( | self, | |
create = False , |
|||
castordir = "/castor/cern.ch/cms/store/relval/performance/" , |
|||
TimeSizeEvents = 100 , |
|||
IgProfEvents = 5 , |
|||
CallgrindEvents = 1 , |
|||
MemcheckEvents = 5 , |
|||
cmsScimark = 10 , |
|||
cmsScimarkLarge = 10 , |
|||
cmsdriverOptions = "" , |
|||
cmsdriverPUOptions = "" , |
|||
stepOptions = "" , |
|||
quicktest = False , |
|||
profilers = "" , |
|||
cpus = [1] , |
|||
cpu_list = [1] , |
|||
cores = 4 , |
|||
prevrel = "" , |
|||
bypasshlt = False , |
|||
runonspare = True , |
|||
perfsuitedir = os.getcwd() , |
|||
logfile = None , |
|||
TimeSizeCandles = "" , |
|||
IgProfCandles = "" , |
|||
CallgrindCandles = "" , |
|||
MemcheckCandles = "" , |
|||
TimeSizePUCandles = "" , |
|||
IgProfPUCandles = "" , |
|||
CallgrindPUCandles = "" , |
|||
MemcheckPUCandles = "" , |
|||
PUInputFile = "" , |
|||
userInputFile = "" , |
|||
MailLogRecipients = "" , |
|||
tarball = "" |
|||
) |
Runs benchmarking, cpu spinlocks on spare cores and profiles selected candles.
FIXME: Could redesign interface of functions to use keyword arguments: def runPerfSuite(**opts): then instead of using castordir variable, would use opts['castordir'] etc
Definition at line 926 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite.logh.
Referenced by cmsPerfSuite.PerfSuite.simpleGenReport().
def cmsPerfSuite.PerfSuite.simpleGenReport | ( | self, | |
cpus, | |||
perfdir = os.getcwd() , |
|||
NumEvents = 1 , |
|||
candles = ['MinBias'] , |
|||
cmsdriverOptions = '' , |
|||
stepOptions = '' , |
|||
Name = '' , |
|||
profilers = '' , |
|||
bypasshlt = '' , |
|||
userInputRootFiles = '' |
|||
) |
Prepares the profiling directory and runs all the selected profiles (if this is not a unit test)
Making parameters named to facilitate the handling of arguments (especially with the threading use case)
Definition at line 792 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite._noexec, cmsPerfSuite.PerfSuite._unittest, cmsPerfSuite.PerfSuite.displayErrors(), cmsPerfSuite.PerfSuite.mkCandleDir(), cmsPerfSuite.PerfSuite.printFlush(), cmsPerfSuite.PerfSuite.runCmsInput(), cmsPerfSuite.PerfSuite.runCmsReport(), cmsPerfSuite.PerfSuite.runPerfSuite(), cmsPerfSuite.PerfSuite.testCmsDriver(), and update.
def cmsPerfSuite.PerfSuite.testCmsDriver | ( | self, | |
cpu, | |||
dir, | |||
cmsver, | |||
candle | |||
) |
Test cmsDriver.py (parses the simcandles file, removing duplicate lines, and runs the cmsDriver part)
Definition at line 730 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite._dryrun, cmsPerfSuite.PerfSuite.Commands, and cmsPerfSuite.PerfSuite.runCmdSet().
Referenced by cmsPerfSuite.PerfSuite.simpleGenReport().
def cmsPerfSuite.PerfSuite.valFilterReport | ( | self, | |
dir | |||
) |
Filter lines in the valgrind report that match GEN,SIM.
Definition at line 648 of file cmsPerfSuite.py.
References cmsPerfSuite.PerfSuite.cmssw_version.
|
private |
Definition at line 67 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.optionParse().
|
private |
Developer options.
Definition at line 69 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.optionParse(), and cmsPerfSuite.PerfSuite.runCmsReport().
|
private |
Definition at line 68 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.optionParse(), and cmsPerfSuite.PerfSuite.testCmsDriver().
|
private |
Definition at line 71 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.optionParse(), and cmsPerfSuite.PerfSuite.simpleGenReport().
|
private |
Definition at line 70 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.optionParse(), cmsPerfSuite.PerfSuite.runCmsInput(), cmsPerfSuite.PerfSuite.runCmsReport(), and cmsPerfSuite.PerfSuite.simpleGenReport().
|
private |
Check logfile option.
Check step Options Check profile option Check output directory option Check cpu option Check previous release directory Setup quicktest option Setup unit test option
Definition at line 72 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.mkCandleDir(), cmsPerfSuite.PerfSuite.optionParse(), cmsPerfSuite.PerfSuite.printFlush(), cmsPerfSuite.PerfSuite.runcmd(), and cmsPerfSuite.PerfSuite.runCmdSet().
cmsPerfSuite.PerfSuite.AuxiliaryScripts |
Definition at line 89 of file cmsPerfSuite.py.
cmsPerfSuite.PerfSuite.cmssw_arch |
Definition at line 77 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.createIgVolume().
cmsPerfSuite.PerfSuite.cmssw_version |
Definition at line 78 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.createIgVolume(), cmsPerfSuite.PerfSuite.runCmsReport(), and cmsPerfSuite.PerfSuite.valFilterReport().
cmsPerfSuite.PerfSuite.Commands |
Definition at line 1024 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.benchmarks(), cmsPerfSuite.PerfSuite.runCmsInput(), cmsPerfSuite.PerfSuite.runCmsReport(), and cmsPerfSuite.PerfSuite.testCmsDriver().
cmsPerfSuite.PerfSuite.ERRORS |
Definition at line 63 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.displayErrors().
cmsPerfSuite.PerfSuite.HEPSPEC06 |
Definition at line 940 of file cmsPerfSuite.py.
cmsPerfSuite.PerfSuite.host |
Definition at line 79 of file cmsPerfSuite.py.
cmsPerfSuite.PerfSuite.logh |
Definition at line 73 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.runPerfSuite().
cmsPerfSuite.PerfSuite.PerfTestTotalTimer |
FIXME: We may want to introduce a switch here or agree on a different default (currently 10 cmsScimark and 10 cmsScimarkLarge)
PERF## Prepare the simpleGenReport arguments for this test: MEM## Prepare the simpleGenReport arguments for this test: PERF## Prepare the simpleGenReport arguments for this test: MEM## Prepare the simpleGenReport arguments for this test:
Definition at line 1423 of file cmsPerfSuite.py.
cmsPerfSuite.PerfSuite.Scripts |
Definition at line 88 of file cmsPerfSuite.py.
cmsPerfSuite.PerfSuite.user |
Definition at line 80 of file cmsPerfSuite.py.
Referenced by cmsPerfSuite.PerfSuite.optionParse().