Skip to content
Snippets Groups Projects
Commit c5a5c128 authored by Hasan Ozturk's avatar Hasan Ozturk
Browse files

code clean-up in the output formatting

parent 4e791219
11 merge requests!58791DataQualityConfigurations: Modify L1Calo config for web display,!46784MuonCondInterface: Enable thread-safety checking.,!46776Updated LArMonitoring config file for WD to match new files produced using MT,!45405updated ART test cron job,!42417Draft: DIRE and VINCIA Base Fragments for Pythia 8.3,!29703PerfMonMT: Reload Component Level Monitoring inside the Event Loop and Improve Reporting Format,!29682PerfMonMT: Reload Component Level Monitoring inside the Event Loop and Improve Reporting Format,!28044PerfMonMT: Update Event Loop Monitoring and add various improvements,!25790Add Memory Monitoring feature for serial steps to PerfMonMT as part of GSoC work,!25770Add Memory Monitoring feature for serial steps to PerfMonMT as part of GSoC work,!25237Adding Component Level Monitoring feature to PerfMonMT as part of GSoC work
...@@ -93,7 +93,8 @@ StatusCode PerfMonMTSvc::finalize(){ ...@@ -93,7 +93,8 @@ StatusCode PerfMonMTSvc::finalize(){
*/ */
void PerfMonMTSvc::startAud( const std::string& stepName, void PerfMonMTSvc::startAud( const std::string& stepName,
const std::string& compName ) { const std::string& compName ) {
/*
/*
* This if statement is temporary. It will be removed. * This if statement is temporary. It will be removed.
* In current implementation the very first thing called is stopAud function * In current implementation the very first thing called is stopAud function
* for PerfMonMTSvc. There are some components before it. We miss them. * for PerfMonMTSvc. There are some components before it. We miss them.
...@@ -102,7 +103,6 @@ void PerfMonMTSvc::startAud( const std::string& stepName, ...@@ -102,7 +103,6 @@ void PerfMonMTSvc::startAud( const std::string& stepName,
if( compName != "PerfMonMTSvc" ){ if( compName != "PerfMonMTSvc" ){
startSnapshotAud(stepName, compName); startSnapshotAud(stepName, compName);
//if (stepName == "Execute")
if( isLoop() && m_isEventLoopMonitoring == true) if( isLoop() && m_isEventLoopMonitoring == true)
startCompAud_MT(stepName, compName); startCompAud_MT(stepName, compName);
else else
...@@ -263,8 +263,7 @@ void PerfMonMTSvc::report2Stdout_Description(){ ...@@ -263,8 +263,7 @@ void PerfMonMTSvc::report2Stdout_Description(){
void PerfMonMTSvc::report2Stdout_Serial(){ void PerfMonMTSvc::report2Stdout_Serial(){
using boost::format; using boost::format;
int threshold = 5; // Do not print components whose measurements are below 5 ms
std::cout << "PerfMonMTSvc =======================================================================================" << std::endl; std::cout << "PerfMonMTSvc =======================================================================================" << std::endl;
std::cout << "PerfMonMTSvc Serial Component Level Monitoring " << std::endl; std::cout << "PerfMonMTSvc Serial Component Level Monitoring " << std::endl;
std::cout << "PerfMonMTSvc =======================================================================================" << std::endl; std::cout << "PerfMonMTSvc =======================================================================================" << std::endl;
...@@ -284,8 +283,7 @@ void PerfMonMTSvc::report2Stdout_Serial(){ ...@@ -284,8 +283,7 @@ void PerfMonMTSvc::report2Stdout_Serial(){
); );
for(auto it : pairs){ for(auto it : pairs){
if(it.second->m_delta_cpu + it.second->m_delta_wall > threshold) std::cout << format("PerfMonMTSvc %|5t|%1% %|30t|%2% %|50t|%3% %|70t|%4% \n") % it.first.stepName % it.second->m_delta_cpu % it.second->m_delta_wall % it.first.compName;
std::cout << format("PerfMonMTSvc %|5t|%1% %|30t|%2% %|50t|%3% %|70t|%4% \n") % it.first.stepName % it.second->m_delta_cpu % it.second->m_delta_wall % it.first.compName;
} }
std::cout << "PerfMonMTSvc =======================================================================================" << std::endl; std::cout << "PerfMonMTSvc =======================================================================================" << std::endl;
} }
...@@ -294,7 +292,6 @@ void PerfMonMTSvc::report2Stdout_Serial(){ ...@@ -294,7 +292,6 @@ void PerfMonMTSvc::report2Stdout_Serial(){
void PerfMonMTSvc::report2Stdout_Parallel(){ void PerfMonMTSvc::report2Stdout_Parallel(){
using boost::format; using boost::format;
int threshold = 5; // do print components whose measurements are below 5 ms
std::cout << "PerfMonMTSvc Aggregated Event Loop Monitoring " << std::endl; std::cout << "PerfMonMTSvc Aggregated Event Loop Monitoring " << std::endl;
std::cout << "PerfMonMTSvc =======================================================================================" << std::endl; std::cout << "PerfMonMTSvc =======================================================================================" << std::endl;
...@@ -315,8 +312,7 @@ void PerfMonMTSvc::report2Stdout_Parallel(){ ...@@ -315,8 +312,7 @@ void PerfMonMTSvc::report2Stdout_Parallel(){
); );
for(auto it : pairs){ for(auto it : pairs){
if(it.second.cpu_time > threshold) std::cout << format("PerfMonMTSvc %|5t|%1% %|30t|%2$.2f %|50t|%3% %|70t|%4% \n") % it.first.stepName % it.second.cpu_time % it.second.wall_time % it.first.compName;
std::cout << format("PerfMonMTSvc %|5t|%1% %|30t|%2$.2f %|50t|%3% %|70t|%4% \n") % it.first.stepName % it.second.cpu_time % it.second.wall_time % it.first.compName;
} }
std::cout << "PerfMonMTSvc =======================================================================================" << std::endl; std::cout << "PerfMonMTSvc =======================================================================================" << std::endl;
} }
...@@ -358,7 +354,7 @@ void PerfMonMTSvc::report2Stdout_Summary(){ ...@@ -358,7 +354,7 @@ void PerfMonMTSvc::report2Stdout_Summary(){
std::cout << format( "PerfMonMTSvc %|5t|%1% %|60t|%2% \n") % "Number of Events processed:" % m_eventIds.size(); std::cout << format( "PerfMonMTSvc %|5t|%1% %|60t|%2% \n") % "Number of Events processed:" % m_eventIds.size();
std::cout << format( "PerfMonMTSvc %|5t|%1% %|60t|%2% ms \n") % "CPU Usage per Event:" % (m_snapshotData[1].m_delta_cpu / m_eventIds.size()); std::cout << format( "PerfMonMTSvc %|5t|%1% %|60t|%2$.2f ms \n") % "CPU Usage per Event:" % (m_snapshotData[1].m_delta_cpu / m_eventIds.size());
std::cout << format( "PerfMonMTSvc %|5t|%1% %|60t|%2% \n") % "Events per second:" % (m_eventIds.size() / m_snapshotData[1].m_delta_wall ); std::cout << format( "PerfMonMTSvc %|5t|%1% %|60t|%2% \n") % "Events per second:" % (m_eventIds.size() / m_snapshotData[1].m_delta_wall );
std::cout << "PerfMonMTSvc =======================================================================================" << std::endl; std::cout << "PerfMonMTSvc =======================================================================================" << std::endl;
...@@ -446,7 +442,7 @@ void PerfMonMTSvc::report2JsonFile_Parallel(nlohmann::json& j){ ...@@ -446,7 +442,7 @@ void PerfMonMTSvc::report2JsonFile_Parallel(nlohmann::json& j){
bool PerfMonMTSvc::isLoop(){ bool PerfMonMTSvc::isLoop(){
int eventNumber = getEventNumber(); int eventNumber = getEventNumber();
return (eventNumber > 0) ? true : false; return (eventNumber >= 0) ? true : false;
} }
int PerfMonMTSvc::getEventNumber(){ int PerfMonMTSvc::getEventNumber(){
...@@ -505,8 +501,8 @@ void PerfMonMTSvc::divideData2Steps_serial(){ ...@@ -505,8 +501,8 @@ void PerfMonMTSvc::divideData2Steps_serial(){
m_compLevelDataMap_ini[it.first] = it.second; m_compLevelDataMap_ini[it.first] = it.second;
if(it.first.stepName == "Start") if(it.first.stepName == "Start")
m_compLevelDataMap_start[it.first] = it.second; m_compLevelDataMap_start[it.first] = it.second;
if(it.first.stepName == "Execute") //if(it.first.stepName == "Execute")
m_compLevelDataMap_evt[it.first] = it.second; //m_compLevelDataMap_evt[it.first] = it.second;
if(it.first.stepName == "Stop") if(it.first.stepName == "Stop")
m_compLevelDataMap_stop[it.first] = it.second; m_compLevelDataMap_stop[it.first] = it.second;
if(it.first.stepName == "Finalize") if(it.first.stepName == "Finalize")
...@@ -519,7 +515,7 @@ void PerfMonMTSvc::divideData2Steps_serial(){ ...@@ -519,7 +515,7 @@ void PerfMonMTSvc::divideData2Steps_serial(){
} }
m_stdoutVec_serial.push_back(m_compLevelDataMap_ini); m_stdoutVec_serial.push_back(m_compLevelDataMap_ini);
m_stdoutVec_serial.push_back(m_compLevelDataMap_start); m_stdoutVec_serial.push_back(m_compLevelDataMap_start);
m_stdoutVec_serial.push_back(m_compLevelDataMap_evt); //m_stdoutVec_serial.push_back(m_compLevelDataMap_evt);
m_stdoutVec_serial.push_back(m_compLevelDataMap_stop); m_stdoutVec_serial.push_back(m_compLevelDataMap_stop);
m_stdoutVec_serial.push_back(m_compLevelDataMap_fin); m_stdoutVec_serial.push_back(m_compLevelDataMap_fin);
m_stdoutVec_serial.push_back(m_compLevelDataMap_plp); m_stdoutVec_serial.push_back(m_compLevelDataMap_plp);
......
...@@ -161,7 +161,7 @@ class PerfMonMTSvc : virtual public IPerfMonMTSvc, ...@@ -161,7 +161,7 @@ class PerfMonMTSvc : virtual public IPerfMonMTSvc,
// There should be a more clever way! // There should be a more clever way!
std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_ini; std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_ini;
std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_start; std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_start;
std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_evt; //std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_evt;
std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_stop; std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_stop;
std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_fin; std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_fin;
std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_plp; // preLoadProxy std::map < PMonMT::StepComp , PMonMT::MeasurementData* > m_compLevelDataMap_plp; // preLoadProxy
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment