Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

20
Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000

Transcript of Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

Page 1: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

Use of ROOT in the

D0 OnlineEvent Monitoring System

Joel Snow, D0 Collaboration, February 2000

Page 2: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

Three Major Components Data Acquisition System Monitoring Executables Graphical User Interface

D0 OnlineEvent Monitoring

System

Three Operating Systems Software Portability

Joel Snow, D0 Collaboration, February 2000

Page 3: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

Provides Portability Physics analysis tools Shared memory Network sockets Graphical widgets

ROOTROOT FrameworkFramework

ROOT is an attractive choice foronline monitoring applications

Joel Snow, D0 Collaboration, February 2000

Page 4: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

DataData Acquisition SystemAcquisition System

Front-end electronicsTwo levels of hardware triggersSoftware triggerData transfer system

Joel Snow, D0 Collaboration, February 2000

Page 5: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

D0 Run II Online Event Monitoring Architecture

Page 6: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

BufferDisk

DataDistributor

DataDistributor

EXAMINEEXAMINEDataLogger

DataLogger

EXAMINEEXAMINE

L3FilterNode

L3FilterNode

Collector /Router

Collector /Router

L3FilterNode

L3FilterNode

100 Mb Switch

L3FilterNode

L3FilterNode

L3FilterNode

L3FilterNode

100 Mb Switch

Gb SwitchToFCC

100 Mb Switch

100 Mbit Ethernet

Gbit Ethernet

RIPInterface

RIPInterface

D0 Online Event Monitoring D0 Online Event Monitoring

Physical Data FlowPhysical Data Flow

DataLogger

DataLogger

RIPInterface

RIPInterface

BufferDisk

Collector /Router

Collector /Router

Page 7: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

DataDistributor

DataDistributor

EXAMINEEXAMINE

L3FilterNode

L3FilterNode

Collector /Router

Collector /Router

L3FilterNode

L3FilterNode

DataLogger

DataLogger

DataLogger

DataLogger

BufferDisk

L3FilterNode

L3FilterNode

Collector /Router

Collector /Router

L3FilterNode

L3FilterNode

Flow Control

No Flow Control

EXAMINEEXAMINE

Routing basedon Stream ID

Distributionbased onTrigger typeBuffer

Disk

ToFCC

RIPInterface

RIPInterface

ToFCC

RIPInterface

RIPInterface

D0 Online Event Monitoring D0 Online Event Monitoring

Logical Data FlowLogical Data Flow

Page 8: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

Monitoring ExecutablesMonitoring Executables(Examines)(Examines)

Detector performance Physics Objects - e's 's jets

Unpack raw dataReconstruct eventsFill HistogramsProvide event displays

Event selection via RCP file Connect to DD with ACE Apply algorithms to data Interact with user interface

•Multiple Examines run on Linux PC's

Joel Snow, D0 Collaboration, February 2000

Page 9: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

DDDDDDDD

InitializeInitializeInitializeInitialize

Watchdogs for thread protection are separate

ProcessProcessEventsEventsProcessProcessEventsEvents FinishFinishFinishFinish

RepeatRepeat

Event BufferEvent Buffer Assigned atAssigned at the Requeststhe Requests

AbortAbortAbortAbort

StartStartProcessingProcessing

StartStartProcessingProcessing

SelectSelectExamineExamine

SelectSelectExamineExamine

Select Select InputInput

Select Select InputInput

Pause/Pause/ResumeResumePause/Pause/

ResumeResume

StatusStatusStatusStatus

StopStopStopStop

GUI Process Control NodesGUI Process Control Nodes

D0 Online Event Monitoring D0 Online Event Monitoring Processing Data and Message FlowProcessing Data and Message Flow

Request MessageRequest MessageControl MessageControl Message

CommentaryCommentary

Histogram PortHistogram Port.

Data FlowData Flow

Monitoring PC-NodesMonitoring PC-Nodes

DD HostDD Host

(Event display and other offline fwrk functions not added)

Reg

iste

rR

egis

ter

Sp

awn

an

Sp

awn

an

Exa

min

eE

xam

ine

Exe

cuta

ble

Exe

cuta

ble

. . .EoR EoR

QueryQueryEoR EoR

QueryQuery

ReadEventReadEventDaqDaq

ReadEventReadEventDaqDaq

InitiateInitiateseparateseparatethreadsthreads

Offline Framework Flow

MessageMessage InterfaceInterfaceMessageMessage

InterfaceInterface

ProcessProcessRegistryRegistryProcessProcessRegistryRegistry

HistogramHistogram InterfaceInterface

HistogramHistogram InterfaceInterface

EvtDSPEvtDSP InterfaceInterfaceEvtDSPEvtDSP

InterfaceInterface

Page 10: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

D0 Online Event Monitoring D0 Online Event Monitoring Histogram Control FlowHistogram Control Flow

ResetResetResetReset

UpdateUpdateUpdateUpdate

DisplayDisplayDisplayDisplay

Input Input SelectSelectInput Input SelectSelect

SaveSaveSaveSave

