Return to Contents page

Conclusions

Simulating a complete system incorporating software and hardware requires decisions on the appropriate level at which to simulate. The initial aim of the EMIN project, of building realistic simulation models of actual networks and running real software on top of them, proved to be technically feasible but unrealistic in terms of performance measurements due to the very long simulation times required. The project therefore concentrated on using microbenchmark performance information as a practical interface between hardware and software, primarily looking at how the hardware (and low level software) affects the microbenchmarks.

Microbenchmarks provide a software view of the hardware performance, and are far more relevant than the optimistic figures of maximum bandwidth which are usually quoted (and which result in the oft reported `disappointing' performance of parallel systems in practice). The project looked at measuring these microbenchmarks on real machines, as well as extracting them from simulation models which provide low level details of the causes of poor performance. This has meant concentrating on extracting as much detailed and visual information as possible from individual simulation runs.

The complexity of the hardware models and the interactions between software and hardware have made a visual approach essential; it is not sufficient to develop a `black box' simulation model and hope that it will produce valid results. The simulation testbed developed using HASE provides visual feedback to the user and also allows performance graphs to be produced from the simulation traces. These graphs show that, other than in the case of a bus, system performance is influenced much more by the nature of the workload and by cache performance in the processors, for example, than it is by the type of interconnection network.

In terms of accessiblity of the simulations, it is very appealing to have visual models available on the World Wide Web; this extends the traditional idea of diagrams in printed documents to include `active diagrams' in Web-based documents. The use of simjava allows models to be distributed and run extremely easily using the Web, and also permits more advanced visualisations of behaviour using graphical modelling languages such as VRML2. This combination of visualisation and simulation is an effective tool for communicating the dynamic behaviour of complex systems, and has been applied to distributed software systems (such as transaction protocol analysis) as well as to network modelling.


Return to Contents page
Fred Howell
Last modified: Tue July 14 1998