Parallelism: Merging Theory and Practice

Speaker  Thomas Ball and Ganesh Gopalakrishnan

Host  Judith Bishop

Affiliation  MSR, University of Utah

Duration  01:07:47

Date recorded  13 April 2011

Multicore computers are now the norm. Taking advantage of multiple cores requires parallel and concurrent programming. There is therefore a pressing need for courses that teach effective programming on multicore architectures. We believe that such courses should emphasize high-level abstractions for performance and correctness and be supported by tools. We present a set of freely available course materials for parallel and concurrent programming, along with a testing tool for performance and correctness concerns called Alpaca (A Lovely Parallelism And Concurrency Analyzer). These course materials can be used for a comprehensive parallel and concurrent programming course, a la carte throughout an existing curriculum, or as starting points for in-depth graduate special topics courses. We also discuss tradeoffs we made in terms of what to include in course materials.

©2011 Microsoft Corporation. All rights reserved.
> Parallelism: Merging Theory and Practice