18-213/18-613: Computer Systems

Fall 2022

  • 18-213 Pittsburgh: TR 01:25 PM - 02:45 PM, DH A302, Phil Gibbons
  • 18-613 Pittsburgh: TR 11:50 AM - 01:10 PM, HOA 160, Gregory Kesden
  • 18-613 Silicon Valley: TR 08:50 AM - 10:10 AM (Pacific Time), B23 110, Gregory Kesden
  • Small group meetings align with assigned recitation slots and meet each week.

12 units

The course provides a programmer's view 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, networks, operating systems, and computer architecture, 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, memory organization and management, networking technology and protocols, and supporting concurrent computation.

Course Syllabus

Prerequisites: C or better in 15-122


What's New?

  • 29 August 2022
    • Welcome! We're so glad you are here!

Getting Help

Piazza Piazza
Posts to Piazza are public by default. Think carefully about the AIV policy before posting code or design details. Make a private post, visible only to instructors and TAs, if in doubt.
Email Please use Piazza for help, instead of email, unless trying to contact a specific instructor.
Office Hours Instead of an office hours queue, youll be able to sign up for office hours slots:
  • Sundays - Thursdays, 6-8pm ET, Ansys A050 or via Zoom
  • Sundays - Thursdays, 8-10pm ET, Zoom-Only
  • CMU SV Only: Tuesdays, 3:30pm PT - 6:00pm PT, B23:211
  • CMU SV Only: Wednesdays, 3:00pm PT - 5:30pm PT, B23:211
  • Note: Office hours for the professors are given below.

    Course Materials

    Schedule Lecture schedule, slides, recitation notes, readings, and code
    Labs Details of the labs, due dates, and policies
    Homeworks Details of the homeworks, due dates, and policies
    Exam Information about the final exam
    Lab Machines Instructions for using the lab machines
    Resources Additional course resources

    Course Information

    For details See the course syllabus for details (below is just a few overview bits).
    Lectures See above
    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
    Credit 12 units
    Grading Composed from total lab performance (50%), total homework performance (20%), small group performance (5%), and final exam performance (25%).
    Labs There are 8 labs (L0-L7), not evenly weighted. See the labs page for the breakdown.
    Exam There is a final exam, held during exam week, closed book.
    Home https://www.cs.cmu.edu/~18213
    Questions Piazza, office hours
    Canvas Canvas will be used (i) to post lecture videos, and (ii) to conduct ungraded, in-class quizzes. Your grading information will be kept up to date in Autolab, not in Canvas.
    Course Directory /afs/cs/academic/class/18213-f22/

    Instructors

    Name Phil Gibbons Greg Kesden
    Contact gibbons@cs.cmu.edu gkesden@andrew.cmu.edu
    Office GHC 7221 (PIT) HH A205 (PIT)
    Office Hours Tu 3-4 pm https://www.andrew.cmu.edu/~gkesden/schedule.html