Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / 13.2.2006 / Matthias Schneebeli ROME CHEP 2006 Presented by Matthias Schneebeli a universally.

Slides:



Advertisements
Similar presentations
INTRODUCTION TO SIMULATION WITH OMNET++ José Daniel García Sánchez ARCOS Group – University Carlos III of Madrid.
Advertisements

H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2004 Go4 v2.8 Analysis Design.
CHEP04 - Interlaken - Sep. 27th - Oct. 1st 2004T. M. Steinbeck for the Alice Collaboration1/27 A Control Software for the ALICE High Level Trigger Timm.
Intro to dot Net Dr. John Abraham UTPA – Fall 09 CSCI 3327.
October 30, 2008 Extensible Workflow Management for Simmod ESUG32, Frankfurt, Oct 30, 2008 Alexander Scharnweber (DLR) October 30, 2008 Slide 1 > Extensible.
SCRAM Software Configuration, Release And Management Background SCRAM has been developed to enable large, geographically dispersed and autonomous groups.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
Shuei MEG review meeting, 2 July MEG Software Status MEG Software Group Framework Large Prototype software updates Database ROME Monte Carlo.
Introduction to Hall-D Software February 27, 2009 David Lawrence - JLab.
Software Engineering 2003 Jyrki Nummenmaa 1 CASE Tools CASE = Computer-Aided Software Engineering A set of tools to (optimally) assist in each.
DTIAtlasBuilder Adrien Kaiser Neuro Image Research and Analysis Laboratories University of North Carolina at Chapel Hill A tool to create an atlas from.
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
Operated by Los Alamos National Security, LLC for NNSA U N C L A S S I F I E D LDAQ – the New Lujan Center Data Acquisition Application Frans Trouw, Gary.
Introduction of Geoprocessing Topic 7a 4/10/2007.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Softies Meeting Presented by Matthias Schneebeli.
As of 28 Juni 2005Getting Starged with GEM - Shuei Yamada 1 Getting Started with GEM Shuei YAMADA ICEPP, University of Tokyo What is GEM? Before you start.
Systems Software Operating Systems. What is software? Software is the term that we use for all the programs and data that we use with a computer system.
14 February 2007Fabrizio Cei1 INFN and University of Pisa PSI Review Meeting PSI, 14 February 2007 Status of MEG Software.
V. Serbo, SLAC ACAT03, 1-5 December 2003 Interactive GUI for Geant4 by Victor Serbo, SLAC.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME CHEP 2006 Presented by Matthias Schneebeli a universally applicable.
WIRED 4 An extensible generic Event Display Mark Donszelmann SLAC, Stanford, U.S.A. CHEP2004, 27 september – 1 october Interlaken, Switzerland.
MS Visual Basic 6 Walter Milner. VB 6 0 Introduction –background to VB, A hello World program 1 Core language 1 –Projects, data types, variables, forms,
ROOT What & Why? ROOT Status ROOT Application ROOT Install ROOT Example ROOT References Introduction to March 13, 2003 Dae Jung CHEP.
6th Feb 2003SCT DAQ analysis development 1 SCT analysis framework Work by:Alan Barr, Matt Palmer, Dave Robinson Almost all slides originally produced by.
H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2003 GSI Online Offline Object Oriented Go4.
5/2/  Online  Offline 5/2/20072  Online  Raw data : within the DAQ monitoring framework  Reconstructed data : with the HLT monitoring framework.
OCR GCSE Computing © Hodder Education 2013 Slide 1 OCR GCSE Computing Python programming 1: Introduction.
EPICS Release 3.15 Bob Dalesio May 19, Features for 3.15 Support for large arrays - done for rsrv in 3.14 Channel access priorities - planned to.
DEPARTEMENT DE PHYSIQUE NUCLEAIRE ET CORPUSCULAIRE JRA1 Parallel - DAQ Status, Emlyn Corrin, 8 Oct 2007 EUDET Annual Meeting, Palaiseau, Paris DAQ Status.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME CHEP 2006 Presented by Matthias Schneebeli a universally applicable.
David Adams ATLAS DIAL: Distributed Interactive Analysis of Large datasets David Adams BNL August 5, 2002 BNL OMEGA talk.
Talk. Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli ROME CHEP 2006 Presented by Matthias Schneebeli a.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
SoLID simulation with GEMC Zhiwen Zhao 2015/03/26.
H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev ROOT 2002 GSI Online Offline Object Oriented Go4.
Online Monitoring for the CDF Run II Experiment T.Arisawa, D.Hirschbuehl, K.Ikado, K.Maeshima, H.Stadie, G.Veramendi, W.Wagner, H.Wenzel, M.Worcester MAR.
Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Collaboration Meeting in Pisa Presented by Matthias Schneebeli.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Wednesday Seminar Presented by Matthias Schneebeli a universally.
Online Monitoring System at KLOE Alessandra Doria INFN - Napoli for the KLOE collaboration CHEP 2000 Padova, 7-11 February 2000 NAPOLI.
Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
TDAQ Experience in the BNL Liquid Argon Calorimeter Test Facility Denis Oliveira Damazio (BNL), George Redlinger (BNL).
ViciForm – Form Processing Solution Creating Info repositories from documents.
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
October Test Beam DAQ. Framework sketch Only DAQs subprograms works during spills Each subprogram produces an output each spill Each dependant subprogram.
Introduction of Geoprocessing Lecture 9 3/24/2008.
The MEG Offline Project General Architecture Offline Organization Responsibilities Milestones PSI 2/7/2004Corrado Gatto INFN.
1 G4UIRoot Isidro González ALICE ROOT /10/2002.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Softies Meeting Presented by Matthias Schneebeli.
Integrating and Extending Workflow 8 AA301 Carl Sykes Ed Heaney.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Wednesday Seminar Presented by Matthias Schneebeli a universally.
Online Data Monitoring Framework Based on Histogram Packaging in Network Distributed Data Acquisition Systems Tomoyuki Konno 1, Anatael Cabrera 2, Masaki.
Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
May 18th, 2003 RT2003, Montreal1/100 MIDAS Short Course Stefan Ritt (Paul Scherrer Institute, Switzerland) Pierre André Amaudruz (TRIUMF, Canada)
Wednesday NI Vision Sessions
Fermilab Scientific Computing Division Fermi National Accelerator Laboratory, Batavia, Illinois, USA. Off-the-Shelf Hardware and Software DAQ Performance.
DAQ thoughts about upgrade 11/07/2012
Chapter 13 Web Application Infrastructure
Go4 v2.2 Status & Overview CHEP 2003
Development Environment
Presented by Matthias Schneebeli
CMS High Level Trigger Configuration Management
Distributed object monitoring for ROOT analyses with Go4 v.3
ROME Root based Object oriented Midas Extension
Introduction to Programming the WWW I
Talk.
Analysis models and design models
CSCI N317 Computation for Scientific Applications Unit 1 – 1 MATLAB
Java Analysis Studio - Status
Presentation transcript:

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli ROME CHEP 2006 Presented by Matthias Schneebeli a universally applicable analysis framework generator Written by Matthias Schneebeli, Ryu Sawada, Stefan Ritt

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Index Generating frameworks oWhy generating a Framework oHow to generate a Framework Introduction to ROME Generation Process in ROME oFeatures

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Generating Frameworks

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Writing an Analysis Software Different approaches for writing an analysis software for an experiment Writing an analysis software specifically for the experiment Writing an analysis software for all HEP experiments - Generating an analysis framework - Adding experiment specific analysis code by hand  Limited use, only usable for 1 experiment  No help from other experiments  Impossible  Presented in this talk

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Framework Composition of an Analysis Software Experiment independent part of the Framework Analysis Code Code is part of the distribution Code generated by a translation program Code implemented by the experimenter  Experiment dependent code which can be summarized in a experiment description Data structure Task structure Database access, DAQ access  Experiment dependent code which can not be summarized Physical Calculations Event Loop Support functions

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Generating an Analysis Framework Experiment Summarization Data Structure Task Structure Database Connection DAQ Interface... Translation Program ROME classes Task Objects ROME classes Framework Objects Database DAQ System Add Analysis Code

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Benefits of a generated Framework Saves Manpower Leads to better analysis frameworks Leads to better analysis software Clear separation between Framework and Analysis Code Consistent Program Structure -> Easy to read Less Handwritten Code Improvements are shared to other experiments

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Introduction to ROME

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Implementation in ROME XML file for experiment description ROME classes Summarization XML File ROME classes Exp. classes ROMEBuilder Project ROME Distribution Add analysis code Makefile generated and executed by the ROMEBuilder Framework html documentation generated by the ROMEBuilder Experiment independent ROME classes (mostly base classes for the generated classes) Executable Documentation

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli ROME Features For all event based data analysis Fully object oriented Based on Root Online and Offline MySQL database access Access to 2 online DAQs integrated (Midas, Orca) Socket connection to third party software (ROOT sockets) GUI extension generated by the ROMEBuilder XML is used for experiment descriptions Automatic makefile generation and linking performed Experiment documentation created

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli GUI Extension Office Control Room Rome only mode GUI only mode Rome-GUI mode Online Analysis Offline Analysis Socket Connection GUI is also generated Tab based

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Conclusion  It’s possible to generate analysis frameworks  Generating frameworks has a lot of benefits  ROME is such a framework generator   Currently used at PSI (Switzerland) Los Alamos National Laboratory (USA) Triumf (Canada)  Try it out

