Teaching Parallel and Distributed Computing to Undergraduate Computer Science Students

Parallel and distributed systems programming skills has become a common requirement in the development of modern applications. It is imperative that any updated curriculum in computer science must include these topics not only as advanced (often elective) programming courses. There is a general cons...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:2013 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum S. 1297 - 1303
1. Verfasser: Arroyo, Marcelo
Format: Tagungsbericht
Sprache:Englisch
Veröffentlicht: IEEE 01.05.2013
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Parallel and distributed systems programming skills has become a common requirement in the development of modern applications. It is imperative that any updated curriculum in computer science must include these topics not only as advanced (often elective) programming courses. There is a general consensus that parallel programming topics should be spread throughout the undergraduate curriculum.In this paper we describe how parallel and distributed computing and, specifically concurrent and parallel programming topics, are being included in the updated computer science curriculum of the degree in computer science at the Río Cuarto National University, Argentina. Also, we cover some suggested approaches for teaching parallel programming topics in a set of core courses to achieve a consistent, increasing and complete training in high performance computing. To achieve these goals, we propose a set of modules which includes basic and advanced high performance computing and some parallel and distributed systems programming topics, to be included in core courses. Finally, we describe the use of existing tools and the development of new high level tools, as parallel patterns, useful for teaching parallel programming which can be used in different courses. The aim of using these tools and techniques is to reduce the gap between sequential and parallel programming.
DOI:10.1109/IPDPSW.2013.276