Computer Science
>
>

CS 315B Parallel Programming

Fall 2022

Stanford University

This course explores advanced topics in supercomputer programming, with a focus on tasking runtimes. It offers a survey of programming models, supercomputer architectures, and in-depth lessons on tasking. Students will gain hands-on experience in cuNumeric and Regent programming languages. While it doesn't assume extensive background, good programming skills are required.

Course Page

Overview

This offering of CS315B will be a course in advanced topics and new paradigms in programming supercomputers, with a focus on modern tasking runtimes. As supercomputers have grown much larger and more complex, tasking has emerged as one of the leading alternatives to current bulk synchronous programming models, with the promise of both higher performance and more productive software development.

The course will consist of lectures on supercomputer architectures, a survey of current standard and alternative programming models, and in-depth lectures on proposals for tasking. Students will be given the opportunity to program in cuNumeric, a drop-in replacement for NumPy that targets clusters, and Regent, a high-level tasking programming language. Both systems target the Legion distributed runtime. There will be lectures on and programming exercises in both cuNumeric and Regent, and there will also be a course project in which students will write a significant supercomputer application of their own choosing.

The course is open to both computer scientists and computational scientists who are interested in learning about new approaches to programming modern supercomputers. Because it is desirable to have such a mix of students, the course will not assume much background, though good programming skills will be needed to get the most out of the course.

Prerequisites

No data.

Learning objectives

No data.

Textbooks and other notes

No data

Other courses in Parallelism and Distributed Systems

CS 294-91 Distributed Computing

Winter 2013

UC Berkeley

CS 256 Formal Methods for Reactive Systems

Winter 2023

Stanford University

CS 149 PARALLEL COMPUTING

Fall 2022

Stanford University

CSE 452 Distributed Systems

Winter 2022

University of Washington

Courseware availability

Lecture notes and readings available at Syllabus

No videos available

No assignements available

Project materials available at Projects

Covered concepts