Class times: MW 3:30-5:20pm (Pacific)/6:30-8:20pm (Eastern), B23 118, 211 (SV), DH A302 (Pittsburgh)
This course provides both the programmer's and architect's views of how computer systems execute programs, store information, and communicate. It enables students to become more effective programmers, especially in dealing with issues of performance, portability and robustness. It also serves as a foundation for courses on compilers, operating systems, computer architecture, and networking, where a deeper understanding of systems-level issues is required. Topics covered include: machine-level code and its generation by optimizing compilers, performance evaluation and optimization, computer arithmetic, processor architecture, parallel architecture, memory organization and management, networking technology and protocols, and supporting concurrent computation workloads. This course is modeled after 15-213/18-213/15-513, and is intended for ECE and INI MS students with expanded course contents presented at the graduate level. It prepares students for other graduate level computer systems courses as well as working in the industry.
Course Syllabus
Instructors
Course Information
For details |
See the course syllabus for details. |
Recitations |
Section A: Tue, 7:30pm to 8:50pm (ET), HH 1107, Jithin Yaratapalli, Sampath Chanda
Section B: Tue, 7:30pm to 8:50pm (ET), DH A302, Akanksha Periwal, Gautam Arakalgud
Section C: Tue, 5:30pm to 6:50pm (ET), WEH 4623, Abhiroop Kaginalkar, Prerit Roodney
Section D: Tue, 5:30pm to 6:50pm (ET), WEH 4623, Harish Dixit, Mani Swetha Mandava
Section SA: Tue 4:30pm to 5:50pm (PT), B23 118, Daniel Chen, Siyang Mai
Section SB: Tue, 4:30pm to 5:50pm (PT), B23 109/110, Abhinav Jauhri
|
TA Office Hours Silicon Valley (PT) |
Wednesday (6-8pm) @ B23 228 Thursday (5-6pm, only when labs are due) @ B23 228 Sunday (2-4pm) @ B23 228
|
TA Office Hours Pittsburgh (ET) |
Wednesday (2:30-3:30pm) @ WEH 5421, (3:30-4:30pm) @ WEH 5415 Thursday (6-7pm, only when labs are due) @ WEH 5312 Sunday (2-4pm) @ WEH 4623
|
Required Textbooks |
Randal E. Bryant and David R. O'Hallaron,
Computer Systems: A
Programmer's Perspective, Third Edition, Pearson, 2016
|
|
Brian W. Kernighan and Dennis M. Ritchie,
The C Programming Language, Second Edition, Prentice Hall, 1988
|
Optional Textbooks |
John Shen and Mikko Lipasti
Modern Processor Design: Fundamentals of Superscalar Processors, 2005; reissued by Waveland Press Inc, 2013. ISBN 13: 978-1-4786-0783-0
|
|
Michel Dubois, Murali Annavaram, Per Stenstrom
Parallel Computer Organization and Design, Cambridge University Press, 2012. ISBN 978-0-521-88675-8
|
Grading |
Composed from total lab performance (50%) and total exam performance (50%).
|
Piazza |
For all course related communication use piazza.com/cmu/fall2017/18600/home. Please post your questions according to our guidelines here: Piazza Guidelines |
Course Directory |
/afs/ece.cmu.edu/class/ece600/ |
Course Assistants
Name |
Brittany Jade Reyes |
Michelle Mahouski |
Contact |
bjreyes@andrew.cmu.edu, 650-335-2854 |
mmahousk@andrew.cmu.edu |
Office |
B19 1052 |
HH 1112 |
|