Update on USolids/VecGeom integration in Geant4 Gabriele Cosmo, CERN EP/SFT.

Slides:



Advertisements
Similar presentations
12 VECTORS AND THE GEOMETRY OF SPACE.
Advertisements

Define planes “Peek” at hidden components Faster command access Orient part Making Selections Text Understand feature references Text
Chapter 4.2 Collision Detection and Resolution. 2 Collision Detection Complicated for two reasons 1. Geometry is typically very complex, potentially requiring.
TUPEC057 Advances With Merlin – A Beam Tracking Code J. Molson, R.J. Barlow, H.L. Owen, A. Toader MERLIN is a.
1 Geometry A line in 3D space is represented by  S is a point on the line, and V is the direction along which the line runs  Any point P on the line.
Introduction to Software Testing
Simulation Project Organization update & review of recommendations Gabriele Cosmo, CERN/PH-SFT Application Area Internal.
Witek Pokorski, Radovan Chytracek, Jeremy McCormick, Giovanni Santin
Vectors and the Geometry of Space
12.
Unit tests, Integration tests Physics tests Andrea Dotti, Gunter Folger, Pere Mato CERN – PH/SFT Geant4 workshop 2012.
U-Solids: new geometrical primitives library for Geant4 and ROOT Marek Gayer CERN Physics Department (PH) Group Software Development for Experiments (SFT)
G EANT highlights kernel modules Gabriele Cosmo, CERN PH-SFT for the Geant4 Collaboration Gabriele Cosmo, CERN PH-SFT for the Geant4 Collaboration.
TECH 104 – Technical Graphics Communication Week 13: 3D Modeling Basics.
Geant4 Towards major release 10 Gabriele Cosmo, CERN PH/SFT On behalf of the Geant4 Collaboration.
WebVizOr: A Fault Detection Visualization Tool for Web Applications Goal: Illustrate and evaluate the uses of WebVizOr, a new tool to aid web application.
Unified Solids Marek Gayer, John Apostolakis, Gabriele Cosmo, Andrei Gheata, Jean-Marie Guyader, Tatiana Nikitina CERN PH/SFT The 17 th Geant4 Collaboration.
Use of Coverity & Valgrind in Geant4 Gabriele Cosmo.
W. Pokorski - EP/SFT Simulation Project1 GDML - recent developments Witek Pokorski
Darmstadt, 15. November 2015 Tobias Stockmanns, FZ Jülich1 A STEP to ROOT converter for the FairRoot framework ALICE-FAIR Computing Meeting, GSI,
Geant4 in production: status and developments John Apostolakis (CERN) Makoto Asai (SLAC) for the Geant4 collaboration.
New software library of geometrical primitives for modelling of solids used in Monte Carlo detector simulations Marek Gayer, John Apostolakis, Gabriele.
JIRA tasks update Week 28 April – 5 May Updated tasks SIM-602 – T.Nikitina SIM-602 o Correction to G4Sphere (and USphere) for calculation of safety.
Minimum Distance between curved surfaces Li Yajuan Oct.25,2006.
Introduction What is detector simulation? A detector simulation program must provide the possibility of describing accurately an experimental setup (both.
BREPS & STEP what's up and coming... Gabriele Cosmo CERN - IT/ASD GEANT4 Workshop September, 20th 1999 ESTEC, Noordwijk, The Netherlands.
Shape Tester. What we need? 1) Tests: a)Test individual shapes Correctness and consistency(like original SBT test, OpticalEscape, ShapeChecker) Accuracy(precision.
STATUS OF THE UNIFIED SOLIDS LIBRARY Gabriele Cosmo/CERN Tatiana Nikitina/CERN.
JIRA tasks update Week 28 October – 4 November 2014.
G EANT highlights kernel modules Gabriele Cosmo, CERN PH-SFT for the Geant4 Collaboration Gabriele Cosmo, CERN PH-SFT for the Geant4 Collaboration.
Outline  Developments/fixes in the last year  Introduced in release 9.6 and patches  Planned for release 10.0 and ongoing …  Currently under development.
U-Solids: new geometrical primitives library for Geant4 and ROOT Marek Gayer CERN Physics Department (PH) Group Software Development for Experiments (SFT)
Geant4 CPU performance : an update Geant4 Technical Forum, CERN, 07 November 2007 J.Apostolakis, G.Cooperman, G.Cosmo, V.Ivanchenko, I.Mclaren, T.Nikitina,
LCG – AA review 1 Simulation LCG/AA review Sept 2006.
Geant4 release 5.1 summary Gabriele Cosmo EP/SFT.
Geant4 is a toolkit to simulate the passage of particles through matter, and is widely used in HEP, in medical physics and for space applications. Ongoing.
INFSO-RI Enabling Grids for E-sciencE Using of GANGA interface for Athena applications A. Zalite / PNPI.
Current status of the development of the Unified Solids library Marek Gayer CERN PH/SFT.
Toward Geant4 version 10 Makoto Asai (SLAC PPA/SCA) For the Geant4 Collaboration Geant4 Technical Forum December 6 th, 2012.
Outline  Developments/fixes in the last year  Introduced in release 10.1 and patches (also to 10.0)  Planned for release 10.2 and ongoing …  Currently.
Status of the development of the Unified Solids library Marek Gayer, CERN PH/SFT 2 nd AIDA Annual Meeting, Frascati 2013.
Lesson Plan: Drafting and Design J6-2. What is 3D solid modeling? How do 3D solid modeling programs work?
TECH 104 – Technical Graphics Communication Week 12: 3D Modeling Basics.
MAUS Status A. Dobbs CM43 29 th October Contents MAUS Overview Infrastructure Geometry and CDB Detector Updates CKOV EMR KL TOF Tracker Global Tracking.
CERN, 7 November 2011 Anton Pytel Slovak Technical University TRIP FROM GENERATORS TO GEOMETRIES.
Code improvement: Coverity static analysis Valgrind dynamic analysis GABRIELE COSMO CERN, EP/SFT.
EMI is partially funded by the European Commission under Grant Agreement RI EMI Status And Plans Laurence Field, CERN Towards an Integrated Information.
Philippe Canal (FNAL) for the GeantV development team G.Amadio (UNESP), Ananya (CERN), J.Apostolakis (CERN), A.Arora (CERN), M.Bandieramonte (CERN), A.Bhattacharyya.
Geometry & Persistency Recent & ongoing developments
Common Geometry Primitives library WP3 – date
Copyright © Cengage Learning. All rights reserved.
Copyright © Cengage Learning. All rights reserved.
INTRODUCING Adams/CHASSIS
Geant4 Geometry Speed-ups
European Organization for Nuclear Research
CPU Benchmarks Parallel Session Summary
Simulation Project Structure and tasks
Releases and developments
Unit Test Pattern.
Vectors and the Geometry
Introduction to Software Testing
Geometry checking tools
Chapter 3 Constructive Solid Geometry Concepts
Create 3D Solid Objects. Create 3D Solid Objects.
Continuous Integration
Use of Geant4 in experiment interactive frameworks AliRoot
Week 6: Time and triggers!
Simulation Project Structure and tasks
Release definition & scheduling
WIRED 4 Event Display Linear Collider Simulation Workshop
Presentation transcript:

Update on USolids/VecGeom integration in Geant4 Gabriele Cosmo, CERN EP/SFT

Contents Status of implementation of shapes Status of testing in Shape Tester Open issues to address Status of VecGeom shapes usage in Geant4 Geometry features expected in Geant /09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo2

USolids to VecGeom ~1995~2002~2010~2013 Geant4 geometry modeler ROOT/TGeoAIDA USolids VecGeom USolids (Unified Solids) library started as AIDA project Goal: develop a new library of geometrical primitives to unify algorithms existing in Geant4 and Root VecGeom: started as feasibility study of vectorization for geometry Geometry primitives code development as long-term evolution of USolids Developed back-to-back with USolids as independent library Now incorporating USolids implementation and sharing same interfaces Will replace USolids in the medium/long term Activity part of AIDA-2020/WP3 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo3

VecGeom: targeting vectorization Vector signatures Internal algorithm vectorization “parallel” collision detection internal loop over lateral planes for distance calculation  Beneficial for current simulations For vectorized transport 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo4

Status of implementation of shapes 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo5

Available shapes: status Both in USolids and VecGeom: Box, Orb, Trapezoid (Trap), Simple Trapezoid (Trd), Sphere (+ sphere section), Tube (+ cylindrical section), Cone (+ conical section), Generic Trapezoid (Arb8), Polycone, Polyhedron Only in Usolids: Tetrahedron (Tet), Multi-Union, Tessellated Solid, Generic Polycone, Extruded solid Only in VecGeom: Paraboloid, Parallelepiped (Para), Hyperboloid, Ellipsoid, Torus (+ torus section), Scaled Solid, Boolean (addition, subtraction, intersection) Missing: Elliptical Cone, Elliptical Tube, Cut Tube, Twisted shapes (box, trap, tube) 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo6

Available shapes: final target in VecGeom: Box, Orb, Trapezoid (Trap), Simple Trapezoid (Trd), Sphere (+ sphere section), Tube (+ cylindrical section), Cone (+ conical section), Generic Trapezoid (Arb8), Polycone, Polyhedron Tetrahedron (Tet), Multi-Union, Tessellated Solid, Generic Polycone, Extruded solid Paraboloid, Parallelepiped (Para), Hyperboloid, Ellipsoid, Torus (+ torus section), Scaled Solid, Boolean (addition, subtraction, intersection) Elliptical Cone, Elliptical Tube, Cut Tube, Twisted shapes (box, trap, tube) 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo7

The testing suite 8 Geant4 tests - Unit tests - SBT(solid batch test) - SurfaceChecker - OpticalEscape - SurfaceVisTest - testDistanceAccuracy.cc … Extensive Testing Suite USolids tests -SBT -OpticalEscape -SBTperformance (Comparison Usolids, Root, Geant4) Root tests CheckShape: -ShapesDistances() -ShapesSafety() -ShapeNormal() Possibility to test shape on Run Time Shape Tester Geant4+USolids+Root tests New 'X-Ray Scan' Test SBTperformance Unit tests Testing Suite 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo

Coverage extension in Shape Tester - ongoing One shape for each different topology Sections, shells, … Degenerated configurations Pathological cases Shapes selection from a DB DB generated from imported LHC experiments geometries Random generation of shapes Per type, dimension and position in space Batch or interactive mode 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo9

Status of testing in Shape Tester & open issues 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo10

Current status of shapes in ShapeTester ShapeConventions testStress tests Box (o)OK Tube (o)OK Trapezoid (o) (x)OK Generic Trapezoid (Arb8) (o) (x)OK Simple Trapezoid (Trd)OK Orb (o)OK SphereOK Paraboloid (o)OK Cone (x)OK Parallelepiped (Para) (o)OK Polycone (x)Failures Polyhedron (x)OK Torus (x)Failures  All other shapes either missing or showing failures(x) Being worked out now… 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo11 (o) Migrated to new framework

Currently working on … Migration of shapes to new framework adopting VecCore Rationalization of interfaces and vector signatures Careful evaluation of performance figures: no impact expected Improvement of Trap performance Special focus on DistanceToIn() function Addressing issue affecting Cone and Polycone Errors reported from ShapeTester Scalability with increasing number of Z-sections in Polycone Internal vectorisation Review of CalculateExtent() in Geant4 for geometry optimisation Rationalize and improve existing code Need to apply same voxelisation technique to VecGeom shapes as for G4 ones Required in order to have meaningful performance comparisons 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo12

Shapes: immediate open issues to address Fix errors reported by Shape Tester Including any new added topologies Improve Trap performance DistanceToIn() in UTrap is faster Internal vectorisation Improve robustness and performance for Cone and Polycone Complete migration to new VecCore framework for all shapes Complete review of CalculateExtent() in Geant4 for all shapes Robustness and fixes for problems detected only when running on complex setups 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo13

Status of VecGeom shapes usage in Geant4 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo14

Using VecGeom from Geant4 - status USolids can be used in Geant4 since release 10.0 Passing the whole Geant4 testing suite Some run-time warnings with CMS bench VecGeom solids can be used seamlessly since Geant as external library Part of nightly builds in Geant4 VecGeom shapes from Git master Tested on CentOS/gcc-5.3 A number of tests failing (mainly FPE errors) or showing run-time errors/warnings With current Geant4 development version, VecGeom works in batch and interactive mode Also in multi-threading (MT), including parameterisations Ability to select shapes to replace at installation, since 10.2.p02. Future plan: provide specialised navigation interface class to VecGeom navigation 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo15

Building Geant4 to use USolids/VecGeom a.Install USolids/VecGeom libraries Configure to either use USolids implementation: cmake -DBACKEND=Scalar -DGEANT4=OFF -DUSOLIDS=ON -DUSOLIDS_VECGEOM=OFF \ [...other optional VecGeom switches as needed...] \ -DCMAKE_INSTALL_PREFIX=${VecGeomINSTALLDIR} ${VecGeomSOURCE} make install or VecGeom implementation: cmake -DBACKEND=Scalar -DGEANT4=OFF -DUSOLIDS=ON -DUSOLIDS_VECGEOM=ON \ [...other optional VecGeom switches as needed...] \ -DCMAKE_INSTALL_PREFIX=${VecGeomINSTALLDIR} ${VecGeomSOURCE} make install b.Install Geant4 export USolids_DIR=${VecGeomINSTALLDIR}/lib/Cmake/USolids Add -DGEANT4_USE_USOLIDS=ON when configuring Geant4 with CMake 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo16 NOTE: reasonably recent version of the gcc/clang compilers required. Windows VC++ not supported

Geometry features in Geant /09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo17

Expected geometry features in Geant Ability to exercise a limited set of shapes from VecGeom Box, Tube, Cone, Orb, Para, Sphere, Trap, Trd, Torus, Polycone, Polyhedron Approaching “production quality” in terms of correctness and robustness Extension of Geant4 CMake build system to enable use of shapes individually (already available in 10.2.p02 and 10.3-beta) Ability to scale shapes along Cartesian axes Extended GDML schema (new version 3.1.4) 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo18

Summary Most common shapes now implemented in VecGeom Shapes passing Shape Tester: box, tube, cone, orb, para, sphere, trd, trap, generic trap, paraboloid, polyhedron Performance issues: cone, trap, polycone In process to extend Shape Tester On going extension of coverage for shapes topologies VecGeom through Geant4 in place (shapes level) Expecting near to “production quality” performance in Geant4 release 10.3 for a set of relevant shapes 15/09/16Update on USolids/VecGeom integration in Geant4 - G.Cosmo19