Use of ROOT in the D0 Online Event Monitoring System Joel Snow, D0 Collaboration, February 2000.
-
Upload
ralf-hoover -
Category
Documents
-
view
212 -
download
0
Transcript of 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
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
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
DataData Acquisition SystemAcquisition System
Front-end electronicsTwo levels of hardware triggersSoftware triggerData transfer system
Joel Snow, D0 Collaboration, February 2000
D0 Run II Online Event Monitoring Architecture
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
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
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
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
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
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
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
GUI FunctionsGUI Functions
· ControlStart/Stop
Pause/Resume
Abort
Status
Dump Event
Display Event
· HistogramDisplay
Step
Compare
Update
Reset
Cycle
Save
Joel Snow, D0 Collaboration, February 2000
D0 Event Monitoring Process Control!!D0 Event Monitoring Process Control!!
Process Process ControlControl
D0 ROOT GUI Histogram ControlD0 ROOT GUI Histogram Control
Histogram DisplayHistogram Display
A ROOT Histogram Window
Cycling Histograms
A ROOT Histogram Window
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
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