Abstract

A cluster is a collection of computers connected through a high-speed network that allows them to work together to solve a problem. The newly developed technologies of HPC (e.g. multi-core CPUs and GPUs) can be easily integrated into a cluster using a modular concept. A cluster usually uses a distributed memory system; therefore, model decomposition and communications between different processors (i.e. computer nodes) are required to be handled explicitly in the parallel code for a cluster. In the implementation, the MPI and the parallel virtual machine are two commonly used programming tools. The Parallel Computing Toolbox® of MATLAB®, which is a high-level programming environment, was used for the implementation of the multi-core (parallel) DICE2D code and produced a parallel DICE2D code that was independent of the operating system and parallel hardware. In this study, the parallel DICE2D code uses the computational resources of a moderate-sized cluster to simulate certain rock engineering problems. In Chapter 3, the GPU DICE2D code showed better performance than the parallel DICE2D code (Figure 3.3). In this Chapter, the parallel DICE2D code runs on a moderate-sized cluster called “Leonardi”. The results show that the performance of the parallel DICE2D code is significantly influenced by the hardware platform. There are some negative comments on the Parallel Computing Toolbox of MATLAB; for example a comment from MIT in 2011 indicated that it was “more trouble than it is worth”. From the evidence shown in this chapter, a more positive review might be concluded.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call