Course Overview
Instructor: Kathy Yelick
Lectures: T-Th 12:30-2
Location: 310 Soda
This course will examine several modern parallel languages and a set of current research topics in parallel languages and their implementations. It will be divided into three parts:
- Overview of specific languages
- Cross-cutting topics
- Final project development and presentations
Lectures
- 8/28, Lecture 1: Overview of Language Design and course
- 9/3, Lecture 2: NESL (reading #1)
- 9/5,Lecture 3: HTA (readings #2)
- Note: there was no lecture on Tuesday, 9/10
- 9/10, Lecture 4: Chapel (reading #3, and homework #1)
- 9/17: Lecture 5: Cilk (reading #4)
- 9/19: Lecture 6: X10 (reading #5)
- 9/24: Lecture 7: Student presentations about array langauges / libraries
- 9/26: Lecture 8: More presentations / discussion about array languages / libraries
- 10/1: Lecture 9: More on array languages / libraries
- 10/3: Lecture 10: iPython (Guest lecture by Fernando Perez)
- 10/8: Lecture 11: TItanium (Guest lecture by Amir Kamil)
- 10/10: Lecture 12: UPC++, etc. (Guest lecture by Yili Zheng)
- 10/15: Lecture 13: Models of Locality and Tasking (Guest lecture by Harsha Simhadri)
- 10/17: Lecture 14: Communication Avoidance
- 10/22: Lecture 15: Commmunication Aoviding (lecture by Edgar Solomonik)
- 10/24: Lecture 16: Autotuning Overview (Kathy), SEJITS
- 10/29: Lecture 17: Autotuning Overview (Kathy), Distributed Arrays (Amir Kamil)
- 10/31: Lecture 18: Software Engineering for PDEs (Anshu Dubey), Merging Simulation/Observation (Scott French)
- 11/4: Project proposals due
- 11/5-11/7: No lectures, project meetings with Kathy (Email Kathy and Tara White, tdwhite at lbl dot gov to schedule). Each project team should meet at least once with Kathy in November.
- 11/12: Lecture 19: Memory Consistency
- 11/14: Lecture 20: Correctness
- 11/19-11/26: No lectures, project meetings with Kathy
- 11/28: Thanksgiving holiday
- 12/3: Project meetings
- 12/3: Project Presentation: Scott and Edgar
- 12/10: Final project presentations, 10am-4pm (room TBD).
- 12/16: Final project reports due.
Reading assingments
- NESL: Nested Data parallelism
- HTA: Hierarchically Tiled Arrays
- Chapel
- Reading: Overview or Specification
- Extra: Web page
- Cilk/Cilk Plus
- Reading: Overview
- Extra:
Cilk Plus web page>
Tutorial
Specification - X10
- Reading: Original report
- Extra: Web page, Tutorial, Specification
- Sequoia/Legion:
- Reading: Overview
- Extra: Sequoia Web Page, Language Specification
- Communication Avoiding Algorithms (and hopefully compilers)
- So-called "HBL" paper on Communication-Avoiding Algorithms
- 2.5D Matrix Multiply and LU paper
- 1.5D N-Body paper
Homework and Projects
- Homework #1: Write a sorting algorithms and a stencil (Read Black Guass-Seidell, aka GSRB) in Chapel using its data parallel operations. Due Thursday 9/12 (email to Kathy).
Staff
Lectures: Tue-Thu 12:30-2:00pm in 310 Soda
Instructor: Professor Kathy Yelick, yelick at cs dot berkeley dot edu
Office: 775 Soda Hall or (at LBNL) 50B-4245
For appointments, contact Tara White (tdwhite at lbl dot gov)