There are big changes afoot. Computation is moving from sequential to parallel, from your PC to the cloud, and from your CPU to high-performance GPUs. In fact, this is the belated arrival of massively parallel computing, where hundreds or thousands of processors (either in the cloud or on your GPU) are running massive numbers of programs in parallel. And the technology is getting better, faster, and cheaper. In this course, you will get hands-on experience in developing software for massively parallel computing resources. We will cover:
- Parallel programming models
- GPU programming with CUDA
- Cluster computing with MPI
- Cloud computing with MapReduce using Hadoop on Amazon’s EC2 (with Cluster GPU Instances)
The course is also offered through the Harvard University Extension School as distance education course CSCI E-292. All lectures and labs will be recorded and the videos will be archived and streamed live during meeting times.
Time and Location
Lectures: Tue 7:35-9:35 pm, Maxwell Dworkin G125
Labs: Thu 7:35-9:35 pm, 53 Church St. Room #104
Office hours: TDB
Instructor
Nicolas Pinto
MIT Room #46-6161, Cambridge, MA 02139
Rowland Institute at Harvard, Cambridge, MA 02138
Co-Instructor
Hanspeter Pfister
33 Oxford St. Room #227, Cambridge, MA 02138
Staff
Claudio Andreoni
Dwight Bell
Krunal Patel
Jud Porter
Justin Riley
Mike Roberts
Academic Honesty
You are welcome to discuss the course's material and homework with others in order to better understand it, but the work you turn in must be your own unless collaboration is explicitly allowed (e.g., for the final project). You may not submit the same or similar work to this course that you have submitted or will submit to another. You must acknowledge any source code that was not written by you by mentioning the original author(s) directly in your source code (comment or header). You can also acknowledge sources in a README.txt file if you used whole classes or libraries. Do not remove any original copyright notices and headers. For more information see the Harvard Extension School academic guidelines. All forms of academic dishonesty will be forwarded to the Harvard College or Extension School Administrative Board.
Grading
Final grades will be determined by a weighted average of all points using the following weights:
- Homework (50%) There will be six programming assignments.
- Final Project (40%) You will complete a final project of your own choosing with approval by the instructor.
- Class & Online Participation (10%) Attendance is mandatory for guest lectures and we expect that everybody participates in class and the online forum.
You may take this course pass/fail. Realize, though, that some departments (Computer Science, Applied Math, etc.) do not allow courses taken pass/fail to satisfy concentration requirements. Moreover, you will certainly learn more by immersing yourself in this course, in which case you might just want to take it for a grade.
Tardiness Policy
Each homework is due on Friday at 11 pm EST. Homeworks are accepted up to two days following the hand in date with a 15 point daily deduction penalty (i.e., before Saturday 11 pm EST is 15 points off, before Sunday 11 pm EST is 30 points off). Homework submissions will not be accepted after Sunday 11 pm EST following the hand in date. Each student is given two late days at the beginning of the semester. You can use a late day to submit any regular homework assignment up to 24 hours after the due date without penalty. Late days are intended to give you flexibility: you can use them for any reason - no questions asked. However, you only get two late days for the whole semester, so please use them wisely! You don't get any bonus points for not using your late days. Also, you cannot use late days for your final project milestones, the project deadline, or your exam - those deadlines are hard.
Lab Sessions
Lab sessions will be held in the Mac Lab in Room 104 at 53 Church St. where we have 30 MacPro PCs with NVIDIA Quadro FX 4800 GPUs. The sessions will be run by the TFs. In order to get access to the facilities at 53 Church St. we will need to add your Harvard ID to the system. To do so we are asking for your 9-digit Harvard ID and the expiration date in the upcoming HW 0 questionnaire. If you do not have a Harvard ID you can request a temporary ID at the front desk. The door will be open the first to week of classes.
Computing Facilities
We expect that most of you - especially the distance education students - will use the SEAS ‘resonance’ GPU cluster for your homework and final projects. Instructions on how to sign up for and access ‘resonance’ will be posted in HW 0. In addition, the MacPro PCs with NVIDIA Quadro FX 4800 GPUs in Room 104 (the Mac Lab) and in Room 105 (the Multimedia Lab) at 53 Church St. are also available to you. Room 104 has been reserved for CS 264 on M, W, F 1-2:30 pm, but is usually used for other classes outside those times. Room 105 is never used for classes, and you can work there also during evening hours. See “Lab Sessions” above on how to access the facilities. The 53 Church St. hours are:
Mon to Thurs: 9am to midnight
Fri and Sat: 9am to 10pm
Sunday: Noon to 10pm
Live Classroom & Video Archive
The class will be broadcast live via Adobe Connect, including live video from the classroom, a synchronized view of the projected slides, and a chat window to ask questions and to contact fellow online students. In case the Adobe Connect server fails, you can also connect to an alternate live video feed. Both features will only work during lecture time. The archived videos of the lectures and labs are available about two days after meeting time.
Office Hours
Lectures are supplemented by occasional weekly 60- to 90-minute office hours led by the teaching fellows. Office hours provide you with an opportunity to review and discuss course materials in a more intimate environment, with only your teaching fellow and a handful of classmates present. Moreover, the teaching fellows supplement material from lecture with additional examples and implementation details as well as provide further guidance for the homework. Office hour dates and topics will be announced on the course news feed.