RAPIDS 3.0 has been developed to provide a framework for the testing and evaluation of various real-time algorithms and software. The testbed allows users to specify their own topology, interconnection network and the network protocol, the task set to be run on the system and the type of hostile environment under which the system is expected to run, by specifying the failure rates for nodes and links. Users also have the flexibility of choosing from a number of built-in system-related algorithms or may choose to integrate an algorithm of their preference. Among other components, the tool contains a detailed user interface to control and view the simulated system. Among the various components of the simulator are the nodes, which represent a processor in a distributed environment; the virtual network which forms the interconnection between the nodes; a central clock to synchronize these elements and a user interface to control and view the simulated system.
The testbed allows experimental studies of recovery policies, task assignment and task scheduling algorithms. Though the testbed was primarily built to validate fault recovery policies, it has been extended to provide other features that can help a researcher or designer to see the interplay between various aspects of a real-time system. Important among the extensions is the integration of real-time benchmarks or applications with the simulator to get a more realistic picture of its working in the presence of faults. Attempts have been made to make the process of integrating parallel real-time benchmarks with the simulator as easy as possible, though there still remains scope of further flexibility.
Using RAPIDS is made easy by its graphical user interface: users can "draw" the topology on the screen and choose from a list of menu options (e.g., fault rates and task graphs) to set up the simulation. The output shows the simulated task schedule as the execution proceeds and lists the fraction of tasks meeting their deadlines.
A user manual and Programmer manual have been prepared and the entire testbed has been installed at CalTech and JPL for evaluation.
Further details regarding RAPIDS 3.0 are available at http://www.ecs.umass.edu/ece/realtime/recovery/simulator/.
The description of our further project, RAPIDS 4.0, is available here.