AMORE Quality Assurance Integration Filimon Roukoutakis CERN Physics Department ALICE DAQ ALICE Offline Week CERN, 11/10/2007.

Slides:



Advertisements
Similar presentations
Kondo GNANVO Florida Institute of Technology, Melbourne FL.
Advertisements

H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2004 Go4 v2.8 Analysis Design.
1 Generic logging layer for the distributed computing by Gene Van Buren Valeri Fine Jerome Lauret.
1 Databases in ALICE L.Betev LCG Database Deployment and Persistency Workshop Geneva, October 17, 2005.
Peter Chochula, January 31, 2006  Motivation for this meeting: Get together experts from different fields See what do we know See what is missing See.
Supervision of Production Computers in ALICE Peter Chochula for the ALICE DCS team.
DQM news Technical side. Web tools  Advantages  Can be ran out of P2 with access rights  Centrally maintained -> can’t be altered on machines  Modern.
WebDynpro for ABAP Short introduction.
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
(code name: Data Dude) Josh Robinson Aculix.
Quality Control B. von Haller 8th June 2015 CERN.
The SAM-Grid Fabric Services Gabriele Garzoglio (for the SAM-Grid team) Computing Division Fermilab.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
 Cloud computing  Workflow  Workflow lifecycle  Workflow design  Workflow tools : xcp, eucalyptus, open nebula.
Framework for Automated Builds Natalia Ratnikova CHEP’03.
MSS, ALICE week, 21/9/041 A part of ALICE-DAQ for the Forward Detectors University of Athens Physics Department Annie BELOGIANNI, Paraskevi GANOTI, Filimon.
COMP 410 & Sky.NET May 2 nd, What is COMP 410? Forming an independent company The customer The planning Learning teamwork.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
1 Alice DAQ Configuration DB
Microsoft SharePoint Server 2010 for the Microsoft ASP.NET Developer Yaroslav Pentsarskyy
Update on Database Issues Peter Chochula DCS Workshop, June 21, 2004 Colmar.
Experiences, limitations and suggested improvements The ALICE DQM Software and ROOT ROOT Users Workshop Barthelemy von Haller & Adriana Telesca for the.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
Clever Framework Name That Doesn’t Violate Copyright Laws MARCH 27, 2015.
Introduction to dCache Zhenping (Jane) Liu ATLAS Computing Facility, Physics Department Brookhaven National Lab 09/12 – 09/13, 2005 USATLAS Tier-1 & Tier-2.
Control in ATLAS TDAQ Dietrich Liko on behalf of the ATLAS TDAQ Group.
PI Data Archive Server COM Points Richard Beeson.
ALICE, ATLAS, CMS & LHCb joint workshop on
CASTOR evolution Presentation to HEPiX 2003, Vancouver 20/10/2003 Jean-Damien Durand, CERN-IT.
Peter Chochula ALICE Offline Week, October 04,2005 External access to the ALICE DCS archives.
GDB Meeting - 10 June 2003 ATLAS Offline Software David R. Quarrie Lawrence Berkeley National Laboratory
Planning and status of the Full Dress Rehearsal Latchezar Betev ALICE Offline week, Oct.12, 2007.
DGC Paris WP2 Summary of Discussions and Plans Peter Z. Kunszt And the WP2 team.
News on GEM Readout with the SRS, DATE & AMORE
AliRoot survey P.Hristov 11/06/2013. Offline framework  AliRoot in development since 1998  Directly based on ROOT  Used since the detector TDR’s for.
September 2007CHEP 07 Conference 1 A software framework for Data Quality Monitoring in ATLAS S.Kolos, A.Corso-Radu University of California, Irvine, M.Hauschild.
J.P. Wellisch, CERN/EP/SFT SCRAM Information on SCRAM J.P. Wellisch, C. Williams, S. Ashby.
CERN IT Department t LHCb Software Distribution Roberto Santinelli CERN IT/GS.
Differences Training BAAN IVc-BaanERP 5.0c: Application Administration, Customization and Exchange BaanERP 5.0c Tools / Exchange.
INFSO-RI Enabling Grids for E-sciencE ARDA Experiment Dashboard Ricardo Rocha (ARDA – CERN) on behalf of the Dashboard Team.
Dispatching Java agents to user for data extraction from third party web sites Alex Roque F.I.U. HPDRC.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
Jean-Roch Vlimant, CERN Physics Performance and Dataset Project Physics Data & MC Validation Group McM : The Evolution of PREP. The CMS tool for Monte-Carlo.
1 Checks on SDD Data Piergiorgio Cerello, Francesco Prino, Melinda Siciliano.
TDAQ Experience in the BNL Liquid Argon Calorimeter Test Facility Denis Oliveira Damazio (BNL), George Redlinger (BNL).
The ATLAS DAQ System Online Configurations Database Service Challenge J. Almeida, M. Dobson, A. Kazarov, G. Lehmann-Miotto, J.E. Sloper, I. Soloviev and.
A. Gheata, ALICE offline week March 09 Status of the analysis framework.
The DCS Databases Peter Chochula. 31/05/2005Peter Chochula 2 Outline PVSS basics (boring topic but useful if one wants to understand the DCS data flow)
1 A Scalable Distributed Data Management System for ATLAS David Cameron CERN CHEP 2006 Mumbai, India.
Event Management. EMU Graham Heyes April Overview Background Requirements Solution Status.
DZero Monte Carlo Production Ideas for CMS Greg Graham Fermilab CD/CMS 1/16/01 CMS Production Meeting.
DDM Central Catalogs and Central Database Pedro Salgado.
Database Issues Peter Chochula 7 th DCS Workshop, June 16, 2003.
Slide 1 Chapter 8 Architectural Design. Slide 2 Topics covered l System structuring l Control models l Modular decomposition l Domain-specific architectures.
CLIENT SERVER COMPUTING. We have 2 types of n/w architectures – client server and peer to peer. In P2P, each system has equal capabilities and responsibilities.
The ALICE data quality monitoring Barthélémy von Haller CERN PH/AID For the ALICE Collaboration.
M. Caprini IFIN-HH Bucharest DAQ Control and Monitoring - A Software Component Model.
Barthélémy von Haller CERN PH/AID For the ALICE Collaboration The ALICE data quality monitoring system.
INFSOM-RI Elisabetta Ronchieri INFN CNAF ETICS 2 nd EU Review (CERN) 15 February 2008 WP3 - Software Configuration Tools and Methodologies.
Fermilab Scientific Computing Division Fermi National Accelerator Laboratory, Batavia, Illinois, USA. Off-the-Shelf Hardware and Software DAQ Performance.
Sergi Rubio Manrique “Archiving System at ALBA”. Tango Meeting. ALBA. October 16 th, MMVIII 1 Archiving ALBA Sergi Rubio Manrique.
DAQ thoughts about upgrade 11/07/2012
Installation The Intercompany Integration Solution for SAP Business One Version 2.0 for SAP Business One 9.1 Welcome to the course on the installation.
The Development Process of Web Applications
Status of the CERN Analysis Facility
Experience between AMORE/Offline and sub-systems
Department of Computer Science Homepage
Advanced Integration and Deployment Techniques
Installation The Intercompany Integration Solution for SAP Business One Version 2.0 for SAP Business One 9.1 Welcome to the course on the installation.
Offline framework for conditions data
Presentation transcript:

