diff --git a/apps/benchmarks/UniformGridGPU/UniformGridGPU.cpp b/apps/benchmarks/UniformGridGPU/UniformGridGPU.cpp index 65e7b903ab1fde1f7f8cfd9e14c485076aa0978b..7f20018223bbd45b9986e49c452a172846e9ae75 100644 --- a/apps/benchmarks/UniformGridGPU/UniformGridGPU.cpp +++ b/apps/benchmarks/UniformGridGPU/UniformGridGPU.cpp @@ -279,6 +279,29 @@ int main(int argc, char** argv) pythonCallbackResults.data().exposeValue("collisionSetup", infoCollisionSetup); pythonCallbackResults.data().exposeValue("cse_global", infoCseGlobal); pythonCallbackResults.data().exposeValue("cse_pdfs", infoCsePdfs); + + auto stripWhiteSpaces = [](std::string str) { + str.erase(remove_if(str.begin(), str.end(), isspace), str.end()); + return str; + }; + + for (auto i = reducedTimeloopTiming->begin(); i != reducedTimeloopTiming->end(); ++i) + { + const std::string timerName = "Timer_" + i->first; + std::string columnName = timerName + "_Total"; + pythonCallbackResults.data().exposeValue(stripWhiteSpaces(columnName).c_str(), i->second.total()); + columnName = timerName + "_Average"; + pythonCallbackResults.data().exposeValue(stripWhiteSpaces(columnName).c_str(), i->second.average()); + columnName = timerName + "_Count"; + pythonCallbackResults.data().exposeValue(stripWhiteSpaces(columnName).c_str(), i->second.getCounter()); + columnName = timerName + "_Min"; + pythonCallbackResults.data().exposeValue(stripWhiteSpaces(columnName).c_str(), i->second.min()); + columnName = timerName + "_Max"; + pythonCallbackResults.data().exposeValue(stripWhiteSpaces(columnName).c_str(), i->second.max()); + columnName = timerName + "_Variance"; + pythonCallbackResults.data().exposeValue(stripWhiteSpaces(columnName).c_str(), i->second.variance()); + } + // Call Python function to report results pythonCallbackResults(); }