What Do We Need to Know About Parallel Algorithms and Their Efficient Implementation?
The computing world is changing and all devices—from mobile phones and personal computers to high-performance supercomputers—are becoming parallel. At the same time, the efficient usage of all the opportunities offered by modern computing systems represents a global challenge. Using full potential o...
Saved in:
| Published in | Topics in Parallel and Distributed Computing pp. 23 - 58 |
|---|---|
| Main Authors | , , |
| Format | Book Chapter |
| Language | English |
| Published |
Cham
Springer International Publishing
2018
|
| Online Access | Get full text |
| ISBN | 9783319931081 3319931083 |
| DOI | 10.1007/978-3-319-93109-8_2 |
Cover
| Summary: | The computing world is changing and all devices—from mobile phones and personal computers to high-performance supercomputers—are becoming parallel. At the same time, the efficient usage of all the opportunities offered by modern computing systems represents a global challenge. Using full potential of parallel computing systems and distributed computing resources requires new knowledge, skills and abilities, where one of the main roles belongs to understanding key properties of parallel algorithms. What are these properties? What should be discovered and expressed explicitly in existing algorithms when a new parallel architecture appears? How to ensure efficient implementation of an algorithm on a particular parallel computing platform? All these as well as many other issues are addressed in this chapter. The idea that we use in our educational practice is to split a description of an algorithm into two parts. The first part describes algorithms and their properties. The second part is dedicated to describing particular aspects of their implementation on various computing platforms. This division is made intentionally to highlight the machine-independent properties of algorithms and to describe them separately from a number of issues related to the subsequent stages of programming and executing the resulting programs. |
|---|---|
| ISBN: | 9783319931081 3319931083 |
| DOI: | 10.1007/978-3-319-93109-8_2 |