This macro run several tests and produces an benchmark report.
hsimple : Real Time = 0.09 seconds Cpu Time = 0.09 seconds
(TFile *) 0x5573f83c43a0
hsum : Real Time = 0.03 seconds Cpu Time = 0.03 seconds
Object statistics
class cnt on heap size total size heap size
================================================================================
TList 131 130 104 13624 13520
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 144 144 96 13824 13824
TNamed 1 1 64 64 64
TUnixSystem 1 1 672 672 672
TOrdCollection 4 4 72 288 288
--------------------------------------------------------------------------------
Total: 289 287 2064 29600 28768
================================================================================
fillrandom: Real Time = 0.17 seconds Cpu Time = 0.17 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 = 194.843
NDf = 192
Edm = 1.461e-07
NCalls = 150
p0 = 33.0449 +/- 0.530543
p1 = 3.987 +/- 0.0173653
p2 = 1.0039 +/- 0.0127544
p3 = 62.0699 +/- 1.32502
fit1 : Real Time = 0.16 seconds Cpu Time = 0.15 seconds
TFile** /home/sftnight/build/workspace/root-makedoc-master/rootspi/rdoc/src/master.build/tutorials/hsimple.root Demo ROOT file with histograms
TFile* /home/sftnight/build/workspace/root-makedoc-master/rootspi/rdoc/src/master.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.00 seconds
geometry : Real Time = 0.03 seconds Cpu Time = 0.03 seconds
na49view : Real Time = 0.01 seconds Cpu Time = 0.01 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.23 seconds Cpu Time = 0.24 seconds
---------------ROOT 6.33.01 benchmarks summary--------------------
hsimple : Real Time = 0.09 seconds Cpu Time = 0.09 seconds
hsum : Real Time = 0.03 seconds Cpu Time = 0.03 seconds
fillrandom: Real Time = 0.17 seconds Cpu Time = 0.17 seconds
fit1 : Real Time = 0.16 seconds Cpu Time = 0.15 seconds
tornado : Real Time = 0.00 seconds Cpu Time = 0.00 seconds
na49 : Real Time = 0.01 seconds Cpu Time = 0.00 seconds
geometry : Real Time = 0.03 seconds Cpu Time = 0.03 seconds
na49view : Real Time = 0.01 seconds Cpu Time = 0.01 seconds
ntuple1 : Real Time = 0.23 seconds Cpu Time = 0.24 seconds
TOTAL : Real Time = 0.73 seconds Cpu Time = 0.72 seconds
---------------ROOT 6.33.01 benchmarks summary (in ROOTMARKS)-----
For comparison, a Pentium IV 2.4Ghz is benchmarked at 600 ROOTMARKS
hsimple = 1854.24 RealMARKS, = 1866.67 CpuMARKS
hsum = 3436.43 RealMARKS, = 3000.00 CpuMARKS
fillrandom = 71.97 RealMARKS, = 35.29 CpuMARKS
fit1 = 151.10 RealMARKS, = 120.00 CpuMARKS
tornado = 39996.54 RealMARKS, = inf CpuMARKS
na49 = 96807.70 RealMARKS, = inf CpuMARKS
geometry = 3358.29 RealMARKS, = 3600.00 CpuMARKS
na49view = 3344.44 RealMARKS, = 1800.00 CpuMARKS
ntuple1 = 746.12 RealMARKS, = 675.00 CpuMARKS
****************************************************
* Your machine is estimated at 2769.69 ROOTMARKS *
****************************************************
void bexec(
TString &dir,
const char *macro)
{
if (
gROOT->IsBatch()) printf(
"Processing benchmark: %s%s\n",dir.
Data(),macro);
}
void benchmarks() {
bench1 =
new TCanvas(
"bench1",
"Benchmarks Summary",-1000,50,200,500);
summary->
AddText(
" graphics/framework.C");
summary->
AddText(
" graphics/formula1.C");
summary->
AddText(
" hist/fillrandom.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");
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");
}
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
R__EXTERN TSystem * gSystem
virtual void SetTextAlign(Short_t align=11)
Set the text alignment.
virtual void SetTextColor(Color_t tcolor=1)
Set the text color.
virtual void SetTextSize(Float_t tsize=1)
Set the text size.
void Update() override
Update canvas pad buffers.
void Modified(Bool_t flag=true) override
Mark pad modified Will be repainted when TCanvas::Update() will be called next time.
TObject * GetPrimitive(const char *name) const override
Get primitive.
A Pave (see TPave) with text, lines or/and boxes inside.
virtual TText * AddText(Double_t x1, Double_t y1, const char *label)
Add a new Text line to this pavetext at given coordinates.
void Draw(Option_t *option="") override
Draw this pavetext with its current attributes.
virtual TText * GetLineWith(const char *text) const
Get Pointer to first containing string text in this pavetext.
const char * Data() const
TString & ReplaceAll(const TString &s1, const TString &s2)
virtual const char * UnixPathName(const char *unixpathname)
Convert from a local pathname to a Unix pathname.
virtual Bool_t ProcessEvents()
Process pending events (GUI, timers, sockets).
Base class for several text objects.