CS/ECE 6810
Computer Architecture
Syllabus
 
Fall 2009

General Information

Course Information

Almost all course information will be distributed electronically either via this web page or in email form to the class mailing list.  You are responsible for knowing what these sources contain.  The contents of this web page will change over the course of the term and you will be expected to be familiar with the latest postings.   If you are the type who likes to bring slide hard copies to class and annotate them in lieu of more traditional note taking, then you might be wise to delay printing the slides until morning on the day of the lecture.   

NOTE:  some lecture slides contain figures that are provided by the book publisher.  You are allowed to make copies of them only for your personal use.


Special Needs

The University of Utah seeks to provide equal access to its programs, services, and activities for people with disabilities.  If you will need accommodations in the class, reasonable prior notice needs to be given to the Center for Disability Services, 162 Olpin Union Building, 581-5020 (V/TDD).  CDS will work with you and the instructor to make arrangements for accomodations.  All written information in this course can be made available in alternative format with prior notification to the Center for Disability Services. 

College of Engineering Add/Drop Policy

This is cast in concrete by the College, so make sure you know the deadlines.


Prerequisites

You are expected to know introductory computer architecture concepts, such as those covered in CS 3810 (textbook for 3810: Computer Organization and Design, Patterson and Hennessy, 4th edition).  It will be to your advantage to review the concepts in the 3810 textbook prior to the 2nd week of class.

Collaboration vs. Cheating

With the exception of exams you are encouraged to work and talk with other students about lectures, homework, labs, and exam preparation.  However once it comes time to write either your code, assignment text, or anytime you are in an examination, the work must be solely your own. Anything else is cheating and it is against University policy.  For example, cutting and pasting from somebody else's work is definitely cheating.  If you are caught cheating then you will fail the course and disciplinary action will be taken.  There will be no warning - if you cheat you will fail, it's just that simple.   

I really do not care how you learn the material - but I care a lot that you DO in fact learn it.  Hence if you just copy somebody's work you will likely fail the exam which always has only original questions on it.  Remember you are training for a profession not just passing a class - all will be well if you remember the spirit of the exercise.


Grading Policy

Your grade will be based on how well you do with respect to the best student in the class.  While letter grades will be assigned based on natural gaps in the final distribution, the approximate method is that within 90% of the best student is an A, 80% a B and so forth.  If the best student is too good, Al will designate an appropriate student to be the "best" student for grading purposes.  Each homework and exam will be worth 100 points with the exception of #6 which is a double assignment and is worth 200 points. Homework points are equal and will account for 50% of the final grade. There will be two midterm exams and no final exam. Each midterm exam will count for 25% of the final grade.  If your homework ranking is signficantly above your exam ranking then your final grade will be solely based on your exam scores.  

Option: If you want to have your final grade be solely determined by exams then you need to select this option before 5 p.m. on September 4, 2009 by email to $email=ald.  Note that this option is not recommended unless you already have a strong background at the graduate level in computer architecture and are stuck taking this class because it is required.  If the past is any prediction of the future, most students who have previously selected this option have not done well.  The two exceptions were students who spent several years in industry doing computer architecture prior to returning to graduate school. Nonetheless it is your choice.

There will be one special assignment called assignment 0 - it is short and requires that you join the class email list and send email to $email=ald to get a "secret" integer so you can decipher the grades that will be posted on the web.  If you select the exam only option you will still need to do this assignment.   Homeworks will be turned in at the beginning of class on the due date for that assignment.  No late submissions will be graded.  We realize that you all have a lot of deadlines to balance, you are therefore allowed to skip one assignment -- use this freebie prudently.  Note however that since #6 is a double assignment, it cannot be skipped.   Namely the lowest assignment will be dropped in determining your final grade.  If you are going to miss an exam, you need to make arrangements in advance.   "Too busy", "I have to work", "I'm getting married", etc. are not reasonable excuses.  Medical or legal emergencies are legitimate excuses and will require appropriate documentation.  Make up exams will be oral and if tradition persists they tend to be quite a bit harder than the real exam.  Midterm exams are open book and open notes.  Oral exams are closed book and the questions are harder for obvious reasons - my advice is to avoid them.


Grades

You are responsible for making sure that the scores we have for you are correct.  Click here to see your grades indexed by your secret integer. The column headings are self explanatory.  Total points = .5 *homework/#hws + .25*midterm1 + .25*midterm2, and Norm Total is where you are as a percentage with respect to the best student in the class.   


Slide Notes:

 Lecture slides will be available on the web in two color .pdf formats - namely 2 slides per page and 4 slides per page.   


Note:


Course Schedule

Part 1: Uniprocessors

Tu Aug. 25 - Lecture: Course logistics & motivation, market segments, technology trends
Reading: review the textbook for CS3810, Textbook: Chapter 1.1 - 1.6
Slides: 2up, 4up
Homework: #0: part 1: send $email=ald a message requesting your secret integer from the email address that you will use for the class mailing list.

Aug. 26 - No class but email HW0 due @ 5 p.m. for all students

Th Aug. 27 - Lecture: Quantitative Analysis
Reading: Chapter 1.7 - 1.13
Homework: #1 handed out

