16 th Geant4 Collaboration Meeting SLAC, 19-23 September 2011 P. Mato, CERN.

Slides:



Advertisements
Similar presentations
Prescriptive Process models
Advertisements

The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Chapter 13 Embedded Systems
CMS Full Simulation for Run-2 M. Hildrith, V. Ivanchenko, D. Lange CHEP'15 1.
Trigger and online software Simon George & Reiner Hauser T/DAQ Phase 1 IDR.
SEAL V1 Status 12 February 2003 P. Mato / CERN Shared Environment for Applications at LHC.
REVIEW OF NA61 SOFTWRE UPGRADE PROPOSAL. Mandate The NA61 experiment is contemplating to rewrite its fortran software in modern technology and are requesting.
Chapter 3 Parallel Algorithm Design. Outline Task/channel model Task/channel model Algorithm design methodology Algorithm design methodology Case studies.
LC Software Workshop, May 2009, CERN P. Mato /CERN.
Offline Coordinators  CMSSW_7_1_0 release: 17 June 2014  Usage:  Generation and Simulation samples for run 2 startup  Limited digitization and reconstruction.
Requirements for a Next Generation Framework: ATLAS Experience S. Kama, J. Baines, T. Bold, P. Calafiura, W. Lampl, C. Leggett, D. Malon, G. Stewart, B.
9 February 2000CHEP2000 Paper 3681 CDF Data Handling: Resource Management and Tests E.Buckley-Geer, S.Lammel, F.Ratnikov, T.Watts Hardware and Resources.
5 May 98 1 Jürgen Knobloch Computing Planning for ATLAS ATLAS Software Week 5 May 1998 Jürgen Knobloch Slides also on:
MINER A Software The Goals Software being developed have to be portable maintainable over the expected lifetime of the experiment extensible accessible.
1 Optimizing compiler tools and building blocks project Alexander Drozdov, PhD Sergey Novikov, PhD.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
SEAL Core Libraries and Services CLHEP Workshop 28 January 2003 P. Mato / CERN Shared Environment for Applications at LHC.
Lecture 4 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
Welcome and Introduction P. Mato, CERN.  Outcome of the FNAL workshop ◦ Interest for common effort to make rapid progress on exploratory R&D activities.
Parallelization of likelihood functions for data analysis Alfio Lazzaro CERN openlab Forum on Concurrent Programming Models and Frameworks.
SEAL Project Core Libraries and Services 18 December 2002 P. Mato / CERN Shared Environment for Applications at LHC.
Mantid Stakeholder Review Nick Draper 01/11/2007.
WLCG Overview Board, September 3 rd 2010 P. Mato, P.Buncic Use of multi-core and virtualization technologies.
ATLAS Meeting CERN, 17 October 2011 P. Mato, CERN.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
CBM ECAL simulation status Prokudin Mikhail ITEP.
Mantid Stakeholder Review Nick Draper 01/11/2007.
The High Performance Simulation Project Status and short term plans 17 th April 2013 Federico Carminati.
23/2/2000Status of GAUDI 1 P. Mato / CERN Computing meeting, LHCb Week 23 February 2000.
Future computing strategy Some considerations Ian Bird WLCG Overview Board CERN, 28 th September 2012.
Parallelization Strategies Laxmikant Kale. Overview OpenMP Strategies Need for adaptive strategies –Object migration based dynamic load balancing –Minimal.
General requirements for BES III offline & EF selection software Weidong Li.
12 March, 2002 LCG Applications Area - Introduction slide 1 LCG Applications Session LCG Launch Workshop March 12, 2002 John Harvey, CERN LHCb Computing.
Update on G5 prototype Andrei Gheata Computing Upgrade Weekly Meeting 26 June 2012.
Preliminary Ideas for a New Project Proposal.  Motivation  Vision  More details  Impact for Geant4  Project and Timeline P. Mato/CERN 2.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
General Introduction and prospect Makoto Asai (SLAC PPA/SCA)
Concurrency and Performance Based on slides by Henri Casanova.
Follow-up to SFT Review (2009/2010) Priorities and Organization for 2011 and 2012.
Meeting with University of Malta| CERN, May 18, 2015 | Predrag Buncic ALICE Computing in Run 2+ P. Buncic 1.
12 March, 2002 LCG Applications Area - Introduction slide 1 LCG Applications Session LCG Launch Workshop March 12, 2002 John Harvey, CERN LHCb Computing.
LHCb 2009-Q4 report Q4 report LHCb 2009-Q4 report, PhC2 Activities in 2009-Q4 m Core Software o Stable versions of Gaudi and LCG-AA m Applications.
Marco Cattaneo, 3-June Event Reconstruction for LHCb  What is the scope of the project?  What are the goals (short+medium term)?  How do we organise.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
LHCb Core Software Programme of Work January, 2012 Pere Mato (CERN)
Modularization of Geant4 Dynamic loading of modules Configurable build using CMake Pere Mato Witek Pokorski
Barthélémy von Haller CERN PH/AID For the ALICE Collaboration The ALICE data quality monitoring system.
ANALYSIS TRAIN ON THE GRID Mihaela Gheata. AOD production train ◦ AOD production will be organized in a ‘train’ of tasks ◦ To maximize efficiency of full.
Marco Cattaneo, 20-May Event Reconstruction for LHCb  What is the scope of the project?  What are the goals (short+medium term)?  How do we organise.
GUIDO VOLPI – UNIVERSITY DI PISA FTK-IAPP Mid-Term Review 07/10/ Brussels.
Kai Li, Allen D. Malony, Sameer Shende, Robert Bell
Computing models, facilities, distributed computing
SuperB and its computing requirements
Multicore Computing in ATLAS
for the Offline and Computing groups
Parallel Programming By J. H. Wang May 2, 2017.
Sharing Memory: A Kernel Approach AA meeting, March ‘09 High Performance Computing for High Energy Physics Vincenzo Innocente July 20, 2018 V.I. --
Report on Vector Prototype
US ATLAS Physics & Computing
Chapter 4: Threads.
Linear Collider Simulation Tools
What’s new in version 5 of GAUDI
Simulation and Physics
Linear Collider Simulation Tools
Parallel Programming in C with MPI and OpenMP
SEAL Project Core Libraries and Services
Planning next release of GAUDI
From Use Cases to Implementation
Workflow and HPC erhtjhtyhy Doug Benjamin Argonne National Lab.
Presentation transcript:

