CSCE 513 Computer Architecture, Fall 2018

Department of Computer Science and Engineering, University of South Carolina


Syllabus: Basic Information | Textbooks | Description | Objectives | Delivery Structure and Grading | Policies and Procedures

Schedule, Lecture Notes and Assignments

Study Topics | Resources for Learning | Development Machines


Basic Information


Textbooks

Read at least 15 pages per week in average following the class schedule


Course Description

Outline

The goal of this course is to provide foundational knowledge of Computer Archiecture with a particular emphasis on its influence on design of efficient programs. Topics include:

Prerequisites, and Prior Programming Skills and Knowledge (Required or Good to Have):


Learning Objectives

Following completion of the course, students should be able to:


Course Delivery Structure and Grading

There will be two 75-minute lectures per week, which constitutes 100% of the course lecture delivery. There will be no separate labs. For APOGEE students and offline study, class lecturing will be broadcasted, and video will be recorded and published online after each class. Please check Course Broadcasting using Adobe Connect page for details.

Course Exams, Assignments and Grading Scheme

There are two exams and five assignments. The two exams are close books/notes. The contribution of each to your final grades are shown below. Questions with bonus points may be given.

Mapping Between Letter Grade and Percentage Grade

Letter Percentage
A 90-100
B+ 86-90
B 80-86
C+ 76-80
C 70-76
D+ 66-70
D 60-66
F 0-60

Schedule, Topics, Lecture Notes and Assignments

Copyright, License and Acknowledgement of the Course Materials

The uses of the materials (source code, slides, documents and videos) of this course are for educational purposes only and should be used only in conjunction with the textbook. Derivatives of the materials must acknowledge the copyright notices of this and the originals. Permission for commercial purposes should be obtained from the original copyright holder and the successive copyright holders including myself. Please check the link for all the copyright holders.

Week Date Week day Class Topics, Lecture Notes and Videos Reading (CAQA) Optional Reading (COD) Study Topics and Exercise Resources Assignments
1 8/23/2018 Thursday
2 8/27/2018 Monday 1 Syllabus, Introduction 1.1 - 1.3 1.2 sum Linux and C
8/29/2018 Wednesday 2 Technology Trends and Quantitative Analysis for Performance, Video 1.3 - 1.5, 1.9 1.6, 1.7 Performance Counters and PAPI Programming Assignment 1(Steps for PAPI Installation and Use)
3 9/3/2018 Monday Labor day recess
9/5/2018 Wednesday 3 Instruction Set Principles, part 1, Video Appendix A Chapter 2
4 9/10/2018 Monday 4 Instruction Set Principles, part 2, Video Appendix A, RISC-V ISA Spec v2.1 Appendix L and K from CAQA
9/12/2018 Wednesday School close because of Florence
5 9/17/2018 Monday 5 RISC-V ISA, Pipeline and Hazards, Video RISC-V ISA Spec v2.1, Appendix C Chapter 4
9/19/2018 Wednesday 6 Pipeline and Hazards, Video Appendix C Chapter 4 Assignment 2, Excel Sheet for Assignment 2. Assignment 1 due
6 9/24/2018 Monday 7 Pipeline and Hazards, RISC-V Single-Cycle Implementation, Video Appendix C, RISC-V Sodor 1 stage impl Chapter 4 RISC-V and Chisel
9/26/2018 Wednesday 8 RISC-V Single-Cycle Implementation, Video Appendix C, Chapter 3, RISC-V Sodor 2,3,4,5 stage impl Chapter 4 RISC-V and Chisel
7 10/1/2018 Monday 9 RISC-V Pipeline Implementation, Video
10/3/2018 Wednesday 10 Memory Hierarchy - Technology and Locality, Video 2.1 and 2.2 5.1 and 5.2
8 10/8/2018 Monday 11 Memory Hierarchy - Cache Organization and Performance, Video B.1 and B.2 5.2 and 5.3 Assignment 3, Excel Sheet for Assignment 3, mm.c, Matrix Multiplication. Assignment 2 due
10/10/2018 Wednesday 12 Memory Hierarchy - Cache Optimizations, part 1, Video B.3 and 2.3 5.4
9 10/15/2018 Monday 13 Midterm, Study Topics Midterm in 2016
10/17/2018 Wednesday 14 Memory Hierarchy - Cache Optimizations, part 2, Video
10 10/22/2018 Monday 15 ILP - 5-stage Pipeline Extension, ILP Intro, Compiler Techniques, and Branch Prediction, Video C5, C6, 3.1, 3.2, 3.3
10/24/2018 Wednesday 16 ILP - Dynamic Scheduling (OOO), Video 3.4, 3.5 4.1
11 10/29/2018 Monday 17 ILP - Hardware Speculation and Static Superscalar/VLIW, Video 3.6, 3.7
10/31/2018 Wednesday 18 ILP - Dynamic Superscalar, Advanced Techniques, ARM Cortex-A53, and Intel Core i7, Video 3.8, 3.9, 3.12 Assignment 4, Assignment 3 due
12 11/5/2018 Monday 19 ILP - SMT, Video 3.11
11/7/2018 Wednesday 20 DLP - Introduction and Vector Architecture, Video 4.1, 4.2
11/9/2018 Friday 21 DLP - SIMD Extension, DLP - GPU, Video 1, Video 2 4.3, 4.4
13 11/12/2018 Monday Class rescheduled to 11/09, 9:00AM
11/14/2018 Wednesday 22 (webconnect) DLP - GPU and Loop-Level Parallelism, Video 4.4, 4.5
14 11/19/2018 Monday 23 TLP - Shared Memory and Snoopy Cache Coherence, Video 5.1, 5.2, 5.3 Assignment 5, Assignment 4 due
11/21/2018 Wednesday Thanksgiving recess
15 11/26/2018 Monday 24 TLP - Snooping Cache Coherence and False Sharing, Video 5.4
11/28/2018 Wednesday 25 TLP - Distributed Shared Memory and Directory-based Coherence, Video 5.5, 5.6 Bonus Questions (15 points total), Due 12/16 Sunday cutoff, no any extension.
16 12/3/2018 Monday 26 TLP - Synchronization, Chapter 7 - Domain Specific Architectures, Video 6
12/5/2018 Wednesday 27 Last class, Chapter 7 - Domain Specific Architectures and Review, Video
12/7/2018 Friday Last day of classes for the semester Assignment 5 due
17 12/12/2018 Wednesday Final exam 9:00AM - 11:30AM, Study Topics Final in 2016
12/16 Sunday Bonus Question Due

