24 - 29 march 2003 conference for computing in high energy and nuclear physics1 root status and...

33
24 - 29 March 20 03 Conference for Computing in High Energy and Nuclea 1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th René Brun, CERN Philippe Canal, Fermilab Masa Goto, Agilent technologies Fons Rademakers, CERN http://root.cern.ch

Upload: christiana-skinner

Post on 17-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

1

ROOT Status and Future Developments

CHEP 2003 La Jolla, CAMarch 24th

René Brun, CERN Philippe Canal, Fermilab

Masa Goto, Agilent technologiesFons Rademakers, CERN

http://root.cern.ch

Page 2: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

2

Project HistoryJan 95: Thinking/writing/rewriting/???

November 95: Public seminar, show Root 0.5

Spring 96: decision to use CINTJan 97: Root version 1.0

Jan 98: Root version 2.0

Mar 99: Root version 2.21/08 (1st Root workshop FNAL)

Feb 00: Root version 2.23/12 (2nd Root workshop CERN)

Mar 01: Root version 3.00/06

Jun 01: Root version 3.01/05 (3rd Root workshop FNAL)

Jan 02: Root version 3.02/07 (LCG project starts: RTAGs)

Oct 02: Root version 3.03/09 (4th Root workshop CERN)

Mar 03: Root version 3.05/03

8 years !!

Page 3: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

3

Official Support

A very important step for the ROOT project

Support provided by new SFT group in EP division

As a result new manpower in the project

Page 4: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

4

ROOT Team & AssociatesROOT Team:

Ilka Antcheva (LCG staff) (since 1st Aug 2002)Rene Brun: new SFT group and Alice part timePhilippe Canal (FNAL/CD) (since 1998)Olivier Couet CERN (from PAW) (since 1st Jun 2002)Masa Goto (Agilent technologies)Valeriy Onuchin (LCG project associate) (since 1st Feb 2002)Fons Rademakers: Alice and new SFT group

AssociatesBertrand Bellenot (scopus) Win32gdk (since June 2000)Maarten Ballintijn (MIT/Phobos) PROOF (since Sep 2001)Andrei Gheata: (Alice) Geometry package (since Sep 2001)

Page 5: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

5

ROOT Team & Associates (2)

Now in the LCG(LHC Computing GRID context)Valery Fine (BNL/Atlas) I/O, TVirtualX/QtVictor Perevoztchikov (BNL/Atlas) STL, foreign classesAND more than 50 important contributions from people spending a substantial fraction of their time on the project. See $ROOTSYS/README/CREDITS

Special thanks to Suzanne Panacek who did a great job with the ROOT Users Guide, tutorials, lectures

Many thanks to FNAL computing Division for the continuous support of the project since 1998

Page 6: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

6

Source & Binary Distributions

26 binary tar files+ all possiblecombinations

of OS/Compilerin the Makefile

Page 7: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

7

Downloads Total

Page 8: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

8

Monthly Downloads

Page 9: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

9

Short summary of main releases since CHEP2001

Jan 2002: version 3.02/07Sep 2002: version 3.03/09Dec 2002: version 3.04/02Mar 2003: version 3.05/03

http://root.cern.ch/root/htmldoc/examples/Version302.news.htmlhttp://root.cern.ch/root/htmldoc/examples/Version30207.news.htmlhttp://root.cern.ch/root/htmldoc/examples/Version303.news.htmlhttp://root.cern.ch/root/htmldoc/examples/Version30309.news.htmlhttp://root.cern.ch/root/htmldoc/examples/Version30402.news.html

Page 10: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

10

ROOT I/O Developments Foreign classes

Classes that have not been instrumented for ROOT in any wayThey can now be stored in ROOT filesJust generate a dictionaryVery useful for 3rd party libraries

Emulated classesROOT files are “self-describing”This information can be used to emulate classes for which the actual code is not available while reading

Page 11: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

11

ROOT I/O Developments (2)

TRef, TRefArray Designed as light weight entitiesVery fast dereferencing (direct access tables)

BA

TBuffer b1;

