Course Content
This course is an introduction to concepts in computer architecture beyond those taught in typical undergraduate courses, such as:
- advanced memory hierarchy designs;
- superscalar machines;
- vector machines and GPUs;
- multicore architectures; and
- hardware accelerators.
You may wish to look at the schedule.
If there are particular topics you would like me to cover, the course has some flexibility, and I would like to spend more time on topics of interest to students.
Prerequisites
The course catalog lists the prerequisite for this course as “CS 3330 (our undergraduate computer architecture course) or proficiency in assembly language progrmaming”. Most students don’t have a background which quite matches either of these descriptions. I will make some efforts to recognize this lack of background, but it is important that, as a graduate course, this course not spend its time on undergraduate material.
If you have not seen any assembly language or machine code before, please talk to the instructor about your situation.
If you cannot program in assembly or language with pointer arithmetic (e.g. C, C++), this may create difficulties for you starting with our first assignment. Please talk to the instructor about your situtation.
In general, it would be best if you have prior exposure to:
- direct-mapped and/or set-associative caches;
- virtual memory;
- pipelined processors;
- exceptions and/or interrupts;
If you do not have significant exposure to any of these topics, you should expect to spend significant time reviewing it when it comes up in the course.
Course Staff and Resources
Piazza
This is a place to get help on almost any issue. Access via Collab.
Anonymous Feedback
Anonymous feedback is available through Collab. The instructor appreciates your feedback, especially when that feedback could be useful for improving the course.
This feedback is really anonymous. There is no way the course staff can find out who posted it, so the course staff cannot do much with complaints like “you misgraded my homework”.
Instructor
Charles Reiss
- Office: Rice 205. If the door is open, you are welcome to come in.
- Email: creiss@virginia.edu . Putting “6354” in the subject line is strongly recommended.
- Telephone: 434-924-8274
TA
TBA.
Office Hours
Charles Reiss’s office hours will be held in Rice 205. Other office hour locations will be announced.
All faculty office hours are open, meaning we will not close the door and have a private conversation during office hours. If you have sensitive matters to discuss, please email us to set up a separate time to visit about them.
Texts
We will use Hennessy and Patterson, “Computer Architecture: A quantitative approach, fifth edition”. Other editions may work, but I do not have a copy of them to check. We will assign readings but not exercises from the textbook.
Other course policies
… are described on the policies page.