LC Software Workshop, 28-29 May 2009, CERN P. Mato /CERN.

Slides:



Advertisements
Similar presentations
Towards a Practical Composition Language Oscar Nierstrasz Software Composition Group University of Bern.
Advertisements

Ideas on the LCG Application Architecture Application Architecture Blueprint RTAG 12 th June 2002 P. Mato / CERN.
Vincenzo Innocente, BluePrint RTAGNuts & Bolts1 Architecture Nuts & Bolts Vincenzo Innocente CMS.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Joomla By: Mohammed Saleh Florencio. Joomla one of the most powerful Open Source Content Management Systems on the planet. It is used all over the world.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
SEAL V1 Status 12 February 2003 P. Mato / CERN Shared Environment for Applications at LHC.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
OpenAlea An OpenSource platform for plant modeling C. Pradal, S. Dufour-Kowalski, F. Boudon, C. Fournier, C. Godin.
Framework for Automated Builds Natalia Ratnikova CHEP’03.
TILC09, April 2009, Tsukuba P. Mato /CERN.  Former LHCb core software coordination ◦ Architect of the GAUDI framework  Applications Area manager.
Using ROOT classes from Python ROOT Workshop October 2002 P. Mato / CERN.
Java Analysis Studio Status Update 12 May 2000 Altas Software Week Tony Johnson
JAS3 + AIDA LC Simulations Workshop SLAC 19 th May 2003.
Blueprint RTAG Status Torre Wenaus, BNL/CERN SC2 Meeting July 5, 2002.
David Adams ATLAS ATLAS Distributed Analysis David Adams BNL March 18, 2004 ATLAS Software Workshop Grid session.
HPS Online Software Discussion Jeremy McCormick, SLAC Status and Plans.
The PH-SFT Group Mandate, Organization, Achievements Software Components Software Services Summary January 31st,
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett The Athena Control Framework in Production, New Developments and Lessons Learned.
Common Application Software for the LHC experiments NEC’2007 International Symposium, Varna, Bulgaria September 2007 Pere Mato, CERN.
SEAL: Core Libraries and Services Project CERN/IT After-C5 Meeting 6 June 2003 P. Mato / CERN.
Control in ATLAS TDAQ Dietrich Liko on behalf of the ATLAS TDAQ Group.
MINER A Software The Goals Software being developed have to be portable maintainable over the expected lifetime of the experiment extensible accessible.
Introduction to Gaudi LHCb software tutorial - September
Frameworks CompSci 230 S Software Construction.
SEAL: Common Core Libraries and Services for LHC Applications CHEP’03, March 24-28, 2003 La Jolla, California J. Generowicz/CERN, M. Marino/LBNL, P. Mato/CERN,
SEAL Core Libraries and Services CLHEP Workshop 28 January 2003 P. Mato / CERN Shared Environment for Applications at LHC.
Overview of DAQ at CERN experiments E.Radicioni, INFN MICE Daq and Controls Workshop.
SEAL Project Core Libraries and Services 18 December 2002 P. Mato / CERN Shared Environment for Applications at LHC.
Introduction to CMSSW Framework Concepts Simulation & Reconstruction Liz Sexton-Kennedy January 10, 2008.
LC Software Workshop, May 2009, CERN P. Mato /CERN.
GDB Meeting - 10 June 2003 ATLAS Offline Software David R. Quarrie Lawrence Berkeley National Laboratory
ATLAS Meeting CERN, 17 October 2011 P. Mato, CERN.
Design Reuse Earlier we have covered the re-usable Architectural Styles as design patterns for High-Level Design. At mid-level and low-level, design patterns.
Detector Description in LHCb Detector Description Workshop 13 June 2002 S. Ponce, P. Mato / CERN.
Gaudi Framework Tutorial, Interfacing Gaudi with Python.
SEAL Project Overview LCG-AA Internal Review October 2003 P. Mato / CERN.
Testing and integrating the WLCG/EGEE middleware in the LHC computing Simone Campana, Alessandro Di Girolamo, Elisa Lanciotti, Nicolò Magini, Patricia.
GLAST LAT Project Science Tools - 12 June 2002 T. Burnett 1 The Science Analysis Software Development Environment -- for tools too! T. Burnett.
General requirements for BES III offline & EF selection software Weidong Li.
CERN Tutorial, February Introduction to Gaudi.
Preliminary Ideas for a New Project Proposal.  Motivation  Vision  More details  Impact for Geant4  Project and Timeline P. Mato/CERN 2.
The SEAL Component Model Radovan Chytracek CERN IT/DB, LCG AA On behalf of LCG/SEAL team This work received support from Particle Physics and Astronomy.
SEAL Project Status SC2 Meeting 16th April 2003 P. Mato / CERN.
INFSO-RI Enabling Grids for E-sciencE Using of GANGA interface for Athena applications A. Zalite / PNPI.
SMI 7 May 2008B. Franek SMI++ Framework Knowledge Exchange seminar 1 SMI++ Object-Oriented Framework for Designing and Implementing Distributed Control.
Geant4 User Workshop 15, 2002 Lassi A. Tuura, Northeastern University IGUANA Overview Lassi A. Tuura Northeastern University,
CPT Week, November , 2002 Lassi A. Tuura, Northeastern University Core Framework Infrastructure Lassi A. Tuura Northeastern.
Interfacing Gaudi to the Grid (GANGA) Introduction Requirements Architecture and design Interfacing to the Grid Ganga prototyping A. Soroko (Oxford), K.
David Adams ATLAS ATLAS Distributed Analysis and proposal for ATLAS-LHCb system David Adams BNL March 22, 2004 ATLAS-LHCb-GANGA Meeting.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
Follow-up to SFT Review (2009/2010) Priorities and Organization for 2011 and 2012.
Project Work Plan SEAL: Core Libraries and Services 7 January 2003 P. Mato / CERN Shared Environment for Applications at LHC.
SuperB Computing R&D Workshop 9-12 March 2010, IUSS, Ferrara, Italy P. Mato /CERN.
VI/ CERN Dec 4 CMS Software Architecture vs Hybrid Store Vincenzo Innocente CMS Week CERN, Dec
Muon Collider Physics Workshop November 2009, Fermilab P. Mato /CERN.
Discussion with Blueprint RTAG August 2002 Tony Johnson SLAC.
Barthélémy von Haller CERN PH/AID For the ALICE Collaboration The ALICE data quality monitoring system.
16 th Geant4 Collaboration Meeting SLAC, September 2011 P. Mato, CERN.
SEAL: Common Core Libraries and Services for LHC Applications
CMS High Level Trigger Configuration Management
The LHCb Software and Computing NSS/IEEE workshop Ph. Charpentier, CERN B00le.
HEP detector description supporting the full experiment life cycle
SW Architecture SG meeting 22 July 1999 P. Mato, CERN
Detector Description in LHCb
Simulation and Physics
Strategy for development of new software
What’s new in version 4 of GAUDI
SEAL Project Core Libraries and Services
Planning next release of GAUDI
Presentation transcript:

LC Software Workshop, May 2009, CERN P. Mato /CERN

 All experiments have developed Software Frameworks ◦ General architecture of any event processing applications (simulation, trigger, reconstruction, analysis, etc.) ◦ To achieve coherency and to facilitate software re-use ◦ Hide technical details to the end-user Physicists ◦ Help the Physicists to focus on their physics algorithms  Applications are developed by customizing the Framework ◦ By the “composition” of elemental Algorithms to form complete applications ◦ Using third-party components wherever possible and configuring them  ALICE: AliROOT; ATLAS+LHCb: Athena/Gaudi; CMS: CMSSW 29/5/09LC Software Framework -- P. Mato/CERN2

 Predefined component ‘vocabulary’ ◦ E.g. ‘Algorithm’, ‘Tool’, ‘Service’, ‘Auditor’, ‘DataObject’, etc.  Separation from interfaces & implementation ◦ Evolution of implementations  Plug-in based (dynamic loading)  Homogenous configuration, logging and error reporting  Built-in profiler, monitoring, utilities, etc.  Interoperable with other languages (e.g. Java, Python, etc.) 29/5/09LC Software Framework -- P. Mato/CERN3

 GAUDI is a mature software framework for event data processing used by several HEP experiments ◦ ATLAS, LHCb, HARP, GLAST, Daya Bay, Minerva, BES III,…  The same framework is used for all applications ◦ All applications behave the same way (configuration, logging, control, etc.) ◦ Re-use of ‘Services’ (e.g. Det. description) ◦ Re-use of ‘Algorithms’ (e.g. Recons -> HTL)  Equivalent to MARLIN 29/5/09LC Software Framework -- P. Mato/CERN4

 Common interfaces/formats between detector concepts is good but adopting a “common framework” is even better ◦ It would enable one level up in re-use (at the algorithm/tool level)  What are the alternatives? ◦ Evolve MARLIN and be universally adopted? ◦ Use an existing LHC framework (e.g. GAUDI, AliROOT)? ◦ Do something else? 29/5/09LC Software Framework -- P. Mato/CERN5

8/3/02Using ROOT classes in Python6  Python could also be seen as a framework where you can plug easily “extension modules” in binary form implemented using other languages. ◦ Very easy and natural to interface to C++ classes ◦ Python should only be the “glue” between modules developed in C++ or other languages ◦ The interface (API) for Python extension modules is quite simple and at the same time very flexible (generic functions)

8/3/02Using ROOT classes in Python7 GUI Python math shell GaudiPython DatabaseGanga GUI Very rich set of Python standard modules Several GUI toolkits XML Very rich set specialized generic modules Gaudi Framework PyROOT Root (C++) Classes PVSS JPype Java Classes LHC modules Gateways to other frameworks

 The high-level steering of applications could be done in Python ◦ Configuration, plugin (module) loading, event loop, algorithm scheduling, etc. ◦ The low Python execution performance shouldn’t be a problem at this level  The real number crunching done in a proper language  Essential to define ‘interfaces’ for the framework components ◦ As it is the case for the C++ framework 29/5/09LC Software Framework -- P. Mato/CERN8

???? 29/5/09LC Software Framework -- P. Mato/CERN9