CIS 672: Computer Systems Architecture (Spring/Summer 2017)

Instructor: Andrew Kalafut
Email: kalafuta at gvsu dot edu
Office hours: Monday, Wednesday 5:00 - 6:00 PM, EC618

Please read the syllabus
Required text: Computer Architecutre: A Quantitative Approach, 5th edition, by Hennessy and Patterson. Additionally, some material is from the online appendices of this book.

This web site should be considered an official form of communication for this class and should be checked often. I will try to make the information posted below as accurate as possible, but it is subject to change.


There will be a midterm and a final exam in this course. The final will be held on June 21. The midterm will be held on May 24.


You are required to do an individual project. This project will include a presentation and a paper or computer program. Presentations will be held on June 19. A presentation of approximately 20 minutes is an acceptable length. Your maximum time will be 25 minutes, including time for questions.

Your presentation component will be graded based on the actual June 19 presentation. There is no need to send slides or other materials to the instructor.

If writing a paper, your paper should be 3 - 5 pages in IEEE conference format. Any topic of sufficient scope in computer architecture is allowed. However, topics must be approved by the instructor (please email me your topic before May 22). The paper or program is due, sent to the instructor through email with "CIS672 project" in the subject line, by 11:59 PM on Saturday, June 17.

Any topic of sufficient scope for a summer semester is allowed. Below are some suggestions:

Project Grading

Projects grades will be weighted according to the following chart:
Technical Content20%
Paper/Program70%Coding design and style / Writing mechanics15%
Program user interface / Writing organization and clarity15%
Program/Writing Correctness15%
Program Complexity / Writing technical Content25%

Project Resources

For some of these choices, you may find the below resources useful:


M 5/8/2017 Introduction, fundamentals and trends Chapter 1
W 5/10/2017 Instruction set architectures Appendix A, Appendix K
M 5/15/2017 Pipelining Appendix C
W 5/17/2017 Instruction level parallelism Chapter 3
M 5/22/2017 Thread level parallelism Chapter 5
W 5/24/2017 Midterm Exam None
M 5/29/2017 Memorial Day - No Class None
W 5/31/2017 Memory hierarchy Appendix B
M 6/5/2017 Memory performance and optimizations Chapter 2
W 6/7/2017 Storage systems Appendix D
M 6/12/2017 Data parallelism Chapter 4
W 6/14/2017 Warehouse computing Chapter 6
M 6/19/2017 Project presentations None
W 6/21/2017 Final Exam None