#include #include #include void dfnojit(uint32_t threads=0) { ROOT::EnableImplicitMT(threads); ROOT::RDataFrame r(100000000); auto rr = r.Define("v", [](ULong64_t e) {return e;}, {"rdfentry_"}) \ .Define("w", [](ULong64_t v) { return 1./(v+1); }, {"v"}) \ .Define("x", [](ULong64_t v, Double_t w) { return v*w; },{"v","w"}) \ .Filter([](ULong64_t v) { return v%100==0;} , {"v"}); ROOT::RDF::RResultPtr stats_iw = rr.Stats("x", "w"); auto start = std::chrono::high_resolution_clock::now(); stats_iw->Print(); auto finish = std::chrono::high_resolution_clock::now(); std::chrono::duration elapsed=finish-start; std::cout << threads << "\t" << elapsed.count() << std::endl; }