6.846 Parallel Computing (H)
Spring 2008
Classroom
Change: 6.846 now held in 32-155
Professor Anant Agarwal
agarwal@mit.edu
Course webpage:
http://cag.csail.mit.edu/classes/6.846
Meeting Times: Tuesday & Thursday, 2:30-4pm in room 32-155
Prerequisite: 6.004 or permission of instructor
Units: 3-0-9, H-level grad credit
Underground Guide Evalution
We
encourage you to fill out a course evaluation at this website (https://sixweb.mit.edu/student/evaluate/6.846-s2008).
This link will become active on May 7th.
Final Project Presentations
5/13/2008 - Final presentations are on
Thursday.
·
Class will meet from 1-5 in the 7th floor lounge of
32 G (Gates tower of the stata center). We know
that not everyone can make it for the entire time, but please attend as much as
possible. Also, if possible please email me an electronic copy of your
slides by noon on Thursday. We will try to minimize laptop changes during
the presentations and hopefully speed everyone along.
5/09/2008 –
There is no report due for the final project. You only need to turn in a copy of the
slides you present in class. The
sign up sheet for the demo is available in class and in office hours.
As of 4/29/2008 - The presentation on the final
project will be split into two parts. The first part will be done in
class and the second part will be a demo presented to me. Here are some
more details on each of the two parts:
- In
class presentation:
- Every
team member must present some part of the in class portion.
- Teams
of one person can take 6 minutes.
- Teams
of >=2 should allocate up to 4 minutes per team member
- We
recommend three slides per team member
- Each
team member must include at least one slide covering their individual
contribution to the work
- Please
bring 2 hard copies of the slides to class
- Demo
to the TA
- This
is a chance to show off what you have done in more depth and go into a
more rigorous explanation
- These
presentations will be done in 15 minute blocks
- They
should demo the software for the project and cover any additional
information not covered in class
- These
will be done by appointment in the last week of class
- I
will create a sign up sheet as we get closer to the end of class
Design Project News/Notes
Last updated 5/13/2008…
- Here
are the values for C we will be using in evaluating the design contest:
- For the
rawtile, C = 10,000.
- For
the 10010 node list, C = 1024
- For
the 2505 node list, C = 64
- For
the 103 node list, C = 100
- We
will not be pinning any nodes for the evaluation, so there are no
restrictions on where you place the nodes.
- As Anant described in class, you should produce a chart
showing the sum of the total wire length as a function of time in
cycles. You may start timing the program at the point when your
program has finished parsing the input file. You should collect data
points at a wide range of cycles to clearly illustrate the curve.
When you are collecting data please highlight the points at 42, 84, and 210
Billion cycles past the start time. (That is 1, 2, and 5 minutes
past the time when your program has completed reading the file.)
- Update
on design contest requirements:
- In
the DesignContest-v2.ppt file, we have the constraint:
The difference
between the maximum number of nodes per cell and the minimum number of nodes
per cell should not exceed 0.01 x N/C.
- Some
folks have noted that given the typical values of N=100000 and C=1000,
.01 x N/C = 1, which is a stricter constraint than we intended.
- In
terms of the load balancing between cells, your program should be able to
handle any reasonable constraint, whether it is 0.01 N/C or 0.05 N/C. The
main thing is that the program should be parameterized to handle values
that are similar, but not exactly equal to the typical values presented
in the spec.
- The
design project slides have been updated to reflect that here.
- Some
example inputs are available from this website. These examples only
contain one file b the one specifying the graph. It is assumed
that people can experiment with their own text files specifying immovable
nodes.
- Here
is an example with 103 nodes.
- Here
is an example with 2505 nodes.
- Here
is an example with 10010 nodes.
- Note
that these three examples were generated electronically. Let the TA
know if there are any issues.
Course News and Announcements
4/29/2008 -
Project status reports are due May 1st in class.
4/4/2008 - If
you received feedback on your project proposals, please respond to that
feedback by April 10th.
4/4/2008 -
Updated details on the design project are available here.
The update includes an example of the input file formats we will use for the
final input.
4/4/2008 -
TILE64 hardware is available to the class.
3/16/2008 -
Class project news:
Proposals for
the class project are due 3/20/2008
Proposals should
be 1-2 pages and should include the following
information:
Who is working on the project?
What problem is the project addressing?
What approach is the team taking to tackle this problem? (Just a high-level
description is all that is needed here.)
How is the team dividing the work of the project among team members?
Students
looking for partners for the project are encouraged to meet after class on
3/18/2008
Details on the
design contest option for the class project can be found here.
3/4/2008 -
After a brief stint in 35-225, class has moved again to 32-155
2/28/2008 -
6.846 now available in a new, larger room b specifically 35-225
2/26/2008 - You
can download the video demo on acoustic beamforming
from todaybs lecture here.
(Right click on the link and choose bSave Link As b)
2/14/2008 - first
assignment is out, students will be receiving passwords on class machine
(blokus.csail.mit.edu) today
2/7/2008 - TA
office hours are posted: Wednesday @ 1:00 PM and Friday @ 11:00 AM (Except
Friday February 8th)
Course Project
An overview of the design contest option for the class project can be found here.
Course Description
Course description is here.
Administrative Staff
Teaching Assistant
Handouts
If there is no link to a handout, it is not available
electronically. You can get hard copy from Hank or Simone in their
offices.
- Handout
1 - Course
Intro
- Handout
2 - Course Schedule
- Handout 3 - Lecture 1 Notes
- Handout 4 - Iterative Methods
- Handout
5 - The Weather Problem
- Handout
6 - Solutions to Tridiagonal Systems
- Handout
7 - Lecture 2 Notes
- Handout
8 - Lecture 3 Notes
- Handout
9 - HW1
- Handout
10 - Laboratory Handout 1 b Intro to multicore
programming
- Handout
11 - Lecture 4 notes
- Handout
12 - Packet processing paper from Intel
- Handout
13 - Lecture 5a notes b stream problems, networking
- Handout
14 - Lecture 5b notes b stream problems, radar processing
- Handout
15 - Experience with two parallel programs solving the TSP
- Handout
16 - Lecture 6 notes, graph problems
- Handout
17 - Modeling the performance of hypercubes
- Handout
18 - HW2
- Handout
19 - Lecture 7 notes b particle problems
- Handout
20 - h.264 paper
- Handout
21 - Lecture 8 notes b video processing
- Handout
22 - Cell processor paper
- Handout
23 - Intel TRP paper
- Handout
24 - Tilera Interconnect paper
- Handout
25 - Lecture 9 notes b Computational Models
- Handout
26 - RP3 paper
- Handout
27 - Data Parallel Paper
- Handout
28 - Cosmic Cube Paper
- Handout
29 – HW3 grain size
- Handout
30 - Memory requirements for a balanced computer architecture
- Handout
31 - Simplefit Paper
- Handout
32 - Lecture 10&11 b grain size lecture
- Handout
33 - Lecture 12&13 b machines and languages
- Handout
34 - k-ary n-cube paper
- Handout
35 - Limits of interconnection networks
- Handout
36 - HW1 solutions
- Handout
37 – HW2 solutions
- Handout
38 - HW4
- Handout
39 - Lecture 14&15 - Interconnection networks
- Handout
40 - SUN niagara paper
- Handout
41 - L16 performance evaluation of networks
- Handout
42 - Scalar operand networks
- Handout
43 - Scalability paper
- Handout
44 - OpenMP lecture slides
- Handout
45a - MPI lecture slides
- Handout
45b - Mapreduce lecture slides
- Handout
46 - L17a technology primer
- Handout
47 - L18 networks physical constraints
- Handout
48 - L17b scalability
- Handout
49 - Directory paper
- Handout
50 - Per coherence survey paper
- Handout
51 – HW3 solutions
- Handout
52 - L19-20 memory systems, perf-eval
- Handout
53 - Algorithms for Scalable Synchronization on Shared-Memory
Multiprocessors
- Handout
54 - Reactive synchronization.
- Handout
55 - Transactional memory paper
Maintained by: Jason Miller (jasonm@mit.edu)