Instructors: Nate Nystrom
Academic Programs: Master of Science in Informatics
Workload: 3 ECTS
The ability to program parallel computers productively and efficiently is a critical skill in this era of concurrency. The course provides an introduction to modern parallel systems and their performance characteristics. It covers the fundamentals of parallel data structure design, analysis, and implementation; programming abstractions for concurrency; and techniques for reasoning about the behavior and performance of parallel programs. We study many parallel programs drawn from a variety of application domains and implement programs on a cluster using a modern parallel language, X10.