A.Streamer(b1)

TBuffer b2;

B.Streamer(b2)

TRef

C++ pointer Duplicated

Saved only once

Page 12: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

12

TTree improvementsCreating branches from collection of objects.Split algorithm improved

For complex cases of inheritance or composition.

TTreeFormula enhancements Drawing TBitsCustom Histogram SizeSpecial variables (Entry #, Iteration #, etc.)

Automatic file overflowWhen file reaches user specified maximumCreate a new file: with "myfile.root", subsequent files are named "myfile_1.root",

Page 13: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

13

HistogramsNew class THStackLong list of new functions in TH1Plenty of new drawing optionsFilling with string variablesTH1::Merge(TCollection *list)

Page 14: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

14

Able to represent & navigate geometries of most HEP experimentsFaster than Geant3 : 20% (ATLAS) up to 800% (CDF)Includes an interactive geometry checker able to detect/visualize most geometry definition errors (none of the tested geometries is error-free)

To be soon integrated in a general VMC scheme able to run several simulation MC’s with same user code/geometry

Geometrical Modeler

Page 15: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

15

Geometrical Modeler Features

Geometry browsing + interactive visualization based on context menusEasy-to-use API/user interfaceExtensible set of 16 shapes, Boolean composite shapes & parameterizedAble to automatically map any G3 geometryProvides navigation functionality (“where am I?”, distances computation, “safety radius”, stepping, …)I/O: N objects RZ size

(G3).root size(fully voxelized)

Time to loadPIII/500

ATLAS

29.046.966

9632 kBytes

4238 kBytes ~ 8 seconds

Page 16: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

16

0 10 20 30

microsec/point (1 milion points)

Gexam1

Gexam3

Gexam4

ATLAS

CMS

BRAHMS

CDF

MINOS_NEARBTEV

TESLA

Performance for "Where am I" - physics case

ROOT

G3

Geometrical Modeler Features

Several interactive checking methodsGeometry overlap checker

providing a sorted list of overlaps/extrusions & taking as input a minimum value for the overlapping distance

Extensively benchmarked against G3

able to optimize even non-optimizable G3 geometries big gain in speed

See talk by A. Gheata“A geometrical modeler for HEP” on Thursday at 1:30pm

Page 17: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

17

PROOFSystem for the interactive analysis of very large sets of ROOT data files on a cluster of computersThe main design goals are:

transparency, scalability, adaptability

Allows:parallel analysis of trees or object in a set of filesparallel execution of scripts

on a cluster of heterogeneous machines

“Distributed Parallel Analysis Framework with PROOF”F.Rademakers on Tuesday at 2pm

“Analyse your Data in Parallel using PROOF”M.Ballintijn on Tuesday at 2:40pm  

Page 18: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

18

PROOF Scalability

32 nodes: dual Itanium II 1 GHz CPU’s,2 GB RAM, 2x75 GB 15K SCSI disk,1 Fast Eth, 1 GB Eth nic (not used)

Each node has one copy of the data set(4 files, total of 277 MB), 32 nodes: 8.8 Gbyte in 128 files, 9 million events

Page 19: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

19

GRID and ROOTTGrid: Abstract interface to GRID servicesTAlien: an implementation of TGridProof can use

Grid Resource Broker Grid File Catalogue Grid Monitoring ServicesCondor

Remote File protocol implemented:Chirp (Condor)DCache (Desy, CDF)RFIO (Castor, CERN)

Page 20: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

20

Graphics Improvements New class TGraphSmooth (Christian Stratowa)

This class is a helper class to smooth TGraph, TGraphErrors or interpolate a graph at a set of given points. See new tutorial motorcycle.C

New class TSVG implemented by Olivier Couet. TSVG may be used like TPostScript to produce a Scalable Vector Graphics file instead of a postscript file.Viewers like Internet Explorer can view directly the SVG files.

Drawing TF3TASImage

Based on AfterImage

freetype 2 font supportDistributed by default

Page 21: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

21

Current status on WindowsCurrent Status

Pro: Gui fully workingSame look and feel as other platformsFully compatible with other platformsOpenGL is working

Cons:Much slowerNo Sockets (pending)No memory mapped files

To-do listShort term:

Improve speed Implement Sockets

Middle term:Implement X3DImplement TMapFile

Long term:“win32 native” versionrootd as a windows service

More information: http://root.cern.ch/root/win32progress/Win32GUI.html

Page 22: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

22

New Features and ClassesTMatrix

Many enhancements by Eddy Offermann (Renaissance Technologies)

TMathNew fundamental mathematical and physical constants (Tony Colley).New functions: Voigt(), BreitWigner(), Bessel and Struve Add two new sorting functions (Adrian Bevan)Add functions TMath::IsInside

Page 23: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

23

New Features and Classes

TFractionFitter (Frank Filthaut)Fits MC fractions to data histogram

Confidence Level classes (Christophe Delaere)

TLimit, TLimitDataSource and TConfidenceLevel

TFeldmanCousins for confidence level (Adrian Bevan)

Page 24: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

24

System EnhancementPlugin Manager

Allow easy extension of abstract interfaces

ACLiCFull dependency checkAllow selection of debug or optimized compilationBuilding of read-only scriptsAbility to use CINT’s pragma anywhere

# base class regexp plugin class plugin lib ctor or factory

Plugin.TFile: ^rfio: TRFIOFile RFIO "TRFIOFile(const char*,Option_t*,const char*,Int_t)"

+Plugin.TFile: ^dcache: TDCacheFile DCache "TDCacheFile(const char*,Option_t*,const char*,Int_t)"

Page 25: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

25

System Enhancementrootcint

Improvement in handling of templates in general and STL containers in particularIntroduce I/O for foreign classesEnhancement for multiple inheritance

CINT improvementsVery long list of enhancements: http://root.cern.ch/root/Cint.phtml?relnote

Page 26: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

26

Port to new platformsPort to MacOS

Ben Cowan, Keisuke Fujii, George Irwin, etc.

Port to Windows with cygwin and gcc 3.2

Axel Naumann

Port to Intel Compiler v7Fons Rademakers

Port to Itanium 64Fons Rademakers

Page 27: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

27

ROOT I/O new developments

Lifting remaining limitation of foreign class I/O implementation. Enhance support for STL container

New I/O mechanismSplit vector/list Enable emulation of STL container

Support for large file (more than 2Gb) Support for XML interchange format.

Page 28: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

28

TTree new developmentsSTL list/vector

Split modeEmulated class mode

TTree::Drawing a user functionWill allow the user to provide a function which will be executed for each entry of the TTree in a context such that the branch name can be used to read the values in the branchBranches will be read only if accessedThe function can use arbitrary C++The return value of the function will be histogrammed

Page 29: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

29

New graphical interfaceInterface Redesign

core panels and tools to be more in line with modern interfaces

QT implementation of TVirtualXValeri Fine See next slide

GUI Builder First step (done): implement the ability to generate the code for an existing GUI. Second step: implement a GUI builder

DocumentationIlka Antcheva is writing documentation for the GUI classes.

Page 30: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

30

Gui/Graphics strategy

TVirtualX

TGWin32 TGX11 TGWin32GDKTGQt

TVirtualPad

TPad

User/Root GUI and Graphics classesApplications see onlyAbstract Interfaces

Low levelscreen graphics

and GUI

High levelpad graphics

TG??

Page 31: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

31

GUI Examples

Page 32: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

32

Others future developments

New online help systemWill generate a compact file containing the documentationAn interface will allow easy lookup in this fileInformation will be available in any ROOT process

Proof continued developmentSee talk by M.Ballintijn and F. Rademakers

Page 33: 24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics1 ROOT Status and Future Developments CHEP 2003 La Jolla, CA March 24th Ren

24 - 29 March 2003 Conference for Computing in High Energy and Nuclear Physics

33

ClosingMains areas of developments

Parallel processing and GRIDSGraphicsI/O: STL, TTree::Draw, large files

Many Contributions from “users”Labs and UniversitiesPrivate sectors