#include #include #include int main(int argc, char* argv[]) { uint32_t threads=0; if(argc==2) threads=std::atoi(argv[1]); ROOT::EnableImplicitMT(threads); ROOT::RDataFrame r(100000000); auto rr = r.Define("v", [](ULong64_t e) {return pow(1./(e+1),2);}, {"rdfentry_"}).Sum("v"); auto start = std::chrono::high_resolution_clock::now(); *rr; auto finish = std::chrono::high_resolution_clock::now(); std::chrono::duration elapsed=finish-start; std::cout << threads << "\t" << elapsed.count() << std::endl; }