Policies and Procedures

Homework and Project

The homework and project exercises are chiefly for your own benefit. You may collaborate and consult outside sources freely when doing the homework, but you must tell me who you are collaborating with. Please remember, however, that the best way to master the material is to try the exercises on your own, then submit your own work to get feedback on it. (You will get credit even if you do not solve the problem, as long as you make an honest effort.)

Due Date and Late Policy

Each assignment has a due date and a cutoff date. Assignment due 11:55PM on the date, cut-off date is 72 hours after the due date/time. You have a total of 5 "slip days" throughout the semester that you can use at your discretion to turn in assignments past the posted due date. Slip days are used in whole day increments. Once your slip days are consumed, late assignments will be penalized at 50% per day. Assignment submission will not be accepted after the cutoff date.

Class Policies

Reading and lectures: The students are expected to read all assigned material before the lecture begins and review the material after the lecture.

Attendance Policy:

There is no required attendance policy, but if for some reason you cannot attend class, you are responsible for any material covered during your absence. Late arrivals must enter the classroom quietly and discreetly.

Exams:

Exams are given in class and are close-book/close-notes. No make-up exams will be given except under extreme circumstances (such as severe illness or death in the immediate family) in which case you must give me notice well before the exam if at all possible.

Academic Honesty:

Examination work and assignment are expected to be the sole effort of the student submitting the work. If a student collaborates with anyone on the homework (whether or not a student), all collaborators must be listed at the top of the first page. Students are expected to follow the Code of Student Academic Responsibility. Every instance of a suspected violation will be reported. Students found guilty of violations of the Code will receive the grade of F for the course in addition to whatever disciplinary sanctions are applied by the University.

Proper Use of Computing Resources:

Students are expected to be aware of the university policy on use of computing resources, including the Student Guidelines for Responsible Computing, as well as the college and departmental policies on proper use of computing resources. Every instance of a suspected violation will be reported.

Students With Disabilities:

Any student with a documented disability should contact the Office of Student Disability Services at 803-777-6142 to make arrangements for appropriate accommodations.