This paper presents two design patterns useful for parallel computations of master-slave model. These patterns are concerned with task management and parallel and distributed data structures. They can be used to help address the issues of data partition and mapping, dynamic task allocation, and load balancing in parallel programming with the benefit of less programming efforts and better program structures. The patterns are described in object-oriented notation, accompanied with illustrative examples in C++. We also provide our experience in applying these patterns to two scientific simulation programs simulating Ising model and plasma respectively. Since master-slave model is a widely used parallel programming paradigm, the design patterns presented in this paper have large potential application in parallel computations.
|Number of pages||5|
|State||Published - 1 Dec 1997|
|Event||Proceedings of the 1997 1st International Conference on Information, Communications and Signal Processing, ICICS. Part 3 (of 3) - Singapore, Singapore|
Duration: 9 Sep 1997 → 12 Sep 1997
|Conference||Proceedings of the 1997 1st International Conference on Information, Communications and Signal Processing, ICICS. Part 3 (of 3)|
|Period||9/09/97 → 12/09/97|