Step Hists.Step Hists.Step Hists.Step Hists.Cycle Cycle HistsHistsCycle Cycle HistsHists

PrintPrintPrintPrint

CompareCompareCompareCompare

DDDDDDDD

InitializeInitializeInitializeInitialize ProcessProcessEventsEventsProcessProcessEventsEvents FinishFinishFinishFinish

RepeatRepeat

Event BufferEvent Buffer Assigned atAssigned at the Requeststhe Requests

Histogram Histogram InterfaceInterface

Histogram Histogram InterfaceInterface

Request MessageRequest MessageControl MessageControl Message

CommentaryCommentary

Histogram PortHistogram Port

InitiateInitiatea threada thread

Data FlowData Flow

Monitoring PC-NodesMonitoring PC-Nodes

DD HostDD Host

ROOTROOTROOTROOT

GUI Histogram Control NodesGUI Histogram Control Nodes

ProcessProcessRegistryRegistry

Reg

iste

rR

egis

ter

ReadEventReadEventDaqDaq

ReadEventReadEventDaqDaq

Page 11: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

D0 Online Monitoring D0 Online Monitoring

Interaction SequenceInteraction Sequence

Event Event ProcessingProcessing

Inquiries &Inquiries &

Process CntrlProcess Cntrl.

GUIProcessRegistry

ExamineMain

ThreadGetEvtThread D/D

Other Threads

ProcessProcess InquiryInquiry

Process Process ListList

StartStart Process Process

StartStart Examine Examine

Initialize Initialize ((Start ThreadsStart Threads) )

Initialize (Initialize (Start Thread & assign Start Thread & assign

bufferbuffer) )

Initialize Initialize ((Connect to D/DConnect to D/D

& Transfer Selections& Transfer Selections))

Ready Ready ((Connection madeConnection made

& buffer assigned& buffer assigned) ) ReadyReady((Examine begun,Examine begun,

Port #’s assignedPort #’s assigned) )

ReadyReady((All threads begun,All threads begun,

Port #’s assignedPort #’s assigned) )

Ready(Ready(Threads begunThreads begun) )

Ready (Ready (Thread begun and Thread begun and

Connected to D/DConnected to D/D) )

Init

iali

zati

on

Init

iali

zati

on

Sequ

ence

Sequ

ence

Inquiries & Process Control Inquiries & Process Control (Pause, Resume, Reset, etc)(Pause, Resume, Reset, etc)

Event Requests & Event Requests &

Processing EventsProcessing Events

Status & Action Reports Status & Action Reports (Pause, Resume, Reset, etc)(Pause, Resume, Reset, etc)

Event RequestEvent Request

Event TransferEvent Transfer

ReportsReportsInquiries & ActionInquiries & Action

End of Run SignalEnd of Run Signal End of Run SignalEnd of Run Signal

End of Process InquiryEnd of Process Inquiry

End of Process RequestEnd of Process Request

Finish & Clean upFinish & Clean up TerminateTerminate

TerminatedTerminated

Terminate UpTerminate Up

TerminatedTerminatedTerminatedTerminated TerminatedTerminated

TerminationTerminationSequenceSequence

Page 12: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

GraphicalGraphical UserUser InterfaceInterface

Control remote ExamineObtain info from Examine

histograms

status/alarms

Checks process registryAttach to existing Examine

No control functions, observer modeMany may attach to single Examine

Start new ExamineFull control functions, creator mode

Joel Snow, D0 Collaboration, February 2000

Page 13: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

GUI FunctionsGUI Functions

· ControlStart/Stop

Pause/Resume

Abort

Status

Dump Event

Display Event

· HistogramDisplay

Step

Compare

Update

Reset

Cycle

Save

Print

Joel Snow, D0 Collaboration, February 2000

Page 14: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

D0 Event Monitoring Process Control!!D0 Event Monitoring Process Control!!

Page 15: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

Process Process ControlControl

Page 16: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

D0 ROOT GUI Histogram ControlD0 ROOT GUI Histogram Control

Page 17: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

Histogram DisplayHistogram Display

A ROOT Histogram Window

Page 18: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

Cycling Histograms

A ROOT Histogram Window

Page 19: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

ROOT's UseROOT's Use

Main analysis tool for ExaminesResults in ROOT object format

TFile, THxx, TNtuple

Examine - GUI communicationTSocket, TServerSocket, TMessage

Synchronous - control & histograms

Asynchronous - alarms & messages

Idle loop accessed by inheriting from TApplication

GUI built from widget classesTGxxxx classes, TVirtualX

Joel Snow, D0 Collaboration, February 2000

Page 20: Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.

ConclusionConclusion D0 online event monitoring system

(D0OEMS) uses an asynchronous framework to reconstruct events, calulate physical quantities, and fill histograms

User interacts with framework through a GUI which provides information and control functionalities

Features of the ROOT framework have been successfully integrated into D0OEMS

While data taking is a year away, detector component commissioning is in progress. The D0OEMS described here is being used to verify the component performances

User response will guide future improvements

Hope to provide web based access of information to remote collaborators

Joel Snow, D0 Collaboration, February 2000