Parallel architectures and languages
This tutorial aims to introduce some of the key concepts in general-purpose parallel computing, looking specifically at the relationship between parallel architectures and languages, which constitute a parallel system. The behaviour and performance of any parallel system is highly dependent on both of these aspects. The key theme is scalability, and how the programming model is the key ingredient that provides an abstraction between hardware and software.
This will run for 5 weeks in the second semester (12-16) and will be held on Monday at 11am in MVB 3.39 (the tutorial room).
| Week | Date |
| 12 | 23rd Jan |
| 13 | 30th Jan |
| 14 | 6th Feb |
| 15 | 13th Feb |
| 16 | 20th Feb |
Overview
1. Introduction and overview & parallel architectures
2. Parallel programming models
3. Analyitical modelling of parallel systems
- Main reference: Introduction to Parallel Computing (2nd edition), Grama, Ananth and Karypis, George and Kumar, Vipin and Gupta, Anshul. Addison Wesley, January 2003; Chapter 5 (p. 195), Analytical modeling of parallel programs.
4. Example: Chapel
- Chapel website
- Slides by Brad Chamberlain, Universitat Poitecnica de Catalunya, October 22, 2009.
- Five Powerful Chapel Idioms, Steven J. Deitz, Bradford L. Chamberlain, Sung-Eun Choi, David Iten. To appear at CUG 2010, May 2010.
- Bradford L. Chamberlain, David Callahan, Hans P. Zima. Parallel Programmability and the Chapel Language (preprint version), International Journal of High Performance Computing Applications, August 2007, 21(3): 291-312.
5. Example: XMOS XS1 architecture
- XMOS website.
- XMOS XS1 architecture manual.
- XMOS architecture overview (slides).
- May, D., Communicating process architecture for multicores, Concurrency Computat.: Pract. Exper., June 2010, 22:(8): 935-948, John Wiley & Sons, Ltd. (Wiley online, slides)
Links and resources
- Introduction to parallel computing, Blaise Barney.
- Designing and building parallel programs, Ian Foster (1995).
- Introduction to parallel & distributed algorithms, Carl Burch (2009).