Summary of meeting with LHCb on 13/12/02
Guy Barrand, Nick Brook, Marco Cattaneo, Philippe Charpentier, Gloria
Corti, John Harvey, Pere Mato
To manage wide-area distributed computing LHCb has develop SLICE.
SLICE addresses large batch production: it is based on WAN and LAN
client-server architectures for job submission and control. It integrates
a work-flow manager based on RDBMS technology.
In many respects SLICE is similar to Alien even if it is based on very
Short-Medium term plans
At the moment Slice does not address end-user needs besides publishing
a "catalog" of the available data.
There is no plan to expand SLICE to cover non-production use-cases.
For this LHCb is developing, together with ATLAS, Ganga.
LHCb does not plan any tight integration neither in Slice nor in Ganga
of grid-middleware (at least in the time scale of LCG-1).
LCG-1 will be seen just as one more site available to LHCb.
LHCb is worried about the robustness, readiness and stability
of grid middleware, particularly for what concern the content of LCG-1.
LHCb simulation, reconstruction and analysis software is based on the
The current approach sees simulation and reconstruction run as production
jobs with output a "DST" containing reconstructed objects.
Physicists run an analysis program (DaVinci) to produce analysis objects
or directly histograms.
Analysis objects are saved using standard Gaudi persistency-service.
Currently, transient histograms are based on AIDA/HTL and saved as native
Root histograms by the Gaudi histogram-service.
Each event is annotated with a tag that is used for fast selection.
Physicists currently use an implementation based on Root trees.
A RDBMS based implementation (using an ODBC interface) is also available.
Medium/Long Term view
LHCb general strategy is to provide a palette of possibilities centred
around python as component glue.
Although root-trees may well remain the most popular implementation
of event-tags, LHCb does not plan to use native root as analysis
environment: Event-tags will be used solely for fast selection purposes,
to store any long-life quantity physicists will be encouraged to create analysis-objects.
LHCb plans to deploy an interactive version of DaVinci with the ability
to create and access analysis-objects.
The baseline implementation sees a command-line interface based on python.
Access to analysis-objects and histogram filling is supposed to be performed
in standard C++ Gaudi modules eventually edited, compiled and dynamically
Analysis-object may also directly accessed from python using the
In this environment Root (as any other analysis tool such as Exel or
Mathematica) will be accessed through a python gateway and
used mainly for visualisation purposes.
An alternative approach may use Root as user interface.
Gaudi modules will be dynamically loaded and full access to
analysis-object provided either through C++ compiled modules or
directly in CINT using a gateway between the LCG-dictionary and CINT.
Gaudi currently uses AIDA-2 as interface to histogramming services.
No experience exists w.r.t. AIDA-3.
AIDA-2 is seen mainly as an abstract interface among frameworks (Gaudi and
Root in the specific case).
LHCb considers of fundamental importance the development not only of a
common interface to data analysis but also of proper implementations
independent of any particular analysis framework.
Python is currently considered the baseline scripting language
in LHCb to be used in all environments: from the development of scripts to
manage operating system services to its use as command-line physicist
LHCb event display, Panoramix, offers both full 3D and specialised 2D
graphics based on OpenInventor. The GUI, Based on the OnX framework,
is described using XML and uses Python to implement actions.
LHCb plans to keep (at least in the short-term) a clear separation between
production and analysis environments both for what concern tools and
deliverables persistent objects.
It should be noted that all applications are based on the same framework,
Gaudi, and use the same services.
Therefore migration of code between the two environments will be easy.
LHCb considers critical to provide easy access (as easy as sending an
e-mail) to grid resources: Ganga has been designed with this very goal in
LHCb is convinced that Python is an optimal environment to provide
both a standard and consistent user interface and an integration-glue among
LHCb considers to be in the scope of LCG the task of providing
analysis-tools that are independent of any particular analysis framework.
Possible common projects:
- Event visualisation framework and toolkit
LHCb contribution: OnX/Panoramix
- Grid Physicist Interface
LHCb contribution: Ganga
- Analysis Environment interfaces
LHCb contribution: Gaudi Histogram service,
includes direct links to Gaudi, Ganga, DaVinci and Event-Display
Challenges includes links to Slice and to plans for 2003
Most recently modified on Mon Jan 13 09:44:56 MET 2003 by Vincenzo Innocente