Logo ROOT  
Reference Guide
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Loading...
Searching...
No Matches
benchmarks.C File Reference

Detailed Description

This macro run several tests and produces an benchmark report.

hsimple : Real Time = 0.07 seconds Cpu Time = 0.07 seconds
(TFile *) 0x2856c20
hsum : Real Time = 0.02 seconds Cpu Time = 0.02 seconds
Object statistics
class cnt on heap size total size heap size
================================================================================
TList 133 132 104 13832 13728
TObjectTable 1 1 32 32 32
TROOT 1 0 728 728 0
TPluginManager 1 1 40 40 40
THashTable 2 2 72 144 144
TClassTable 1 1 16 16 16
THashList 1 1 112 112 112
TEnv 1 1 56 56 56
TEnvRec 146 146 96 14016 14016
TNamed 1 1 64 64 64
TUnixSystem 1 1 672 672 672
TOrdCollection 4 4 72 288 288
--------------------------------------------------------------------------------
Total: 293 291 2064 30000 29168
================================================================================
fillrandom: Real Time = 0.11 seconds Cpu Time = 0.11 seconds
TFile** fillrandom.root
TFile* fillrandom.root
KEY: TFormula form1;1 abs(sin(x)/x)
KEY: TF1 sqroot;1 x*gaus(0) + [3]*form1
KEY: TH1F h1f;1 Test random numbers
Formula based function: sqroot
sqroot : x*gaus(0) + [3]*form1 Ndim= 1, Npar= 4, Number= 0
Formula expression:
x*[p0]*exp(-0.5*((x-[p1])/[p2])*((x-[p1])/[p2]))+[p3]*(abs(sin(x)/x))
****************************************
Minimizer is Minuit2 / Migrad
Chi2 = 209.141
NDf = 191
Edm = 5.28942e-08
NCalls = 115
p0 = 32.7868 +/- 0.436799
p1 = 4.02002 +/- 0.0170054
p2 = 0.983617 +/- 0.0123817
p3 = 64.5016 +/- 1.26419
fit1 : Real Time = 0.09 seconds Cpu Time = 0.09 seconds
TFile** /github/home/ROOT-CI/build/tutorials/hsimple.root Demo ROOT file with histograms
TFile* /github/home/ROOT-CI/build/tutorials/hsimple.root Demo ROOT file with histograms
KEY: TH1F hpx;1 This is the px distribution
KEY: TH2F hpxpy;1 py vs px
KEY: TProfile hprof;1 Profile of pz versus px
KEY: TNtuple ntuple;1 Demo ntuple
i 0 0.000000 1.986693
i 1 0.100000 2.955202
i 2 0.200000 3.894183
i 3 0.300000 4.794255
i 4 0.400000 5.646425
i 5 0.500000 6.442177
i 6 0.600000 7.173561
i 7 0.700000 7.833269
i 8 0.800000 8.414710
i 9 0.900000 8.912074
i 10 1.000000 9.320391
i 11 1.100000 9.635582
i 12 1.200000 9.854497
i 13 1.300000 9.974950
i 14 1.400000 9.995736
i 15 1.500000 9.916648
i 16 1.600000 9.738476
i 17 1.700000 9.463001
i 18 1.800000 9.092974
i 19 1.900000 8.632094
tornado : Real Time = 0.00 seconds Cpu Time = 0.00 seconds
na49 : Real Time = 0.01 seconds Cpu Time = 0.01 seconds
geometry : Real Time = 0.03 seconds Cpu Time = 0.03 seconds
na49view : Real Time = 0.00 seconds Cpu Time = 0.00 seconds
****************************************
Minimizer is Linear / Migrad
Chi2 = 16.5378
NDf = 68
p0 = 1.04821 +/- 0.226552
p1 = 0.0133784 +/- 0.0420448
p2 = 0.956034 +/- 0.0245116
ntuple1 : Real Time = 0.18 seconds Cpu Time = 0.17 seconds
---------------ROOT 6.34.04 benchmarks summary--------------------
hsimple : Real Time = 0.07 seconds Cpu Time = 0.07 seconds
hsum : Real Time = 0.02 seconds Cpu Time = 0.02 seconds
fillrandom: Real Time = 0.11 seconds Cpu Time = 0.11 seconds
fit1 : Real Time = 0.09 seconds Cpu Time = 0.09 seconds
tornado : Real Time = 0.00 seconds Cpu Time = 0.00 seconds
na49 : Real Time = 0.01 seconds Cpu Time = 0.01 seconds
geometry : Real Time = 0.03 seconds Cpu Time = 0.03 seconds
na49view : Real Time = 0.00 seconds Cpu Time = 0.00 seconds
ntuple1 : Real Time = 0.18 seconds Cpu Time = 0.17 seconds
TOTAL : Real Time = 0.51 seconds Cpu Time = 0.50 seconds
---------------ROOT 6.34.04 benchmarks summary (in ROOTMARKS)-----
For comparison, a Pentium IV 2.4Ghz is benchmarked at 600 ROOTMARKS
hsimple = 2446.68 RealMARKS, = 2400.00 CpuMARKS
hsum = 4305.67 RealMARKS, = 4500.00 CpuMARKS
fillrandom = 111.02 RealMARKS, = 54.55 CpuMARKS
fit1 = 259.38 RealMARKS, = 200.00 CpuMARKS
tornado = 55651.98 RealMARKS, = inf CpuMARKS
na49 = 137350.78 RealMARKS, = 83400.00 CpuMARKS
geometry = 3847.71 RealMARKS, = 3600.00 CpuMARKS
na49view = 4879.30 RealMARKS, = inf CpuMARKS
ntuple1 = 978.46 RealMARKS, = 952.94 CpuMARKS
****************************************************
* Your machine is estimated at 3967.22 ROOTMARKS *
****************************************************
void bexec(TString &dir,const char *macro)
{
if (gROOT->IsBatch()) printf("Processing benchmark: %s%s\n",dir.Data(),macro);
TPaveText *summary = (TPaveText*)bench1->GetPrimitive("TPave");
TText *tmacro = summary->GetLineWith(macro);
if (tmacro) tmacro->SetTextColor(4);
bench1->Modified(); bench1->Update();
gROOT->Macro(Form("%s%s",dir.Data(),macro));
TPaveText *summary2 = (TPaveText*)bench1->GetPrimitive("TPave");
TText *tmacro2 = summary2->GetLineWith(macro);
if (tmacro2) tmacro2->SetTextColor(2);
bench1->Modified(); bench1->Update(); gSystem->ProcessEvents();
}
void benchmarks() {
dir.ReplaceAll("benchmarks.C","");
dir.ReplaceAll("/./","/");
dir.ReplaceAll("legacy","");
bench1 = new TCanvas("bench1","Benchmarks Summary",-1000,50,200,500);
TPaveText *summary = new TPaveText(0,0,1,1);
summary->SetTextAlign(12);
summary->SetTextSize(0.08);
summary->Draw();
summary->AddText(" graphics/framework.C");
summary->AddText(" hsimple.C");
summary->AddText(" hist/hsum.C");
summary->AddText(" graphics/formula1.C");
summary->AddText(" hist/fillrandom.C");
summary->AddText(" fit/fit1.C");
summary->AddText(" hist/h1ReadAndDraw.C");
summary->AddText(" graphs/graph.C");
summary->AddText(" graphs/gerrors.C");
summary->AddText(" graphics/tornado.C");
summary->AddText(" graphs/surfaces.C");
summary->AddText(" graphs/zdemo.C");
summary->AddText(" geom/geometry.C");
summary->AddText(" geom/na49view.C");
summary->AddText(" tree/ntuple1.C");
summary->AddText(" ");
bexec(dir,"graphics/framework.C");
bexec(dir,"hsimple.C");
bexec(dir,"hist/hsum.C");
bexec(dir,"graphics/formula1.C");
bexec(dir,"hist/fillrandom.C");
bexec(dir,"fit/fit1.C");
bexec(dir,"hist/h1ReadAndDraw.C");
bexec(dir,"graphs/graph.C");
bexec(dir,"graphs/gerrors.C");
bexec(dir,"graphics/tornado.C");
bexec(dir,"graphs/surfaces.C");
bexec(dir,"graphs/zdemo.C");
bexec(dir,"geom/geometry.C");
bexec(dir,"geom/na49view.C");
bexec(dir,"tree/ntuple1.C");
bexec(dir,"legacy/rootmarks.C");
}
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
#define gROOT
Definition TROOT.h:406
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
Definition TString.cxx:2489
R__EXTERN TSystem * gSystem
Definition TSystem.h:572
The Canvas class.
Definition TCanvas.h:23
A Pave (see TPave) with text, lines or/and boxes inside.
Definition TPaveText.h:21
Basic string class.
Definition TString.h:139
const char * Data() const
Definition TString.h:376
TString & ReplaceAll(const TString &s1, const TString &s2)
Definition TString.h:704
virtual const char * UnixPathName(const char *unixpathname)
Convert from a local pathname to a Unix pathname.
Definition TSystem.cxx:1063
virtual Bool_t ProcessEvents()
Process pending events (GUI, timers, sockets).
Definition TSystem.cxx:416
Base class for several text objects.
Definition TText.h:22
Author
Rene Brun

Definition in file benchmarks.C.