The labs and assignments are meant to help you better understand the material and improve your intuition. The labs use common problems and there are therefore plenty of “solutions” available on the web. This is a graduate level class and I expect you to ignore these resources so that you can gain the most out of your effort and work. Looking at available material after you are done thinking about things yourself is encouraged; just document your original work and additional improvements you may have made based on the ideas of others.

Don’t forget to cite all the sources you used.

Required Reading 1

Out: 8/28/2008 Due:9/2/2008
Please see reading for lecture 2


Lab 1 — Locality in CPUs

Out: 9/9/2008 Due:9/19/2008, 9/26/2008, 10/2/2008
This lab has 3 parts, please see Lab 1.


Lab 2 — Parallel and GPU programming.

Out: 10/4/2008 Due:10/11/2008, 10/23/2008
This lab has 2 parts, please see Lab 2 and also form your groups and sign up.


Lab 3 — Cell and Sequoia.

Out: 11/6/2008 Due:11/13/2008, 11/18/2008, 11/21/2008
This lab has three parts, please see Lab 3 and check out who your partners are on the Group Signup page.