Experiences, limitations and suggested improvements The ALICE DQM Software and ROOT ROOT Users Workshop Barthelemy von Haller & Adriana Telesca for the.

Slides:



Advertisements
Similar presentations
Usage Statistics in Context: related standards and tools Oliver Pesch Chief Strategist, E-Resources EBSCO Information Services Usage Statistics and Publishers:
Advertisements

Websydian Anne-Marie Arnvig Manager, Websydian Communications & Relations.
Websydian products.
Usage of the memoQ web service API by LSP – a case study
Data Quality Monitoring workshop. What this presentation is not What it is and how it is organized  Definition of DQM  Overview of systems and.
The DataFlex Web Framework Changing the Game Stephen W. Meeley Development Team Data Access Worldwide
The Developer Perspective Michelle Osmond. Design – Requirements Gathering Sales & Research projects –Prototypes/Demos User group meetings Usability workshops.
Web Applications Development Using Coldbox Platform Eddie Johnston.
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.
Microsoft ASP.NET AJAX - AJAX as it has to be Presented by : Rana Vijayasimha Nalla CSCE Grad Student.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Client/Server Architectures
Quality Control B. von Haller 8th June 2015 CERN.
Bertrand Bellenot root.cern.ch ROOT I/O in JavaScript Reading ROOT files from any web browser ROOT Users Workshop
Reading ROOT files in any browser ROOT I/O IN JAVASCRIPT Bertrand Bellenot CERN, PH-SFT.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
ROOT An object oriented HEP analysis framework.. Computing in Physics Physics = experimental science =>Experiments (e.g. at CERN) Planning phase Physics.
LAYING OUT THE FOUNDATIONS. OUTLINE Analyze the project from a technical point of view Analyze and choose the architecture for your application Decide.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
AJAX Chat Analysis and Design Rui Zhao CS SPG UCCS.
- Circle markers produced by TAsimage: They do not match was is produced on screen. The line width is too thick. Some other markers need to be tune a bit.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Overview of Previous Lesson(s) Over View  ASP.NET Pages  Modular in nature and divided into the core sections  Page directives  Code Section  Page.
Zubanov Alexei, 2006 Aug 07 – Sep 28 QtROOT package extension with Coin3D lib.
Mobile search engine for a smart phone / navigation system can be used to search and compare hundreds of stores and their products in seconds. © 2001 –
Introduction to Hall-D Software February 27, 2009 David Lawrence - JLab.
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
Codeigniter is an open source web application. It occupies a very small amount of space in the memory and is most useful for developers who aim to develop.
Drag and Drop Display and Builder. Timofei B. Bolshakov, Andrey D. Petrov FermiLab.
JavaScript ROOT Bertrand Bellenot (CERN) Sergey Linev (GSI)
Google Web Toolkit An Overview By Shauvik Roy Choudhary.
Axel Naumann University of Nijmegen / NIKHEF, NL ROOT 2004 Users Workshop The Future of THtml Plans and Status of ROOT’s documentation facility.
Microsoft ® Business Solutions–Navision ® 4.0 Development II - C/SIDE Solution Development Day 5.
PVSSProxy The first piece of the MACS procedure framework (ProShell) Angela Brett.
© 2006 IBM Corporation Agile Planning Web UI. © 2006 IBM Corporation Agenda  Overview of APT Web UI  Current Issues  Required Infrastructure  API.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Tracker data quality monitoring based on event display M.S. Mennea – G. Zito University & INFN Bari - Italy.
1 Control Software (CAT) Introduction USB Interface implementation Calorimeter Electronics Upgrade Meeting Frédéric Machefert Wednesday 5 th May, 2010.
WEP Presentation for non-IT Steps and roles in software development 2. Skills developed in 1 st year 3. What can do a student in 1 st internship.
240-Current Research Easily Extensible Systems, Octave, Input Formats, SOA.
ALICE feedback to the ROOT Program of Work P. Hristov 14/06/2013.
THttpServer for ROOT Bertrand Bellenot, CERN Sergey Linev, GSI Darmstadt
CMS pixel data quality monitoring Petra Merkel, Purdue University For the CMS Pixel DQM Group Vertex 2008, Sweden.
HTML5 AND THE FUTURE JAVASCRIPT PLATFORM Marcelo Lopez Ruiz Senior Software Design Engineer Microsoft Corporation.
CHEP 2013, Amsterdam Reading ROOT files in a browser ROOT I/O IN JAVASCRIPT B. Bellenot, CERN, PH-SFT B. Linev, GSI, CS-EE.
News on GEM Readout with the SRS, DATE & AMORE
Using MS Excel to validate & load your data into Oracle EBS.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
INFSO-RI Enabling Grids for E-sciencE ARDA Experiment Dashboard Ricardo Rocha (ARDA – CERN) on behalf of the Dashboard Team.
ROOT I/O in JavaScript Browsing ROOT Files on the Web For more information see: For any questions please use following address:
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.
Computing R&D and Milestones LHCb Plenary June 18th, 1998 These slides are on WWW at:
23/2/2000Status of GAUDI 1 P. Mato / CERN Computing meeting, LHCb Week 23 February 2000.
LCG AA Meeting 31 October 2007 The new dynamically and extensively customizable ROOT browser Bertrand Bellenot.
Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech.
CERN IT Department CH-1211 Genève 23 Switzerland t Migration from ELFMs to Agile Infrastructure CERN, IT Department.
Reading ROOT files in (almost) any browser.  Use XMLHttpRequest JavaScript class to perform the HTTP HEAD and GET requests  This class is highly browser.
1 G4UIRoot Isidro González ALICE ROOT /10/2002.
LECTURE #4: JQUERY AND FORM VALIDATION Josh Kaine Josh Kaine 4/1/2016.
The ALICE data quality monitoring Barthélémy von Haller CERN PH/AID For the ALICE Collaboration.
Northwest Arkansas.Net User Group Jay Smith Tyson Foods, Inc. Unit Testing nUnit, nUnitAsp, nUnitForms.
Online Data Monitoring Framework Based on Histogram Packaging in Network Distributed Data Acquisition Systems Tomoyuki Konno 1, Anatael Cabrera 2, Masaki.
A System for Monitoring and Management of Computational Grids Warren Smith Computer Sciences Corporation NASA Ames Research Center.
Barthélémy von Haller CERN PH/AID For the ALICE Collaboration The ALICE data quality monitoring system.
DAQ thoughts about upgrade 11/07/2012
QC-specific database(s) vs aggregated data database(s) Outline
XML-RPC Web Services in WinCC OA An Application: online PARA JCOP FWWG Meeting Lorenzo Masetti.
GFA Controls IT Alain Bertrand
3D graphics in JavaScript ROOT
WEB DESIGN Cross 11, Tapovan Enclave Nala pani Road, Dehradun : ,
Presentation transcript:

