New edX course: Computer System Design: Advanced Concepts of Modern Microprocessors [Learn more]
Parallel and High-Performance Computing (HPC) is becoming more widespread, accessible, and affordable, to the extent that even general-purpose applications can now obtain benefit from parallelization. To harness the potential of HPC infrastructures, users should be skilled and trained for HPC platforms, programming models, and tools.
This document reflects an effort to put into perspective a wide range of requirements and to propose a structured curriculum for HPC. Our objective in the EULab4HPC project is to establish a curriculum for technology leaders in HPC systems. Our curriculum combines courses that can be offered both in traditional form and on-line. On-line courses can be supported as necessary by a few limited physical-presence sessions, co-located with regularly occurring EuroLab-4-HPC global events. The approach we followed was the following: first we solicited feedback about the desired directions of the HPC curricula from participating institutions, and from key players in HPC around Europe. We then solicited a second round of more detailed feedback on the proposed curriculum. Third, and in parallel with the target curriculum, we compiled an inventory of courses available among the participating partners to feed the best practices activity of T3.3.
The purpose of this document is not to propose a detailed, specific curriculum, but rather to provide a basis, or a framework, for the development of such curricula. It is clear that a large number of options and emphases are possible, and one curriculum cannot address all of them. Instead, we propose a flexible structure, with a suggested core set of courses along with a list of optional courses that can be extended further to address specific educational targets.