AMORE Quality Assurance Integration Filimon Roukoutakis CERN Physics Department ALICE DAQ ALICE Offline Week CERN, 11/10/2007

11/10/2007Filimon Roukoutakis, CERN Physics Department22 The big picture amoreAgent01amoreAgent02 amoreAgent03amoreAgent04 DAQ Monitoring Servers amorePool DAQ Dataflow Nodes LDC01 LDC02 LDC03 GDC01 GDC02 GDC03 ALICE Control Room Amore GUI 01 Amore GUI 02

11/10/2007Filimon Roukoutakis, CERN Physics Department3 Fundamental design requirements Follow the publish-subscribe paradigm to allow scalable many-to-many connection between monitoring information producers and consumers. Introduce intermediate pools of monitoring data for full decoupling, thus use a classic 3-tier design No dependency on user code, which will be stored in the offline CVS. This is done through usage of C++/ROOT reflection abc_ptr* myptr=gROOT->GetClass(“derived_class_name”)->New() Use the same IPC/control systems as our DAQ framework, namely DIM and SMI++ Use MySQL for data pools and configuration It should have a “lovely” name, like all the DAQ software (DATE, MOOD, AFFAIR). We called it AMORE (=Automatic MOnitoRing Environment) 3

11/10/2007Filimon Roukoutakis, CERN Physics Department4 Computing model 4 amoreDETAgent_1 amoreDETAgent_N amoreDETAgent_I amoreDETAgent_J amoreGUI_1amoreGUI_N amorePool_1 amorePool_N MySQL DimCommand DimService MySQL … … … … Raw data O(10^4), f<=1 KHz O(10^2), f<0.1 Hz