Experiences, limitations and suggested improvements The ALICE DQM Software and ROOT ROOT Users Workshop Barthelemy von Haller & Adriana Telesca for the ALICE DAQ Collaboration

ALICE : A Large Ion Collider Experiment  18 detectors  Trigger rate : 10 KHz (max)  Bandwidth to mass storage : 1.25 GB/s Online usage of ROOT  « ROOTification »  Detector algorithms  Data Quality Monitoring ROOT in ALICE Online 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 2

Online feedback on the quality of data Make sure to take and record high quality data Identify and solve problem(s) early Data Quality Monitoring (DQM) involves -Online gathering of data -Analysis by user-defined algorithm -Storage of monitoring data -Visualization Data Quality Monitoring 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 3

AMORE : Automatic MOnitoring Environment A DQM framework for the ALICE experiment The AMORE framework 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 4

Publisher – Subscriber paradigm Database used for the data pool Published objects are encapsulated into « MonitorObject » structure Design & Architecture 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 5

MonitorObjects 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 6 Dictionaries allow introspection in the client Standard ROOT interfaces  Easier for users, e.g. call Draw() blindly MOTObject allows embedding custom types

Data pool implemented as a database  TMessage used to serialize MonitorObjects  TMySQLServer et al. Plugin architecture using ROOT reflection  Modules are dynamic libraries loaded at runtime Custom and generic GUI (see next slides) Macro for quick post-processing without releasing new version of a module AMORE and ROOT 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 7

