Performance measurement of Amoeba

This project involves implementing software under the Amoeba distributed operating system for recording and analysis of interaction networks. The interaction network is an acyclic digraph that represents all of the processing done by the system in response to a single user input. Vertices in the graph represent events, and edges activities that occur between events. Technical report 07/95 introduces the interaction network, and discusses several networks recorded by an earlier monitor deveoped for SunOS. A more detailed paper appears in "Software---Practice and Experience", 25(10), October 1995. A SIT archive for the Macintosh that contains the body of my PhD thesis in the form of one microsoft word document per chapter is available.

To date the Amoeba kernel has been instrumented to record interaction networks, and a graphical browser for interaction networks has been developed. The existing tools have yet to be used in a major performance study, although they did help in uncovering a bug that was causing Amoeba to take over one second to assign a new MMU context, and they are being used to investigate the performance of the elvis editor. Technical report 09/95 gives a brief overview of the Amoeba implementation, and includes several case studies on interaction networks recorded to date. Technical report 10/95 is a version of report 09/95 that has been submitted as a conference paper. Some of the case studies have been omitted, but those that remain are explained in more detail. Both reports include interaction network displays, and are best printed on a colour printer as the interaction network displays use colour to highlight execution on different nodes.

Future work will involve further development of the tools, and their use in performance studies. A major aim is to assess the usefulness of recording interaction networks for performance measurement, and to develop further the interaction network concept.

Each interaction network consists of event records from many hosts, and clock synchronisation is important to establish event ordering and network delays. In a related clock synchronisation project, methods for synchronising clocks in an off-line fashion are begin investigated.


To Paul Ashton's home page

Paul Ashton

Modified: 3-Nov-1999