6.172 Performance Engineering of Software Systems
Fall 2011
Instructors: Saman P Amarasinghe, Charles E Leiserson
TAs: Ekanathan Palamadai Natarajan, rmperez@mit.edu, Tao Schardl, Phumpong Watanaprakornkul
Lecture:
TR 2.30-4
(32-123)
Office Hours: MTW 4-6
(32-G7 lounge)
Recitation 1: F 10-12
(24-121)
Recitation 2: F 1-3
(24-115)
Recitation 3: F 3-5
(24-121)
Information:
Modern computing platforms provide unprecedented amounts of raw
computational power. But significant complexity comes along with
this power, to the point that making useful computations exploit
even a fraction of the potential of the computing platform is a
substantial challenge. Indeed, obtaining good performance requires
a comprehensive understanding of all layers of the underlying
platform, deep insight into the computation at hand, and the
ingenuity and creativity required to obtain an effective mapping of
the computation onto the machine. The reward for mastering these
sophisticated and challenging topics is the ability to make
computations that can process large amount of data orders of
magnitude more quickly and efficiently and to obtain results that
are unavailable with standard practice.
This class is a hands-on, project-based introduction to building
scalable and high-performance software systems. Topics include:
performance analysis, algorithmic techniques for high performance,
instruction-level optimizations, cache and memory hierarchy
optimization, parallel programming, and building scalable
distributed systems.
Announcements
Project 3.1
(These are the same additional rules that were posted on piazza).
1. Usage of C++ Standard Template Library containers is NOT allowed.(since they will use memory on heap internally bypassing our allocator heap interface).
2. All data structures that allocate memory on heap MUST use our allocator heap interface.
3. All heap memory space used by your data structures will hence be counted under space utilization.
Please use the updated handout.
Announced on 31 October 2011 4:23 p.m. by Ekanathan Palamadai Natarajan
Project 3.1
Announced on 25 October 2011 5:44 p.m. by Ekanathan Palamadai Natarajan
Project 2 beta due & Project 3 groups
Hi,Project 2 beta is due this Monday. Don't forget to do `git push` and upload the write-up to Stellar. Please also commit your write-up to the repository because we will distribute your repository to your masters and they want to read your write-up too. You should put the write-up in the root directory.
In the mean time, you can pick a partner for project 3. We will randomly assigned you to groups at the end of Tuesday if you do not choose the partner by then. You can do this by
1. log in to a course machine
2. run the following command
$ project-setup -p 3 project-partner-csail-username
As a reminder, your partner for project 3 has to be different from your partners from project 1 and 2.
Cheers,
Yod
Announced on 22 October 2011 8:33 p.m. by Phumpong Watanaprakornkul
MITPOSSE Clarification
Hi,We just sent all of you an email about your MITPOSSE assignment. (Please contact us if you did not receive the email.) You are not supposed to meet the Master with your project partner. You will meet with your review group of 2 students. This will be the same review group for all projects. You will have a chance to discuss the project with the other group during the meeting. This also implies that you have to understand everything in your code. "My partner wrote this part," is not an acceptable excuse.
Please contact your Master as soon as possible.
Cheers,
Yod
Announced on 29 September 2011 11:16 p.m. by Phumpong Watanaprakornkul
Project 1 beta due & Project 2 groups
Hi,Project 1 is due tonight. Don't forget to do `git push` and upload the write-up to Stellar. If you have any questions about the project, you can come to the office hours this evening.
In the mean time, you can pick a partner for project 2. We will randomly assigned you to groups at the end of tomorrow if you do not choose the partner by then. You can do this by
1. log in to a course machine
2. run the following command
$ project-setup -p 2 project-partner-csail-username
Cheers,
Yod
Announced on 26 September 2011 9:40 a.m. by Phumpong Watanaprakornkul