Multicore Programming Primer
The course serves as an introductory course in parallel programming. It offers a series of lectures on parallel programming concepts as well as a group project providing hands-on experience with parallel programming. The students will have the unique opportunity to use the cutting-edge PLAYSTATION 3 development platform as they learn how to design and implement exciting applications for multicore architectures. At the end of the course, students will have an understanding of: - Fundamental design philosophies that multicore architectures address. - Parallel programming philosophies and emerging best practices. This course is offered during the Independent Activities Period (IAP), which is a special 4-week term at MIT that runs from the first week of January until the end of the month. The course can be tailored to a normal semester time line. Acknowledgements The course instructors are extremely grateful to {{% resource_link "ee4d70a0-2d0e-40e7-bebb-1f304fdd9cfb" "Sony" %}}, {{% resource_link "b0073b49-edd7-4c6e-878d-a4607038a655" "IBM" %}}, and {{% resource_link "20c3dac4-dbbd-4448-bfda-50c0279d24d6" "Toshiba" %}} for their support.
Syllabus
- 1 L1: Course Introduction (part 1)
- 2 L1: Course Introduction (part 2)
- 3 L2: Introduction to Cell Processor
- 4 L3: Introduction to Parallel Architectures
- 5 L4: Introduction to Concurrent Programming
- 6 L5: Parallel Programming Concepts
- 7 L6: Design Patterns for Parallel Programming I
- 8 L7: Design Patterns for Parallel Programming II
- 9 L8: StreamIt Language
- 10 L9: Debugging Parallel Programs
- 11 L10: Performance Monitoring and Optimizations
- 12 L11: Parallelizing Compilers
- 13 L12: StreamIt Parallelizing Compiler
- 14 L14: Synthesizing Parallel Programs
- 15 L15: Cilk
- 16 L16: Introduction to Game Development
- 17 17: The Raw Experience
- 18 L18: The Future
- 19 Projects Introduction
- 20 Project: Global Illumination
- 21 Project: Battery Simulation
- 22 Project: Blue-steel Ray Tracer
- 23 Project: Software Radio
- 24 Project: Speech Synthesis
- 25 Project: Backgammon Tutor
- 26 Project: Molecular Dynamics
- 27 Projects Closing
- 28 Congratulations
Course materials
- Course on MIT OpenCourseWare β website