next up previous
Next: OpenMP and MPI Up: Performance Scenarios Previous: Multi-Threaded Systems and

Mixed-Mode Parallelism

Increasingly, scalable parallel systems are being designed as clusters of shared memory multi-processors (SMPs). These systems support what is referred to as ``mixed-model parallelism'' where multi-threaded shared memory programming is used within the SMP and message passing (MPI or some other inter-process communication package) is used for communication between SMP nodes. A key problem for performance tools in mixed-mode environments is the need to maintain multiple performance views (shared memory and message communication) and relationships between views. Performance instrumentation specific to both models can be combined from their individual implementations, but there must be a transposition (i.e., mapping) of each model's performance information into a joint composite observation. Not only is access needed to events in the thread runtime systems and communication layers, but it is necessary at times to associate the occurrence of these events to one another.