11/10/2007Filimon Roukoutakis, CERN Physics Department5 Status First released mid-July Current version 0.2.1, 4 versions released Can partially replace MOOD (Full physics analysis possible but no interactivity on the agent by design) 1 detector implementation (TOF), consult Roberto Preghenella’s talk “First experience with AMORE”, ALICE week Oct’07, DAQ meeting Fully standalone framework with the ability to use AliRoot

11/10/2007Filimon Roukoutakis, CERN Physics Department6 Publishers and subscribers amoreAgent is an FSM running a single publisher and (optionally) many subscribers amoreGUI runs many subscribers Each subscriber is associated to a single publisher Publisher and subscribers execute user code in classes derived from special ABCs that define the interface to be called by the FSM Arbitrary number of publisher and subscriber “modules” with user code can exist in user-created libraries and can be loaded at runtime by the framework 6

11/10/2007Filimon Roukoutakis, CERN Physics Department77 PublisherModule We follow the “Template Method” OO Design Pattern. User code overriding this ABC resides in a dynamic library loaded at runtime Arbitrary number of modules can coexist in the detector library, loadable by name automagically by ROOT reflection An agent can exchange the whole module with another one at runtime with time resolution of a MonitorCycle. (Infrastructure exists, API on client side missing to do it and probably to risky to do anyway!)

11/10/2007Filimon Roukoutakis, CERN Physics Department88 MonitorObjects Template based design, static safe, one cannot e.g. Fill(x, y, z) a 1-D histogram. All fundamental C++ types and relevant ROOT types are supported. Attributes control the reset/update behavior, done automatically by the framework. Factories are responsible for the creation/registration/access/destruction of MonitorObjects MonitorObjectArray (of fundamental C++ types) under evaluation MonitorObjectTObj also supported for transport of arbitrary objects to/from amorePools (Will be used by QA)

11/10/2007Filimon Roukoutakis, CERN Physics Department9 Data Quality Assesment The idea is to reuse MonitorObjects as dq assesment “results” combined with references to other MonitorObjects if needed Data Quality checks are friends or members of the MonitorObject type they make sense to be applied on. Examples are: Value within range, chi^2, Kolmogorov,… Based on the “value/status” of such a MonitorObject, a process that subscribes to it can take required action, like printing messages, changing screen colors, notifying the ECS,… This is not relevant to QA execution, which will have its own assessment mechanisms 9

11/10/2007Filimon Roukoutakis, CERN Physics Department10 Visualization gROOT->LetThereBeLight() Arbitrary number of prebuilt visual layouts, loaded by name any time during a run on AMORE GUI. Unlike any other existing DQM framework, in AMORE the C++ code IS the visual layout configuration (no need for elaborate XML/txt configuration) through the magic of Reflection. We will still be able load configuration values from an external file/db if this is needed by detectors. A “browser” of the available MonitorObjects should be eventually in place

11/10/2007Filimon Roukoutakis, CERN Physics Department11 Current development activities According to design specifications, a subscribing process must be able to collect data from multiple agents. Implemented, under testing Implement selective subscription mechanism and second-level agents that can act as subscribers. Under design finalization. DA to AMORE interface: Prototype implemented, need to discuss a few housekeeping/bootstrapping issues within DAQ. Essentially a cut down version of AMORE allowing dispatching/retrieval of discrete, single TObjects at-a-time to/from amorePools.

11/10/2007Filimon Roukoutakis, CERN Physics Department12 Offline QA execution in AMORE Will use part of AMORE capabilities QA framework has been refactored to be compatible with AMORE FSM QA Objects can export a TList of histograms that is accessible by AMORE for publication Detector experts need to implement an AMORE “Publisher” module in such a way that there is 1-1 correspondence between the AMORE and the QA flow of execution. An example will be available soon. A UI module must be also provided in order to visualize the histograms at runtime. These modules will be part of AliRoot as separate targets ala DA code A tagged version of AliRoot must be deployed on the monitoring servers, could change once a week and will be common for all detectors (shared libraries are used). -> Detector code is production quality, no possibility to use HEAD version.

11/10/2007Filimon Roukoutakis, CERN Physics Department13 Sample of AMORE-QA Interface void PublisherQA::BookMonitorObjects() { fqadmList=fqadm->Init(AliQualAss::kRAWS, 0, 0); TListIter* lIt=(TListIter*)fqadmList->MakeIterator(); TNamed* obj; while((obj=(TNamed*)lIt->Next())) Publish(obj, obj->GetName()); } void PublisherQA::StartOfCycle() { fqadm->StartOfCycle(AliQualAss::kRAWS); } void PublisherQA::EndOfCycle() { fqadm->EndOfCycle(AliQualAss::kRAWS); } void PublisherQA::MonitorEvent(amore::core::Event& event) { fqadm->Exec(AliQualAss::kRAWS, event.GetAliRawReader()); }

