D Offline Reconstruction and Analysis Control Framework - PowerPoint PPT Presentation

About This Presentation
Title:

D Offline Reconstruction and Analysis Control Framework

Description:

string PackageName = 'Controller' string Flow = 'generator decide filter process tag output' ... string PackageName = 'ClusterFinder' double seed_threshold ... – PowerPoint PPT presentation

Number of Views:31
Avg rating:3.0/5.0
Slides: 16
Provided by: jimk60
Category:

less

Transcript and Presenter's Notes

Title: D Offline Reconstruction and Analysis Control Framework


1
DØ Offline Reconstruction and Analysis Control
Framework
  • J.Kowalkowski, H.Greenlee, Q.Li, S.Protopopescu,
    G.Watts, V.White, J.Yu

2
DØ C Framework
  • Set of well established interfaces from which
    reconstruction and analysis algorithms are built.
  • Propagates events through a sets of algorithms in
    a well defined and established manner.
  • The algorithm configuration and set is determined
    at program execution time.
  • The framework hides many system related
    complexities from the user and the algorithm
    developer and allow for sharing of code for
    common or related tasks.

3
Infrastructure
  • RCP - Run Control Parameters
  • Persistent part of algorithm
  • Stored in database
  • Event data identified by RCP set ID
  • EDM - Event Data Model
  • Framework
  • Build/Configure/Run Algorithms
  • IO_PACKAGES
  • Event read/write packages
  • DØOM - Object persistency package

4
(No Transcript)
5
Qualities
  • No coupling with external libaries
  • Easy introduction of new algorithms
  • Strong typing in event objects
  • Independent GUI controls
  • Flexible, run time configuration of
    reconstruction activities
  • No need for user to write code to produce an
    executable with a custom configuration

6
Concepts
  • Algorithms (Package)
  • Standard interface for configuration with RCP
  • Common manipulation such as status reporting
  • Defines a framework pluggable component
  • Named event handlers (Interface)
  • Algorithms register event handlers
  • Handlers get invoked when the event occurs
  • Factory
  • Simple algorithm auto-registration mechanism
  • Algorithm instances made by name at run time

7
Event Processing
  • Event Handlers and Work Queues
  • Events generated by special Packages
  • Placed on an event queue for processing
  • Event contains type-code and an object
  • Data Managers
  • Events in queue dispatched to data managers
  • Hold list of handlers (Interfaces instances)
  • Controllers
  • Event dispatcher, sequencer, state controller
  • Queue and Package instances owner
  • Can be nested to arbitrary depth.

8
Example User Algorithm Class Definition
Class Algorithm public Package, Process, Tag,
RunInit public UserPackage(Context) UserPa
ckage() virtual Result processEvent(edmEvent
) virtual Result tagEvent(edmEvent) virtual
Result runInit(const RunNumber) virtual void
reinitialize(edmRCP) virtual void
statusReport() virtual void flush()
9
Event Data Loop
read
ergenerate(Queue)
decide
ermakeDecision(Queue,Event)
CalrunInit(Run) ktrunInit(Run)
runInit
calprocessEvent(Event) jet3processEvent(Event) j
et5processEvent(Event) ktprocessEvent(Event)
process
PackageTypeinstance
EventReader EventWriteew CalRecocal ConeJetReco
jet3 ConeJetReco jet5 KTJetReco kt
calverifyEvent(Event) jet3verifyEvent(Event) jet
5verifyEvent(Event)
verify
write
ewoutput(Event)
10
Event Handling Features
  • No experiment or subsystem specific types
  • New event types can be added by users without
    framework modifications
  • Asynchronous and synchronous types
  • Synchronous order can be determined at run time
  • Event handlers and algorithm instances can be
    grouped by function and treated as a single unit

11
Interactive Components
  • Threaded model
  • No built in interpreter or GUI
  • Commander Abstraction
  • configure algorithms and control event loop
  • get reports from algorithms
  • Messenger Abstraction
  • catch and propagate errors and output to
    registered clients
  • ORB
  • manage client/server communications and remote
    framework interactions

12
Simple Configuration Example
reco.rcp string PackageName Controller
string Flow "generator decide filter process
tag output" string Packages event_read hits
clustering id verify save" RCP event_read
ltreco readgt RCP hits ltreco hit_findergt RCP
clustering ltreco cluster_findergt RCP id
ltreco IDgt RCP verify ltreco verifygt RCP save
ltreco save_eventsgt
cluster_finder.rcp string PackageName
ClusterFinder double seed_threshold 2.3
13
Algorithm View
14
Interactive View
15
Conclusion
  • Algorithm abstraction (Package)
  • Algorithm configuration system (RCP)
  • Extensible event handling and dispatching system
    with C templates (Interface)
  • Factory to create algorithms at run time
  • Provisions for state machine behavior
  • Separation of GUI and interactive components from
    reconstruction engine
  • Independent threads for engine and GUI
Write a Comment
User Comments (0)
About PowerShow.com