Data Monitor Tool
Project Scope
The Data Monitor Tool project will provide an environment for development
and execution of online Data Monitors for LIGO.
Data Monitors have the following operational and functional properties
-
Online access to "Current" data (<10 seconds old).
-
Use only those channels in the normal data stream and in the standard frame
format.
-
Geared to provide immediate feedback on the how well the instrument is
working.
-
Performs intelligent screening of the data requiring non-trivial computational
power.
Data monitors can be used to perform the following tasks
-
Detect and tag known terrestrial signals or disturbances to the interferometere.g.
seismic
activity or sudden strain relief in suspension wires.
-
Search for pathological conditions e.g. gain peaking in a servo
system
-
Gauge current performance of the instrument e.g. measure in-spiral
observation volume or excitation state of a suspension wire.
-
Check data integrity e.g. look for bit errors, discontinuities,
repeated data, etc.
-
Test and diagnose the instrument interactively.
Functionality that is not covered by the Data Monitor Tool includes (the
components that perform these functions are noted in parentheses):
-
View time series online (CDS viewing tool).
-
Monitor the data stream e.g. Compare to limits, average signals (DAQ system).
-
Characterize and diagnose hardware (GDS diagnostic test tool and standalone
tests).
Hardware Environment
The data monitor applications will run on a Symmetric Multi-Processor (SMP)
system such as the Sun
E-450 enterprise server. The GDS Data Monitor servers are
connected to four observatory networks:
-
The CDS network: allows the monitors to access EPICs Channels, the
Network Data Server's channel database and the CDS Web server.
Operators and scientists also control and interrogate the data monitors
from the CDS workstations (controln) over this network.
-
The LDAS network: provides a path to submitting trigger data to
the meta-Database and to fetch cold data from the frame store.
-
The General Computing network: used for monitor developmant,
system administration and for foreground detector characterization sessions.
-
The GDS frame broadcast network: provides a high speed
(currently Gigabit Ethernet) connection to the Frame Broadcaster for
online frame access.
Additional information about the hardware requirements and implementation
options is given on the Data Monitor Hardware
Requirements page.
The figure below shows a block diagram of the on-line hardware with
the Data monitor server highlighted in blue.
Software Components
A block diagram of the major Data Monitor software components and their
interrelationships is shown below:
Application Environment
The application environment provides access to the data, interface services
such as generation of trggers and access to data bases, and a data analysis
function library. For practial purposes, the Data monitor applications
can be divided into two groups: foreground and background. The forground
processes will run under a scientific work-station environment that provides
graphical display of results, interactive use and a powerful tool-set for
application development and testing. The background processes will not
receive or provide data directly to operators, but they will have the same
online data access and trigger generation capabilities as the foreground
processes. A preliminary description of the background
application environment is available.
For the initial implementation, the forground environment is based on
root
(an interpretive C++ environment from CERN
tailored to the needs of High Energy Physicists). ROOT has been linked
with the Sandbox
library classes and functions consisting of LIGO specific data classes,
data access functions and a set of macros. Should experience show that
higher performance is necessary for certain applications, a stand-alone
C/C++ environment can easily be implemented based on the root interfaces.
The applications will receive online data from the Data Distribution
sub-system Consumer API via the LDAS
FrameCPP
library. Triggers (notification of unusual or pathological data sequences)
are generated by the application code with the Trigger
API . The Digital Signal Processing
(DSP) Library will contain a suite of signal processing methods
that may be used to analyze the data. These (will) include filtering, FFT,
wavelets and series manipulation packages.
GDS Services
Data Monitor specific services provide the monitor applications with access
to online data and other external resources.
The Data
Distributordistributes online data to each of the monitor
applications. By using shared memory buffers, the data distributor make
all data available to the monitors with a minimum of overhead. The
Data distributor is composed of four pieces. A Distributed
Buffer Manager allocates empty shared memory buffers to producers
and filled buffers to consumer processes. A Producer
API provides an interface to the buffer manager for the processes
that fill the buffer with data and a Consumer
API provides the interface for the data receivers. The Data
Pusher (DPush) requests current data from the Network Data Server
and copies the data to an available shared memory buffer.
The Trigger
Coordinator routes triggers as appropriate for logging as
meta-data or for enunciation on the operator's console. Preselection of
triggers is not defined yet but should be implemented to avoid saturating
either the operator log, the meta-data database or the operators patience.
The transfer of trigger objects to the Trigger Coordinator is not yet defined,
but it may use either Internet Protocol (IP) or Inter-Process Communication
(ipc) package primitives (shared memory or ipc message queues).
A Process Controller (not shown
in the figure) will make sure that any necessary monitors are running in
the background and provide the background processes with the appropriate
parameters.
External Services
The data monitor applications interface indirectly to several services
provided by other LIGO groups. The CDS Network
Data Server (NDS) provides live data for perusal by the data
monitor applications. EPICS
is used to inform the operators of important events. Triggers are
also logged to the LDAS meta-Database.
Project Schedule
The primary scheduling goal is to make monitoring functionality available
at the observatories before the component controls debugging starts (IO
in March 1999?). Considerable descoping from the nominal baseline configuration
should be appropriate during the installation and debugging phases. Specifically,
it is highly unlikely that the full power of an SMP system will be needed
or available. A smaller system consisting of a single processor workstation
of similar architecture to the planned SMP will be considered for this
time period.
Milestones
Completed milestones:
-
Definition of the Data monitor Project goals and
the Hardware and Software configurations that will be used to meet those
goals.
Planned milestones:
-
Specification of all S/W components of the Data Monitor
System. (2/1/1999).
-
Demonstration system with (i) a background
stuck-bit monitor and (ii) a foreground Band-limited RMS display
(3/1/98).
-
First use in debugging instrument at Hanford Observatory
(4/15/98).
-
Final design report (5/1/98).
Schedules
A summary of tasks and their scheduled completion dates are presented the
in Project
Schedule. Please remember that the current version (dated 12/18/1998)
of this schedule is very preliminary. Not all tasks have been listed and
estimates of the time required are not based on careful consideration.
This schedule will be modified as the project plan progresses and as more
is known about the complexity of the various tasks.
Please send comments and suggestions to:
John Zweizig