1 / 40

A Short Summary of the ROOT2004 workshop at SLAC 25-27 Feb

Explore the highlights of the ROOT2004 workshop detailing new features, advancements in ROOT project, as well as container support, Java Root IO developments, and future plans discussed during the workshop.

mwilliamson
Download Presentation

A Short Summary of the ROOT2004 workshop at SLAC 25-27 Feb

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Short Summaryof the ROOT2004 workshop at SLAC25-27 Feb LCG/AA meeting 21 April René Brun CERN ROOT2004 workshop summary

  2. ROOT workshops • Mar 99: 1st Root workshop FNAL • Feb 00: 2nd Root workshop CERN • Jun 01: 3rd Root workshop FNAL • Oct 02: 4th Root workshop CERN • Feb 04: 5th Root workshop SLAC • Workshop organized by Babar (P.Elmer, S.Gowdy) • About 100 participants • See:http://www.slac.stanford.edu/BFROOT/www/Computing/Distributed/ROOT2004/program.html ROOT2004 workshop summary

  3. Wednesday 25 February day1 • 09h00: Steve Williams - Welcome (video)09h15: Rene Brun - ROOT Project Status (ppt) (video)10h00: Masa Goto - CINT status (ppt) (video)10h30: coffee break11h00: Philippe Canal - I/O developments, Tree queries (ppt) (video)11h45: Sergey Linev (Joern Adamczewski) - XML I/O support (ppt) (video)12h15: Lunch break14h00: Mario Bondioli - Babar SVT (ppt) (video)14h30: Tony Johnson - FreeHep, Root I/O for Java (ppt) (video)15h00: William Tanenbaum - The POOL project (ppt) (video)15h30: coffee break16h00: A.Hanushevsky - xrootd, the next generation root data server (pps) (video)16h40: Artem Trunov - xrootd deployment in Babar (sxi, pdf, ps) (video)17h00: Chris Roat - RooFit toolkit: concrete applications in BaBar (sxi, pdf) (video) Many reports on xrootd (see next talk) And PROOF (report in a coming LCG/AA meeting) ROOT2004 workshop summary

  4. Thursday 26 February day2 • 09h00: Andrei Gheata - The Geometry package: status (ppt) (video 1) (video 2)09h30: Susan Kasahara - ROOT in MINOS (ppt) (video)10h00: Heather Kelly - ROOT in GLAST (ppt) (video)10h30: coffee break11h00: Andrei Gheata - The VirtualMC in ALICE (ppt) (video)11h30: Eric Charles - Primary data Storage with ROOT (ppt) (video)12h00: Lionel Chaussard - ROOT in the OPERA collaboration (ppt) (video)12h30: Lunch break14h00: Ilka Antcheva - GUI status/developments (ppt) (video)14h30: Valeri Fine - ROOT and Qt (ppt) (video)15h00: Joern Adamczewski - ROOT in GO4 (ppt) (video)15h30: Wim Lavrijsen - PyRoot (ppt) (video)16h00: coffee break16h30: Discussion Session (notes: doc)18h30: Reception ROOT2004 workshop summary

  5. Friday 27 February day3 • 09h00: Gerardo Ganis - Client/Server authentication (ppt) (video)09h30: Fabrizio Furano - XTNetFile (pdf) (video)10h00: Eddy Offermann - The ROOT Linear Algebra package (ppt) (video)10h30: coffee break11h00: Dimitri Bourilkov - The CAVES project (ppt) (video)11h30: Christophe Delaere - Using Neural Networks within ROOT (pdf) (video)12h00: Maarten Ballintijn - PROOF status. Integration with CONDOR (pdf) (video)12h30: Lunch break14h00: Axel Naumann - Developments in THtml (ppt) (video)14h30: Nikolay Malitsky - ROOT and the Unified Accelerator Library (ppt) (video)15h00: Kilian Schwarz - PROOF cluster at GSI and GridKa (ppt) (video)15h30: Fons Rademakers - PROOF with ALIEN (sxi, pdf) (video)16h00: close ROOT2004 workshop summary

  6. Version 4.00 hightlights ROOT2004 workshop summary

  7. ROOT version 4 Highlights (1)(already in 4.00/02) • Support for Automatic Schema evolution for foreign classes without using a class version number. • Support for large files (> 2 GBytes) • New data type Double32_t (double in memory, saved as float on the file) • Native support for STL: automatic Streamers. • Tree split mode with STL vector/list • New Linear Algebra package • New class TRolke by Jan Conrad • New class TGraph2DErrors. More features in TGraph2D • Consolidation of win32gdk. • More features in the authentication system. • Consolidation of the PROOF classes. • GUI code generation See Philippe See Eddy See Gerri See Fons & Maarten See Ilka ROOT2004 workshop summary

  8. ROOT version 4 Highlights (2)(will be in final release in June) • Plug-in Manager upgrade (rlimap) with automatic library/class discovery/load. • xrootd • Virtual MC (G3, Fluka, G4?) • Support for Qt (alternative option to x11) • GUI builder • PROOF/Alien in production • Interface with Python (PyRoot with SEAL) • Interface with Ruby (ruby-root) • Geometry interface to OpenGL/Coin3D (V.Fine/STAR) • MakeClass/MakeSelector upgrade. Support for Tree friends • New GUI Histogram editor and Fitter see BaBar talks see Andrei Gheata /Alice see Valeri Fine/STAR see Ilka see Fons see Wim /Atlas/LBL ROOT2004 workshop summary

  9. ROOT I/OTTree Queries ROOT 2004 Users Workshop Philippe Canal, Fermilab ROOT2004 workshop summary

  10. Containers Support Mainly for STL containers Splitting TTree Query Custom TClass Generators TTree CloneTree Fast TTree Copying TFormula Calling free standing functions Parsing improvements Boolean operator optimization TTree Query TTree::Scan prints array Aliases Future Plan Contents ROOT2004 workshop summary

  11. Java Root IOPart of the FreeHEP Java Library Tony Johnson for the SLAC FreeHEP team: Mark Dönszelmann, Joseph Perl, Victor Serbo, Max Turri ROOT2004 workshop summary

  12. Java Root IO: Goals • Goals • Pure Java package for reading Root Files • Will be extended to writing later • High Performance • We want to do data analysis so we need very good performance • Should not need to know about objects ahead of time(no need for dll’s, .so files etc.) • But should provide full support for reading user-defined objects • Easy to use • Provide access to Root data, not C++ code • Separate j2root exists for accessing in memory root objects ROOT2004 workshop summary

  13. Implementation • Use “TStreamerInfo” objects inside Root files (since Root 3.0) to decode contents of file • Dynamically generate Java proxies for each Root object read • Each proxy has custom “streamer” • Build as Java bytecode using BCEL (http://jakarta.apache.org/bcel) • Converted at runtime to machine code by Just-in-Time compiler & HotSpot • Uses java.nio package (new since Java 1.4) • Designed to support high-performance binary IO ROOT2004 workshop summary

  14. Future Plans • Continue to track new Root releases • Root network protocol • More work on authentification • Implement xrootd protocol • should be transparent to user • Root file writing • Should be much easier than reading • Most of work already done by Petr Vokac/Julius Hrivnac • Support Root XML format? • Read Babar Kanga files via root IO library • Almost works, but some critical classes (e.g. KanTree) don’t appear to have TStreamerInfo in file. ROOT2004 workshop summary

  15. Possibility of XML I/O support in ROOT S. Linev, GSI, Darmstadt ROOT Workshop 2004 Sergey will be at CERN early May to integrate his XML Classes in ROOT CVS ROOT2004 workshop summary

  16. Motivation • ROOT has all class information in TStreamerInfo class with methods to serialize/deserialize objects • Why not implement similar mechanism for XML, not only for binary ROOT format? • Aim – introduce XML I/O in ROOT, where user should not write I/O code himself ROOT2004 workshop summary

  17. <TXmlExample ref="id0"> <fValue v="10"/> <fArray> <Double v="1.0"/> <Double v="10.0"/> <Double v="5.0"/> <Double v="7.0"/> <Double v="2.0"/> </fArray> <fStr TString="Hello"/> <fSelfPtr ptr="id0"/> </TXmlExample> array Object representation in XML object id class name class TXmlExample { public: Int_t fValue; Double_t fArray[5]; TString fStr; TXmlExample* fSelfPtr; ClassDef(TXmlExample, 1); }; basic type string (special case) pointer ROOT2004 workshop summary

  18. ROOT in the MINOS Experiment Presented at ROOT2004 (SLAC) February 26, 2004 Sue Kasahara – University of MN MINOS framework software group members: Pete Border (Minnesota) Liz Buckley-Geer (FNAL), Robert Hatcher (FNAL), George Irwin (Stanford), Sue Kasahara (Minnesota), Mark Messier (Indiana), Jon Urheim (Indiana), Brett Viren (Brookhaven), Nick West (Oxford) ROOT2004 workshop summary

  19. MINOS software: ROOT dependencies • MINOS software makes use of ROOT in a variety of ways: • Data Model & I/O • Streaming mechanism, automatic schema evolution, file management, data structures (TTree), remote file access (TNetFile & TAuthenticate), persistable pointers (TRef). • Data Dispatcher • Remote data access (TSocket), data read from open file (TTree::AutoSave, TDirectory::ReadKeys), client specified selection strings (TTreeFormula). • Geometry • Geometry classes (TShape derived). Migrating to TGeo package. • Online Monitoring (Adapted from CDF OM Framework) & Run Control • ROOT based GUI and histograms. • Event Display • ROOT based GUI and graphical display. • Job macro scripting and ntuple analysis • CINT, TBrowser, TTree::Draw, histograms, etc. • Database Interface • RDBC (V. Onuchin’s TSQL extension) used as interface to database products. • Container classes, etc • The remainder of this talk will focus on just 2 of these: Data Model & I/O and Geometry. ROOT2004 workshop summary

  20. Pb t      t 1 mm The OPERA experiment ~ 10 m nm 732 km nt • more than • 200 000 bricks… • … to find • the « kink » • of the tau ~ 10 cm • … photographic emulsions • scanned by microscopes… ~ 50 mm ROOT2004 workshop summary ROOT users workshop 2004 – SLAC ROOT in OPERA – Lionel Chaussard

  21. Event generation Physics simulation ( ROOT ) Detector response (digitisation) Reconstruction Analyses ( ROOT ) The OPERA offline framework Persistent data model ( ROOT ) CMT manager ( incl. ROOT ) / CVS repository ROOT I/O interface Transient data model (STL) Detector description ( ROOT ) ROOT2004 workshop summary ROOT users workshop 2004 – SLAC ROOT in OPERA – Lionel Chaussard

  22. Physics simulation • OpRoot developed on the basis of AliRoot • evolution to OpVMC GEANT3 OpRData data model -------------------------- OpIO interface OpRData data model -------------------------- OpIO interface GEANT4 OpRoot simulator (embedded GEANT3) OpVMC FLUKA OpGeom detector description ( TGeoManager ) Detector description files ( XML ) • OPERA is interested in FLUKA physics ROOT2004 workshop summary ROOT users workshop 2004 – SLAC ROOT in OPERA – Lionel Chaussard

  23. N.Malitsky and R.Fliller III ROOT2004 workshop summary

  24. UAL Objectives (1995)N. Malitsky and R.Talman • Form a customizable and extendable environment adaptable to new accelerator applications and conceptual models • Facilitate development, deployment and reuse of diverse independently developed accelerator programs • Integrate accelerator conceptual models and analysis patterns with modern technologies and software ROOT2004 workshop summary

  25. CINT scripts UAL Environment with CINT-based interface Application main functions Application Shells SIMBAD TIBETAN TEAPOT ACCSIM ZLIB PAC AIM MPI ICE UAL Element-Algorithm-Probe Framework ROOT2004 workshop summary

  26. Neural Networks ROOT2004 workshop summary

  27. MLPFit to TMultiLayerPerceptron ROOT2004 workshop summary

  28. PyROOT Reference Talk presented at: ROOT 2004 Users Workshop, SLAC LBNL, February 2004 Wim Lavrijsen, LBNL ROOT2004 workshop summary

  29. Goal • A “bridge” between ROOT and Python • Main library loadable in both CINT and Python • Objects can cross interpreters' boundary • Note: work in progress ... see later in this presentation • Allow Python callbacks from CINT and vv. • Completely reflection-based • No code generation necessary • Run-time binding generated as needed PyRoot added soon in ROOT CVS ROOT2004 workshop summary

  30. Linear Algebra in ROOT Eddy Offermann edmondoffermann@yahoo.com edmond.arnold.offermann@cern.ch ROOT2004 workshop summary

  31. ROOT2004 workshop summary

  32. PCBRUN:Pentium IV 2.4 Ghz 512 Mbytes RAM, IDE disk ROOT2004 workshop summary

  33. Future Extensions • Support Sparse matrix (Harwell-Boeing format) • Constraints in linear equation = : extension to SVD code > : linear/quadratic programming Subject to ROOT2004 workshop summary

  34. ROOT and Qt http://root.bnl.gov Valeri Fine (BNL, STAR) The QT interface will be in the ROOT June release ROOT2004 workshop summary

  35. Gui/Graphics interfaces User/Root GUI and Graphics classes Applications see only Abstract Interfaces High level pad graphics TVirtualPad Low level screen graphics and GUI TVirtualX TPad TGWin32 TGQt TG?? TGX11 TGWin32GDK ROOT2004 workshop summary

  36. GUI TVirtualX interfaces Same look & feel With X11, Qt, win32gdk ROOT2004 workshop summary

  37. GUI Status and Development Ilka Antcheva ROOT2004 workshop summary

  38. Pad Editor (old version) ROOT2004 workshop summary

  39. New Graphics Editor 1-Toggle Editor mode 3-Edit object attributes 2-Click On the object to be edited ROOT2004 workshop summary

  40. Gui Builder/Gui Code Generator Type CRTL/S anywhere on a widget To generate the C++ code for this widget Then do root > .x guisave.C ROOT2004 workshop summary

More Related