A Many-core Machine Model for Designing Algorithms with Minimum Parallelism Overheads
Abstract
We present a model of multithreaded computation, combining fork-join and single-instruction-multiple-data parallelisms, with an emphasis on estimating parallelism overheads of programs written for modern many-core architectures. We establish a Graham-Brent theorem for this model so as to estimate execution time of programs running on a given number of streaming multiprocessors. We evaluate the benefits of our model with four fundamental algorithms from scientific computing. In each case, our model is used to minimize parallelism overheads by determining an appropriate value range for a given program parameter; moreover experimentation confirms the model's prediction.
- Publication:
-
arXiv e-prints
- Pub Date:
- February 2014
- DOI:
- 10.48550/arXiv.1402.0264
- arXiv:
- arXiv:1402.0264
- Bibcode:
- 2014arXiv1402.0264A
- Keywords:
-
- Computer Science - Distributed;
- Parallel;
- and Cluster Computing