Next: Less frequent checkpointing and
Up: Current Issues and Future
Previous: Current Issues and Future
Implementing a form of software-based caching can improve performance and scalability in several ways. In the matrix multiplication program in Sect. 4.2, for example, the matrix B is sent to all virtual processes. Without caching, this would cause B to be sent over the communication network potentially thousands of times. By adding a cache to each work engine as shown in Fig. 3 in Sect. 3.1, we only need to send B once for each physical processor. We have successfully used such a caching scheme in the experiment presented in Sect. 5, and are currently generalizing it to apply to other situations as well.