ATL QoS Homepage

Welcome to Advanced Technology Labs'
Agent and Distributed Objects Quality of Service (QoS) Home Page

Towards Measurements of Hard Real-Time, Fault Tolerant, Distributed OO Systems

Copyright (C) 2001-2008 by Lockheed Martin Corp. Please read this important notice.
We acknowledge our sponsors who, over the years, have supported this effort. ChangeLog documents some of the history.
These pages are under construction with updates and additions happening at various times. Netscape Browsers: If you haven't been here in a while and are expecting to see certain updates that are not showing up, you can force a completely fresh reload by holding [SHIFT] and clicking on the [Reload] icon at the webpage you wish to reload. Best viewed at >= 1024x768 screen resolution.
Test Class What's New
MW_Comparator Follow this link to version 0.2 of our tool that lets you generate graphs comparing various distributed computing technologies. In December 2002 we added an ability to "filter" the collection of measurements we have so that a user can do analysis on a subset of results.
RT OS & (Embedded) JVM Tests Jitter_Comparator Contains results for Linux 2.2.15, KURT, RT-Linux, Timesys Linux/RK v1.1, LynxOS 3.0, Solaris (6,7,8beta,8), Windows NT 4.0 SP3, PowerMax 4.1m, VxWorks 5.3.1. Pending: Windows XP and Windows Server 2002.
Also contains Java Timer tests and Embedded Java evaluations including IBM's J9 VM with RTSJ Extensions on QNX platform. Timesys Linux/RT V2.0 Beta showing excellent bounded behavior. (May 31, 2001)
Linux 2.5.59 kernel Tests added. (January 2003)
RT OS & Inter Process Communications Tests Contains latency and thruput measurements for Solaris 2.8, 2.6/2.7, Lynx OS, PowerMax OS 4.1m, VxWorks 5.3.1, Linux, and QNX. Most of the results are for TCP/IP but other protocols, such as SCTP and VIA (non IP protocol) are also shown as are some shared memory results.
Modified TCP Results [9.2001] and OpenSS7 SCTP results [7.2001]
RT OS & ORB Communications Tests Contains results for TAO, ORBExpress, MICO, Hardpack, JacORB, OpenORB and ORBIX.
RT OS & Corba Component Model Tests Contains results for MicoCCM and OpenCCM. Will add results for TAO_CCM when available.
Semaphore and Misc Overheads gettimeofday(), semaphores and some equivalent JVM calls measured
Publish/Subscribe Systems preliminary NDDS tests with 1 and 3 receivers
CBQ Simulation Contains CBQ discussion, references, and several simple but key results.
JVM with iBus Communication Framework We had performed some preliminary work in Fall of 1998, but the links to the results are broken. If you have interests in iBUS results please contact me.
Java based VoyagerPro Dist. Objects and Agents Perf. Evaluation Work in Progress
RT OS, Network QoS, and RT-FT ORB Tests Work in Progress
RT Database Links Experimental Results to be added in Future.
Scheduling Under CPU Contention Ran an overloaded scenario of time-sharing and real-time processes through various kernel schedulers and graphed the performance and behaviors.

Overview:

Comments on any material here are welcome to Gautam H. Thaker, Lockheed Martin Advanced Technology Labs, Cherry Hill, NJ.

These results form a part of our tests involving real-time operating systems, real-time ORBs and network QoS technologies such as Diff Services and Integrated Services. When integrated in appropriate manner these technologies permit distributed object computing based DRE (distributed real-time embedded) systems to be built.

This is a "work in progress" web page where we are gathering various measured data related to buidling hard real-time, fault tolerant, distributed OO Systems. Our evaluation of real-time operating systems seeks to measure scheduling distortions observed in various commercial and research real-time operating systems. We show here some measured results for KURT-Linux, RT-Linux (New Mexico Tech), Timesys/Linux, LynxOS 3.0.0, Solaris 2.6, Windows NT 4.0 SP3, and PowerMAX OS 4.1m. We also have some similar evaluation of (real-time) Java Virtual Machines. Since our ability to build distributed, hard real-time systems are directly dependent upon the ability of the operating system to control scheduling distortions and "priority inversions" our initial focus is on this aspect of real-time operating systems.

The overall goal of our work is to systematically measure average and worst case latencies for exchange of "n" bytes of data (raw bytes, structures, etc.) between two processes by a variety of techniques including shared memory, sockets, RMI, CORBA, EJB, CCM, databases, etc. etc. etc. This data permits, we hope, to form an understanding of costs (and benefits) of these various abstractions and technologies used to implement them.

Real-time, fault-tolerant OO infrastructure consists of, as a minimum, integration of the three sides of the triangle shown below. In addition, ATL RT/FT Infrastructure project is interested in tools and techniques for analysis, design and high fidelity simulations of such systems where simulation environment shares code base with deployable system.

Our environment consists of a set of nodes interconnected with QoS capable network. The nodes themselves have real-time operating systems and real-time middleware such as the Real-Time CORBA specification from OMG. Both real-time and non-real-time applications share the processor and the networks. In our experimental work resource contention occurs at least in the following places.

We wish to achieve end-to-end determinism in such enviroments, even in presence of (bounded) failures. To the extent possible we wish to have "provably correct" real-time behavior to the extent that this might help reduce the test and validation effort on mission critical, real-time systems.