Detectors custom GUI  Expert view of the data their agent publishes User interfaces (1) 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 8

Generic User Interface  Based on TRootBrowser, custom TGListTree  TXMLEngine for layouts and preferences files User interfaces (2) 11/03/2013 9

Web access to images of the plots via the ALICE eLogbook Web access Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 10

ROOT provided key features  C++ database interface  Plugin mechanism  GUI  Macros  XML We could have done the same with a palette of tools, here we got it all at once Quick, kind and effective support Still, anything can always be improved… Experience 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 11

ROOT not web friendly (Bertrand gives us hope!)  View and manipulate ROOT objects like in a TCanvas/GUI  Others are working on solutions, lack of concertations ? Axes are not easy to manipulate  Responsibilities are unclear (histo, pad, axis)  Time-based axes should be far easier to use Objects ownership  E.g. TH1 with « functions » encapsulated in a MOTObject  E.g. THStack (main histo is destroyed, not the others) CMake: missing FindROOT.cmake or ROOTConfig.cmake Using ROOT as a simple library (no TApplication)  We want our core files and stack traces Difficulties (1) 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 12

Histograms hierarchy is wrong Sometimes obscure or inconsistent class interfaces  E.g. TMessage::EnableSchemaEvolution() does actually nothing if not used in conjunction with TSocket  E.g. Zoom is a property of TH1 != draw option and log scale are properties of TPad GUI: powerful but writing them is tough, error prone and pretty verbose Support  Too often the answer is « Why don’t you do it this way? » instead of fixing the issue C++ standard or ROOT standard ?  STL, Boost, Collections and types Difficulties (2) 11/03/

Code name « redemption » 1.No major new features 2.Fix the (base) classes inheritance and interfaces o Hopefully it can even be backward compatible 3.Make ROOT web friendly 4.Make ROOT looks nice o GUI and graphics need a modern look and feel o Simplify GUI programming while you are at it Prepare ROOT for the next 20 years and protect future users from mistakes made 20 years ago. My ideal ROOT 7 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 14

The ALICE DQM uses and relies on many features of ROOT ROOT provided a very complete toolbox which helped us develop effectively AMORE ROOT is going to be used for many more years and, today, there is an opportunity to fix long-standing issues Thank you for all the good work ! Conclusion 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 15

Backup slides 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 16

TMessage and objects evolution 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 17 Producer ROOT v. X Consumer ROOT v. Y>X TMes sage Datab ase Monitor Object Monitor Object Monitor Object Streamer Incompatible and no Streamer EnableSchemaEvolution doesn’t actually help. It only raises a flag in Tmessage that is used by TSocket

Web ROOT 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 18 An event (click) means a histo must be drawn An event (click) means a histo must be drawn 1.Get histo1 2.Use a special printer or method on the object 3.Send back the JSON or HTML5+JS or SVG+SMIL 1.Get histo1 2.Use a special printer or method on the object 3.Send back the JSON or HTML5+JS or SVG+SMIL myDiv.content = JSROOT.Draw(json) Another approach HTTP request (AJAX) Ask for data of histo1 JSON data HTML5+JS SVG+SMIL OR myDiv.content = data Server Client

JSON : close to what BB is doing, still people can easily use the js lib alone. Need for a performant and complete histograming JS library Adding DrawWeb() to classes seems a reasonably important effort (?) Creating a specific printer might even be simpler If no printer/method available for a certain type, simply degrade to generate an image. HTML or SWIG is lighter for the client but today clients (browsers) are powerful Web ROOT 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 19

To be done in the JSON option:  Client o Optionally develop a facility js library to handle the request to server and the drawing in a div  Server / ROOT o Find the best way of generating JSON for any object (new Printer or addition method in TObject). If not defined fall back to an image ?  Client o Develop an efficient and complete histograming javascript library (drawing and manipulation). Usable without ROOT. Web ROOT 11/03/2013 Barthélémy von Haller & Adriana Telesca, ALICE, PH department, CERN 20