A ROOT-Based Client-Server Event Display for ZEUS
This presentation is the property of its rightful owner.
Sponsored Links
1 / 21

A ROOT-Based Client-Server Event Display for ZEUS PowerPoint PPT Presentation


  • 59 Views
  • Uploaded on
  • Presentation posted in: General

A ROOT-Based Client-Server Event Display for ZEUS. Krzysztof Wrona , Oliver Gutsche and Rainer Mankel (DESY Hamburg) Computing in High Energy Physics 2003 24-Mar-2003. Motivation. Architecture, Data Model & Implementation. Server Design & Performance. Graphical User Interface.

Download Presentation

A ROOT-Based Client-Server Event Display for ZEUS

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


A root based client server event display for zeus

A ROOT-Based Client-Server Event Display for ZEUS

Krzysztof Wrona, Oliver Gutsche and Rainer Mankel

(DESY Hamburg)

Computing in High Energy Physics 2003

24-Mar-2003

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Outline

Motivation

Architecture, Data Model & Implementation

Server Design & Performance

Graphical User Interface

Display examples

Outline

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Motivation for new zeus event display

Motivation for New ZEUS Event Display

  • During the HERA luminosity upgrade, new detector components have been installed which require extended 3D capabilities

    • Example: Micro-vertex detector (MVD), straw tube tracker (STT)

  • Needed a non-monolithic solution, which includes analysis software as a modular component

  • Client/server approach allows clear separation

    • lightweight client (purely C++, no experiment libraries)

    • server application (encapsulates legacy code)

ZeVis

= Zeus Visualization

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Architecture

Architecture

ZClient

Main client

application

& GUI

ZEvtBuild

ZEUS event to

ROOT conversion

ZGeomBuild

ZEUS geom to

ROOT conversion

ZesAgent

Event agent

for server

ZevLib

Detector

objects

ZevLibX

ZEUS DDL

interfaces

other

ZEUS

software

  • ZClient is a lightweight client application which only depends on ZevLib and ROOT

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Data model

Data Model

  • Clear separation of geometry and event information to minimize amount of data transfer

  • Geometry: only needs to be loaded once (or few times at most)

    • optimize for fast drawing. All ZEUS geometry classes derive from corresponding shapes in ROOT.

    • Geometry can draw itself independently

    • present size 450 kB

  • Event: many ROOT-files to be transferred & stored (cached)

    • file contains tree of event-objects

    • objects contain drawable event information (e.g. track objects), refer to geometry information during drawing, cannot be drawn independently

    • optimize for size. Data structure similar to ZEUS miniDST

    • about 30 kB/evt

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Implementation with root

Implementation With ROOT

  • Parallel implementation of 3D display and layered 2D projections is achieved by overloading “Paint()” member function

    • in 3D mode, use Paint() function of basic ROOT class

    • in 2D mode:

      • 3D-object contains list of 2D-representation-objects

      • Paint() function draws list of objects according to the desired projected shape

  • Fish-eye view in XY and ZR projection to allow simultaneous inspection of inner (MVD) and outer detector (muon system)

    • achieved by overloading TView::WCtoNDC function

  • Extensive use of picking functionality and “describe object below mouse pointer”

  • Extension of TWebfile class to integrate feedback from server

  • For control room, special mode which periodically loads the next online event

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Integration of 2d 3d views

  • Straight-forward “projections” of 3D representation can be complex & confusing

  • Layered projections with proper ordering allow to really analyze the event

Integrationof 2D/3D views

  • Perspective views with hidden surface removal are useful for understanding geometry, but do not show the event well

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Client server motivation

Tag DB

Event

Store

dCache

Client-Server Motivation

  • Event display needs access to experiment’s event store and online system

  • Idea: separation of

    • portable lightweight client, which can run wherever ROOT can run

    • central geometry & event server on DESY site

      and connect via HTTP protocol (ROOT’s TWebFile) to pass firewall

HTTP

User work station

Central ZeVis Server

(1 Dual-Xeon 2GHz)

Mass storage

control room

LAN

office on-site

LAN

off-site, home

WAN

DESY Computer Center

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Internal structure of the zevis server

Apache

+

ROOT

module

+

PHP4

Geometry file

Geometry file

Geometry file

Dispatcher

(PHP4)

Event agent

Event agent

Event agent

Event agent

Event agent

ROOT

Conversion

Online Events

Events of the Week (PR)

Internal Structure of The ZeVis Server

Constants DB

Geometry Builder

Geometry request

Tag DB

Single event request

Event Store

File request

Online

Reconstruction

Online event request

EOTW

request

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Components of the zevis server

Components of The ZeVis Server

  • Single event server

    • random access to event from ZEUS Event Store and conversion to ROOT format on-the-fly

    • normally based on run/event number, optionally with query on about 300 tag variables per event (both modes involve tag database, Objectivity/DB 7.0)

    • staging handled by dCache system if necessary

    • for low latency, the “event agents” are pre-initialized and wait for a request passed to them (daemon-fashion)

    • 10 event agent processes per software release (pro + dev), 20 in total

  • Online event server

    • online system splits RAW events off the event stream at about 0.1 Hz

    • on-the-fly reconstruction and ROOT conversion on dedicated server

  • Geometry and propaganda events

    • static ROOT files on the server, which are produced offline

    • download of geometry file takes << 1s

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Server performance

(no server cache)

Server Performance

  • Less than 2 s average response time

    • even faster on cached events

  • this includes event analysis and conversion to ROOT format

Stress test

  • In reality, simultaneous requests will hardly occur at all

  • Server can stand up at least 4 requests in parallel without noticeable performance loss

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Graphical user interface

Input modes

Zoom controls

Option tabs

Status information

Canvas

Pads

Object information

Graphical User Interface

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Gui single event server

GUI: Single Event Server

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Gui download file mode

GUI: Download file mode

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Gui online mode

GUI: Online Mode

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Projections xy and rz

Projections XY and RZ

  • These are the main views for event analysis

  • Projections complement the geometry of the detector

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Fish eye view

Fish-eye View

  • Allows to see details in the vertex detector simultaneously with the outer detectors

  • Also available in ZR view

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Mvd display

MVD Clusters

  • Occasional (well-known) fill area clipping artifacts from ROOT

MVD Display

  • ROOT allows 3D view within a pad (wire frame only)

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Drift chamber raw hits

Drift Chamber Raw Hits

  • Normally, CTD display shows assigned hits, taking drift distance into account

  • Special mode shows cell structure and raw hits

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Muon chambers and hits

Muon Chambers and Hits

Muon Hits

  • Not yet final

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


Summary

Summary

  • Client-Server event display successfully developed with ROOT as basis

    • highly portable, light-weight client

    • fast geometry & event access via HTTP. Mature server design.

  • Full integration of 2D/3D views. Online display

  • Ergonomic GUI

  • Excellent experience with ROOT functionality

Contributions by: U. Fricke, C. Genta, O. Gutsche, S. Hanlon, E. Heaphy, R. Kaczorowski, O. Kind, R. Mankel, J. Rautenberg, V. Sipica

Thanks to the ROOT team for help & advice (and for providing ROOT!)

K. Wrona, A ROOT-based Client Server Event Display for ZEUS


  • Login