11/10/2007Filimon Roukoutakis, CERN Physics Department14 Partially un-dressed rehearsal with AMORE during cosmics Following ATLAS/CMS experience on several combined cosmic runs, Deploy < 10 agents The goal will be to test the framework with the most advanced detectors at that time and in addition the DA-AMORE interface, especially if more detectors requests come for this. Plan of work for each detector (Contact person): –Implement your QA according to offline requirements (Yves) –Implement the AMORE interface to the QA (Filimon) –Deploy on a basic test system (ala DAs) (Filimon) –Deploy at Pt2 (Filimon)

11/10/2007Filimon Roukoutakis, CERN Physics Department15 High priorities An agent control mechanism through SMI++ Implement 3 basic functions (SOR, EOR, Reset) to test the concept. Only afterwards integrate with ECS… A MonitorObject “browser”. If an agent has several thousands MonitorObjects, dynamic selection of the viewed histograms is needed. This requires a working implementation of the full subscritpion mechanism (previous slides). It will reuse AliEVE components… Archival of results at EOR. We can have a semi-trivial implementation by exporting ROOT files to FXS before other needs are identified. Related to first point. Retrieval of DCS information will be done through DCS FXS in form of ROOT files that will be available to an amoreAgent at SOR.

11/10/2007Filimon Roukoutakis, CERN Physics Department16 Conclusions Released since >2 months Stable functionality, API is probably well defined, still some work to bring the promised futures to the users (but these will magically appear with every new version ) AMORE is currently MOOD on steroids. amoreAgent can easily handle O(10^3) MonitorObjects and the MonitorObject handling is already well defined. Several things need to be in place for cosmic run but the needs are better defined now. Further detector requirements will be honored after cosmics but discussion can be ongoing. QA integration into AMORE is rather trivial. It is now top priority that QA code is functional so it can be used by AMORE.

11/10/2007Filimon Roukoutakis, CERN Physics Department17 BACKUP

11/10/2007Filimon Roukoutakis, CERN Physics Department18 RDBMS as amorePool Pool implementation is the most critical one for several reasons Most problems are common to the ones RDBMS try to solve -> Try to use a solution written by experts to do our job -> Use MySQL Each amoreAgent has its own table in a database to store the published data. When a subscriber “subscribes’ to this agent, essentially accesses this table to retrieve monitoring data MySQL is also used for the configuration of the system and agent bootstrapping The pool implementation is isolated behind an abstract “dispatching” interface. A custom created pool can almost transparently replace the MySQL implementation. 18

11/10/2007Filimon Roukoutakis, CERN Physics Department19 Deployment $AMORE -\ (=/opt/amore) bin -\ The AMORE batch and interactive executables and the setup/configuration shell scripts include -\ amore -\ *.h (The AMORE API) lib -\ The AMORE libraries, static and dynamic versions) Distributed as a binary RPM package for SLC4 Requirements: ROOT >= 5.16, DATE 6.x (DAQ software framework), MySQL (DATE compatible version) $AMORE_SITE -\ (=/opt/amoreSite) lib -\ libAmoreDETCommon libAmoreDETPublisher libAmoreDETSubsciber libAmoreDETUI DET=3 alphanumeric digit official DET code A template DET tarball contains example code and makefiles to create the libraries above and package them in RPM These libraries readily link against ROOT/AliROOT by default (SINGLE version existing on DAQ network). They use the AMORE API in $AMORE/include/amore No need for a central repository for DET code in DAQ CVS (The offline may however pursue this if desirable). All common stuff that is to be used by both servers and clients should be in Common lib. Do not assume that all the libraries exist in every system. All code lives under amore::DET::xxx namespaces, xxx=publisher, subscriber, ui, common

11/10/2007Filimon Roukoutakis, CERN Physics Department20 MOOD replacement (To be scheduled) A single process application like MOOD, essentially fusing amoreAgent+amore and bypassing the need of amorePool. It will load concurrently the PublisherModule and UIModule desired, so full AMORE code reuse is guaranteed. All the advantages of AMORE, namely revised core functionality and no DET code dependency of the source distribution. Could be just another binary target in the AMORE distribution, namely a “MOOD” distributed within AMORE. Timeline: Prototype early 2008 ???