Tu Sept. 1Lecture: ISA and Memory Access
Reading: Appendix B
Slides: 2up, 4up

Th Sept. 3 - Lecture: Pipelining Basics
Reading: Appendix A.1 - A.3
Slides: 2up, 4up

Tu Sept. 8 - Lecture: Advanced Pipelining
Reading: Appendix A.4 - A.10
Slides: 2up, 4up
Homework: #1 due, #2 handed out

Th Sept. 10 - Lecture: Software ILP Basics (cancelled due to emergency)
Reading: Chapter 2.1, 2.2, Appendix G (read this stuff anyway) 

Tu Sept. 15 -  Lecture: ILP Basics & Branch Prediction
Reading: Chapter 2.3
Slides: 2up, 4up, Scott McFarling Paper

Th Sept. 17 -LectureDynamic Issue and Hardware Speculation
Reading: Chapter 2.4 - 2.6
Slides: 2up, 4up

Tu Sept. 22Lecture: Static Scheduling & VLIW, Speculation
Reading: Chapter 2.7 - 2.11
Slides: 2up, 4up
Homework: #2 due, history.txt (if you don't have it handy),  #3 handed out

Th Sept. 24 -  Lecture: ILP Limitations
Reading: Chapter 3
Slides: 2up, 4up

Tu Sept. 29 - Lecture: Memory Hierarchy and Cache Basics
Reading: Chapter 5.1, Appendix C.1 - C.2
Slides: 2up, 4up

Th Oct. 1 -  Lecture: Cache Optimizations
Reading: Appendix C.3, Chapter 5.2
Slides: 2up, 4up
Homework: #3 due

Tu Oct. 6 -  Lecture: Virtual Memory and Protection, mid-term review
Reading: Chapter 5.3 - 5.8, Appendix C.3 - C.7
Slides:  2up, 4up

Practice Mid-Term Exam
note - this was the midterm exam last year and the sequence of the presented material is similar, however last year Rajeev taught the course and his style is different, this year the exam will be weighted more to conceptual understanding and the homeworks deal with the computational details.  Best way to psych out what the instructor thinks is important is to focus on what he/she was obsessed with in the lectures.

Th Oct. 8 - MID-TERM EXAMINATION #1
Coverage: Chapters 1 - 3, and Appendices A, B, and G (namely single core architectures).  Conceptual questions on material covered in Chap. 5.1-5.2 and Appendix C.1-C.2 (e.g. caches) are likely.
Format: open book, open notes, bring a calculator (no internet enabled devices for obvious reasons)

Oct. 12-16 -  No Class - FALL BREAK

Part 1: Multi-Processors, Storage, and Interconnect

Tu Oct. 20 - Lecture: Multiprocessors & Multicore Processor Basics
Reading: Chapter 4.1
Slides: 2up, 4up
Homework: #4 handed out, CACTI 6 Tech Report

Th Oct. 22 - Lecture: Symmetric Shared-Memory Architectures
Reading: Chapter 4.2, 4.3
Slides: 2up, 4up

Tu Oct. 27 -  Lecture: Distributed Shared-Memory Architectures and Synchronization
Reading: Chapter 4.4
Slides: 2up, 4up

Th Oct. 29 - Lecture: Consistency Models & Transactional Memory
Reading: Chapter 4.5 - 4.10, LogTM paper
Slides: 2up, 4up
Homework: #4 due, #5 handed out (Oct 30)

Tu Nov. 3 - Lecture: Introduction to Interconnection Networks: Toplogy
Reading: Appendix E
Slides: 2up, 4up

Th Nov. 5 No class

Tu Nov. 10 -  Lecture: Interconnection Networks: Routing Algorithms
Reading: HyperX, Corona
Slides:  2up, 4up

Th Nov. 12 -  Lecture:  Interconnection Networks Examples and Evaluation
Reading:  Appendix F
No slides - whiteboard presentation (high radix switch technology table)
Homework: #5 due, #6 (double assignment) handed out 

Tu Nov. 17 - Lecture: Vector Processors & Supercomputers
Reading: Appendix F, H
Slides: 2up, 4up

Tu Nov. 19 - Lecture: Main memory - a DRAM Primer
Reading: none
Slides: 2up, 4up

Tu Nov. 24 - No class

Th Nov. 26 - No Class - THANKSGIVING BREAK 

Tu Dec. 1 - Lecture: Storage Systems Intro & Disks
Reading: Chapter 6.1 - 6.3
Slides: 2up, 4up 

Th Dec. 3 -  Lecture: Non-Volatile Memory Technology
Reading: none
Slides: 2up, 4up

Possible Mid-Term 2 Exam Questions

Tu Dec. 8MID-TERM EXAMINATION #2
Coverage: Chapters 4-6, Appendices E, F, & H
Open Book, Open Notes.  Bring a Calculator (no wireless devices permitted for obvious reasons)

Th Dec. 10 - Lecture: Wrap up and Al's free-form dump of what's on the architecture horizon
Reading: None
Slides: TBD - might be white board
Homework: #6 due


Helpful Links