Back Up Slides

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Interconnections Folders Tasks Fill Read Trees Fill Flag Histograms Fill Disk (Output) Write (ROOT) Disk (Input) Read (any Format)

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Modularity ROME is based on Tasks and Folders. Tasks are independent calculation modules. The interface to the tasks are folders. Tasks can be combined or exchanged arbitrarily, as long as the interface matches. E.g. one can execute different calibration tasks without re-linking. A1A2B1A3B2 A4  Possible even during runtime

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Folders Folder Name Field Name 1 Field Type 1 Field Name 2 Field Type 2 XML File [Field Type 1] Get[Folder Name]()->Get[Field Name 1](); void Get[Folder Name]()->Set[Field Name 1]([Field Type 1] value); Code

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Task Name … XML File void [Experiment Shortcut]T[Task Name]::Init() { } void [Experiment Shortcut]T[Task Name]::BeginOfRun() { } void [Experiment Shortcut]T[Task Name]::Event() { } void [Experiment Shortcut]T[Task Name]::EndOfRun() { } void [Experiment Shortcut]T[Task Name]::Terminate() { } Code Tasks

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Configuration File 1001, offline midas Task 1 yes/no Value 123 XML File

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Program structure Start read configuration file BOR EOR Event read database fill tree read raw data write tree End of Analysis Start ROOT interactive session

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Run Program C:\Sample> ROMEBuilder.exe sample.xml link messages C:\Sample> XYZ q : Terminates the program e : Ends the program s : Stops the program r : Restarts the program c : Continuous Analysis o : Step by step Analysis g : Run until event # i : Root interpreter root [0] TBrowser t root [1] cout GetPMTData()->GetADC() Windows

Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli Installation Installation of ROOT Installation of MIDAS (only online, Linux) [~]$ setenv ROMESYS ~/ROME [~]$ setenv PATH $ROMESYS/bin:$PATH [~]$ cvs checkout ROME [~/ROME]$ make [../MyExp]$ romebuilder myExp.xml [-o Output Path] [~/MyExp]$ progname Linux CVS checkout of ROME Define environment variable ROMESYS Define environment variable ‘Path’ C:\> set ROMESYS=C:/ROME C:\> set Path=%Path%;%ROMESYS%/bin C:\> cvs checkout ROME C:\ROME> nmake –f Makefile.win C:\MyExp> ROMEBuilder.exe myExp.xml –v [–o Output Path] C:\MyExp> progname Windows