topics for aliroot review
DESCRIPTION
Topics for AliRoot review. Gheata , M. Gheata , I.Hrivnacova , R . Shahoyan , P.Hristov 25 / 03/2013. IO: Loaders. What are the advantages and disadvantages of the current IO framework? Is it “parallelizable”? Is it optimal for navigation? Is it optimal from memory point of view? - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/1.jpg)
Topics for AliRoot review
A. Gheata, M. Gheata, I.Hrivnacova, R. Shahoyan, P.Hristov
25/03/2013
![Page 2: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/2.jpg)
IO: Loaders
• What are the advantages and disadvantages of the current IO framework?– Is it “parallelizable”?– Is it optimal for navigation?– Is it optimal from memory point of view?– What are the approaches of the other experiments?
• How well the data types (kinematics, hits, sdigits, digits, clusters, tracks) correspond to our needs?
• How suitable are the data containers we use (trees, TClonesArrays, TObjArrays, etc.)?
• What are the current/new user requirements?
![Page 3: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/3.jpg)
IO: Root/xrootd
• How much can we gain in performance by shrinking the event size (i.e. mini-AOD)
• Can we parallel I/O if ROOT I/O would allow it• Could remote I/O be improved using
readahead prefetching policies (e.g. I/O proxies)?
• Is dynamic file replica switching possible and with what effort?
![Page 4: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/4.jpg)
Geometry
• Are any changes in the geometry and material descriptions expected/foreseen?
• Is the current situation satisfactory?• Full/survey misalignment: is it possible to introduce full or
survey misalignment without creating overlaps?• Do we need any change in TGeo to avoid overlaps or for other
purposes?• Do we need geometry to be structured in a way allowing
extraction of info needed for reconstruction (layers min/max radii, sensor positions etc) and corresponding modifications in AliGeomManager? (for the ITSUpg we do this in custom way at the moment)
![Page 5: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/5.jpg)
Geometry
• We have still some problems in Geant4 simulation with TGeo which should be good to be checked:– Steps in assemblies (reported already long time ago, but I
think,it is still happening)– TGeo modeller (with G4Root) is in one VMC test by about
10%slower than Geant4 native geometry when running with magnetic field;it would be worth to check this test on other platforms and if the timing stay the same to investigate it
– The additional calls added for MT processing in TGeo may be protected with a compilation flag in order not to slow down MT applications
![Page 6: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/6.jpg)
Geometry
• Are any new features expected from geometry (e.g. monitoring tools for simulation, better handling of misalignment)?
• Are all provided tools actually used for avoiding overlaps (e.g. misaligning the components of a Boolean shape)?
• Can we improve performance of existing geometry?– e.g. by balancing better the number of daughter
volumes– or changing ALIC pgon to a box...
![Page 7: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/7.jpg)
Transport packages
• Geant4– comparison with Geant3: physics performance, computing
performance– use in production: what are the advantages and disadvantages?
• Fluka– GRID distribution– comparison with Geant3: physics performance, computing
performance– use in production: what are the advantages and disadvantages?
• Implications:– what is the GRID effort to have G4 and FLUKA productions
comparing with G3 statistics?
![Page 8: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/8.jpg)
Transport packages
• Can we study the bottlenecks in G4/FLUKA and study the cuts to eliminate some ?– e.g. electrons are doing 1mm steps all over the
ALIC volume in FLUKA• Would event level parallelism in simulation be
helpful (i.e. usage of GEANT4-MT)– Can we profit from the evolution of simulation
tools?– Is our Stepping thread safe?
![Page 9: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/9.jpg)
Geant4
• The implementation of cuts in Geany4 VMC is tricky: the cuts in energy (AliRoot) are converted in cuts in range (required in Geant4) and internally (in Geant4) back in cut in energy. It may be worth to review if we can put higher cuts in some regions (support structures etc.) to gain in performance
• Tuning parameters of magnetic field (G4 stepper, integration method)
![Page 10: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/10.jpg)
Geant4 MT
• Geant4 VMC MT is planned to be released soon after Geant4 10;
• Is our Stepping thread safe? Most probably not. To make it thread safe will require – a) work-arounds for Root in-safety (maybe less
work will be needed in this direction with Root 6)
– b) fixing AliRoot code itself
![Page 11: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/11.jpg)
Event generation
• Do we need new/updated generators?• Do we have obsolete generators?• How well the generator’s interfaces correspond to our
needs?– Is the full information from the generator available and easily
accessible?• What are the current/new user requirements?
– Parallelization?• Tuning of generators: what is the status and needs?• Is thread safety an issue (e.g. for an event level
multithreaded transport)
![Page 12: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/12.jpg)
Simulation• What are the advantages and disadvantages of the current simulation
framework?– Is it “parallelizable”?– Is it optimal from memory and CPU point of view?– Do we have new or obsolete user requirements (i.e. status of event merging,
embedding, pileup generation)?– Size of the output: is it OK?– What are the approaches of the other experiments?
• What are the current/new user requirements?• Real OCDB in simulation: what is the status?• Fast simulation
– Parameterized detector response (i.e. parameterized tracking outside ITS)– What are the approaches of the other experiments?
• Comparison with the real data
![Page 13: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/13.jpg)
Simulation
• Which are the major bottlenecks (e.g. digitization) and can we alleviate them?
• Thread safety (again)• Can we profit from vectorization techniques for
the digitization? Does is imply reshuffling the hits data structures (i.e. contiguity in allocation via factories)?
• Can we learn more from detailed profiling or using other performance monitoring tools?
![Page 14: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/14.jpg)
Raw data
• What are the advantages/disadvantages of the current “rootified” RAW data format?
• What are the current/new user requirements?• Is the size OK?• What are the DAQ and HLT plans and what are
the implications for the offline?
![Page 15: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/15.jpg)
Reconstruction
• What are the advantages and disadvantages of the current reconstruction framework?– Is it “parallelizable”?– Is it optimal from memory and CPU point of view?– Do we have new or obsolete user requirements?– Is the physics performance satisfactory?– Size of the output: is it OK?– What are the approaches of the other experiments?
• Reconstruction algorithms– What do we need for common offline/HLT approach?– Is the physics performance/computing cost optimal?
![Page 16: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/16.jpg)
Reconstruction
• Do we profit enough from locality (i.e. is local reconstruction cache-wise local?)
• Do we have thread safety, is it easy to enforce?
• Can we auto-vectorize some of the computing intensive parts?
• Are there obvious bottlenecks that we could focus on removing?
![Page 17: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/17.jpg)
ESD and AOD
• What are the advantages and disadvantages of the current ESD/AOD?– What are the changes needed for long data
preservation?– Are the interfaces uniform and transparent?– Is the ESD/AOD content, format and size optimized?– What are the current/new user requirements?– What are the approaches of the other experiments?
• What are the changes needed for the ALICE upgrade?
![Page 18: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/18.jpg)
ESD and AOD• Is a new data format going to bring I/O benefits? (faster to read,
vectorizable subsequent operations)• Can we have a 2 level flat mini AOD which is performant and useful for
physics. What are the migration efforts?• How many of the analysis tasks are forced to use only ESD's and why ?• What is missing from the current AOD's (some partial review was
done)• Can we unify the interfaces for ESD and AOD ?• AOD size: can we make a compromise between generality and
performance ?• What are the storage constraints and implications for the proliferation
of ESD/AOD ?
![Page 19: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/19.jpg)
Calibration
• What are the advantages and disadvantages of the current calibration scheme (cpass0, cpass1, vpass, ppass)?
• What is needed for quasi-online calibration?– What are the changes in the algorithms?– How do we automatically monitor the calibration
quality?– How do we avoid manual interventions?– Which are the "hard limits" preventing a more
automated treatment of calibration?
![Page 20: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/20.jpg)
Calibration: tenders
• What is the future of the tenders?– is this way of patching reconstructed data the only
possibility to delay the "better calibration" in the processing chain, keeping the data still valid?
– this will hit us back for the software upgrade to deal with continuous readout, when initial calibration will have to be redone after the clusters/tracks are written on disk
![Page 21: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/21.jpg)
Analysis framework
• What are the advantages and disadvantages of the current analysis framework?
• What are the current/new user requirements?• What did we learn from CAF usage? Does parallel
analysis make sense? At which granularity? Can it be generalized?
• Can we have a better scaling/parallel merging solution?
• Can we improve analysis monitoring tools to detect trends, bad habits, hot-spots?
![Page 22: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/22.jpg)
QA
• What are the advantages and disadvantages of the current QA framework?
• What are the current/new user requirements?• What are the DAQ and HLT plans and what are the
implications for the offline?• Can we design a better SW QA chain to detect faster
problems?• It would be useful to have a simpler test suite (or a set of
tests) which could be run locally in a reasonable time; eg. in MUON we have a test script AlirootRun_MUONtest.sh which we run with every check-in in SVN.
![Page 23: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/23.jpg)
QA
• Do we QA enough all the components of the software framework ? (can we for example QA directly simulation)
• Can we automatically detect problems before releasing, what is missing?
• Is reconstruction QA too detailed ? Is it maintained ?• Can we have a QA on many levels, like:
– level 0: basic tests like compilation, running on 1 event and checking for the expected files
– level 1: full chain with automatic QA decisions based on reference data
– level 2: QA needing human intervention (like trends, anomalous distributions)
![Page 24: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/24.jpg)
Visualization
• What are the advantages and disadvantages of the current visualization framework?
• What are the current/new user requirements?• What are the DAQ and HLT plans and what are
the implications for the offline?• Could the visualization be extended as tools
for algorithm debugging?
![Page 25: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/25.jpg)
What should we understand under parallelization?
• Running on conventional multicore CPUs with significant amount of RAM/CPU:– Forking single event reconstruction thus having single
copy of read-only data in memory?– Multy-thread processing of single event ?
• Non-conventional processors (GPU's...): what are prerequisites for using them?
• What changes in the computing model (currently weakly-moderated code submission by Everybody) will this require?
![Page 26: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/26.jpg)
AliRoot on the GRID
• What is the overall overhead of GRID processing for the data flow and what are the major sources of problems?
• Can we clearly identify bottlenecks (in terms of GRID topology and weak points like I/O or initialization)?
• Can we make monitoring feed back into the scheduling, to fix some problems in a more automatic way?
• Can we implement better I/O policies (like prefetching, replica handling) - xrootd + root can help here.5 Can we profit from privileged resources (for merging or "burning" tasks)
![Page 27: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/27.jpg)
Data preservation
• How do we participate in the global initiative?• What are the implications of our computing model on
how we can do DP ?• Which levels of DP can we adopt and how?• Can DP have any impact at all on the evolution of our
computing model ?• Which resources could we invest for DP in the
medium and long term ?• Is planning and discussion at larger scale in ALICE
needed ?
![Page 28: Topics for AliRoot review](https://reader036.vdocuments.mx/reader036/viewer/2022062305/5681508e550346895dbe8ac9/html5/thumbnails/28.jpg)
Technical questions• What are the advantages and the disadvantages of the current CMake-based
build system?• Which platforms and compilers should be supported? • Is SVN adequate to our needs?• What are the current/new user requirements?• What are the requirements for detailed AliRoot validation?• What is the experience of the other experiments?• What do we need to maintain useful and up-to-date documentation?• What kind of tools do we need for successful development?• CMake build should not require setting environment variables, but the options
should be specified in CMake way via the options passed with cmake command• For documentation: good experience with doxygen, which allow to integrate
also a text decription on the documentation generated from the source code; what makes it easier to synchronize with code changes.