16 th Geant4 Collaboration Meeting SLAC, September 2011 P. Mato, CERN

 For the last 40 years HEP event processing frameworks have had the same structure ◦ initialize; loop events {loop modules {…} }; finalize ◦ O-O has not added anything substantial ◦ It is simple, intuitive, easy to manage, scalable  Current frameworks designed late 1990’s ◦ We know now better what is really needed ◦ Unnecessary complexity impacts on performance  Clear consensus that we need to adapt HEP applications to new generation CPUs ◦ Multi-process, multi-threads, GPU’s, vectorization, etc. ◦ The one job-per-core scales well but requires too much memory and sequential file merging P. Mato/CERN 2

 Covering a broad scope of applications and environments ◦ Single user desktop/laptop case to minimize latency ◦ Production (throughput computing) to minimize memory and other resources  Investigations are starting and prototypes are being developed ◦ Opportunity to collaborate and organize better the work P. Mato/CERN 3

 Universal framework for simulation, reconstruction, analysis, high level trigger applications  Common framework for use by any experiment  Decomposition of the processing of each event into ‘chunks’ that can be executed concurrently  Ability to process several events concurrently  Optimal scheduling and associated data structures  Minimize any processing requiring exclusive access to resources because it breaks concurrency  Supporting various hardware/software technologies  Facilitate the integration of existing LHC applications code (algorithmic part)  Quick delivery of running prototypes. The opportunity of the 18 months LHC shutdown P. Mato/CERN 4

 Current frameworks used by LHC experiments supports all data processing applications ◦ High-level trigger, reconstruction, analysis, etc. ◦ Nothing really new here  But, simulation applications are designed with a big ‘chunk’ in which all Geant4 processing is happening ◦ We to improve the full and fast simulation using the set common services and infrastructure ◦ See later the implications for Geant4  Running on the major platforms ◦ Linux, MacOSX, Windows P. Mato/CERN 5

 Frameworks can be shared between experiments ◦ E.g. Gaudi used by LHCb, ATLAS, HARP, MINERVA, GLAST, BES3, etc.  We can do better this time :-) ◦ Expect to work closely with LHC experiments ◦ Aim to support ATLAS and CMS at least  Special emphasis to requirements from: ◦ New experiments  E.g. Linear Collider, SuperB, etc. ◦ Different processing paradigms  E.g. fix target experiments, astroparticles P. Mato/CERN 6

 Framework with the ability to schedule concurrent tasks ◦ Full data dependency analysis would be required (no global data or hidden dependencies) ◦ Need to resolve the DAGs (Direct Acyclic Graphs)  Not much gain expected with today’s designed ‘chunks’ ◦ See CMS estimates at CHEP’10 (*)* ◦ Algorithm decomposition can be influenced by the framework capabilities  ‘Chunks’ could be processed by different hardware/software ◦ CPU, GPU, threads, process, etc. P. Mato/CERN 7 Time Input Processing Output

 Need to deal with tails of sequential processing ◦ See Rene’s presentation (*)*  Introducing Pipeline processing ◦ Never tried before! ◦ Exclusive access to resources can be pipelined e.g. file writing  Need to design a very powerful scheduler P. Mato/CERN 8 Time

 Concrete algorithms can be parallelized with some effort ◦ Making use of Threads, OpenMP, MPI, GPUs, etc. ◦ But difficult to integrate them in a complete application  E.g. MT-G4 with Parallel Gaudi ◦ Performance-wise only makes sense to parallelize the complete application and not only parts  Developing and validating parallel code is difficult ◦ ‘Physicists’ should be saved from this ◦ In any case, concurrency will limit what can and can not be done in the algorithmic code  At the Framework level you have the overall view and control of the application P. Mato/CERN 9

 It is not simple but we are not alone ◦ Technologies like the Apple’s Grand Central Dispatch (GCD) are designed to help write applications without having to fiddle directly with threads and locking (and getting it terribly wrong)  New paradigms for concurrency programming ◦ Developer needs to factor out the processing in ‘chunks’ with their dependencies and let the framework (system) to deal with the creation and management of a ‘pool’ of threads that will take care of the execution of the ‘chunks’ ◦ Tries to eliminates lock-based code and makes it more efficient P. Mato/CERN 10

 Geant4 [core] is a toolkit and should continue to be ◦ Facilitates the integration in existing applications/frameworks  However Geant4 applications should be based on a new and more modern framework ◦ Configuration, proper scripting, interactivity, I/O, analysis, etc. ◦ Plugins based (physics process/models, visualization drivers, etc.) ◦ Ability to run full and fast MC together using common infrastructure (e.g. geometry, conditions, etc.)  E.g. today’s frameworks allow to run different ‘tacking algorithms’ in the same program  Defining clearly the input and output types  Make use of the common set of foundation packages (math, vectors, utility classes, etc.) P. Mato/CERN 11

 With an approach like the GDC we could exercise different factorizations ◦ Processing each event (set of primary particles) could be the ‘chunk’ (same as GeantMT)  We could also go at the sub-event level ◦ Development of Rene’s ideas of ‘baskets’ of particles organized by particle type, volume shape, etc. ◦ Would need to develop an efficient summing (‘reduce’) of the results ◦ Would require to study the reproducibility of results (random number sequence) P. Mato/CERN 12

 Collaboration of CERN with FNAL, DESY and possible other Labs ◦ Start with small number of people (at the beginning) ◦ Open to people willing to collaborate ◦ Strong interactions with ATLAS and CMS (and others)  E.g. Instrumentation of existing applications to provide requirements ◦ Strong collaboration with Geant4 team  Quick delivery of running prototypes (I and II) ◦ First prototype in 12 months :-)  Agile project management with ‘short’ cycles ◦ Weekly meetings to review progress and update plans P. Mato/CERN 13

 We need to evaluate some of the existing technologies and design partial prototypes of critical parts ◦ See next slide  The idea would be to organize these R&D activities in short cycles ◦ Coordinating the interested people to cover all aspects ◦ Coming with conclusions (yes/no) within few months P. Mato/CERN 14

 Investigate current LHC applications to gather requirements ◦ Dependencies, data access patterns, opportunities for concurrency, etc.  Investigate design and implementations of state – of-the-art concurrency frameworks ◦ Scheduling (static, dynamic, adaptive), memory model, I/O  Prototype framework elements ◦ Identify ‘exemplar’ algorithms to be parallelized ◦ Data structures and memory allocation strategies ◦ New languages (C++11,…) and libraries (OpenCL,…)  Understanding I/O P. Mato/CERN 15

P. Mato/CERN LHC shutdown Today R&D, technology evaluation and design of critical parts Complete Prototype I Initial adaptation of LHC and Geant4 applications Complete Prototype II with experience of porting LHC applications First production quality release Project definition

 Presented a proposal for the development of the new generic data processing framework with concurrency to exploit new CPU/GPU architectures  Geant4 should be a main player providing simulation specific requirements and taking advantage of the new framework ◦ Would imply some re-engineering of Geant4  Need a R&D program to evaluate existing technologies and development of partial prototypes of critical parts  Some initial ideas for the project definition being outlined P. Mato/CERN 17