Spring 2014: CS/ECE 7810 Advanced Computer Architecture
General Information:
- Venue: MEB 3105
- Time: Monday, Wednesday 11:50am - 1:10pm
- Instructor: Rajeev Balasubramonian, email: rajeev, MEB 3414, office hours: by appointment
- Pre-Requisite: CS/ECE 6810 or equivalent
- Reference textbook for cache coherence: "Parallel Computer Architecture", Culler, Singh, Gupta.
Reference textbook for memory systems: "Memory Systems: Cache, DRAM, Disk", Jacob, Ng, Wang.
Reference textbook for parallel algorithms: "Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes", Leighton.
Reference textbook for interconnection networks: "Principles and Practices of Interconnection Networks", Dally and Towles.
Other reference textbooks: Morgan Claypool Synthesis Lecture Series on Computer Architecture
- Class mailing list: cs7810@list.eng.utah.edu. Visit the mailman system to sign up or modify.
Course Description
The course will be based on advanced topics regarding multi-core hardware: memory systems, cache coherence protocols, cache hierarchies, consistency models, transactional memory, interconnection networks, core design, and parallel algorithms.
Students are expected to present a conference paper (for about 20-30 mins) related to their project in one of the classes in March-April. A project presentation is expected in the last week of classes. Final project reports are due early May.
College of Engineering Add/Drop Policy:
Guidelines from the college.
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 accommodations.
All written information in this course can be made available in
alternative format with prior notification to the Center for
Disability Services.
Grading:
The course project accounts for 50% of the class grade.
20% will be based on a programming assignment, due in early Feb.
10% will be based on your paper presentation.
The remaining 20% will be based on a take-home final.
Class Schedule
Slides will be posted a few hours before class.
- Mo 6th Jan:
Memory Systems: intro
Slides:
(powerpoint)
(pdf)
- We 8th Jan:
Memory Systems: energy innovations
Slides:
(powerpoint)
(pdf)
- Mo 13th Jan:
Memory Systems: buffered memory systems, scheduling
Slides:
(powerpoint)
(pdf)
- We 15th Jan:
Memory systems: scheduling, refresh
Slides:
(powerpoint)
(pdf)
- Mo 20th Jan: University holiday
- We 22nd Jan:
Memory systems: refresh, reliability
Slides:
(powerpoint)
(pdf)
- Mo 27th Jan:
Memory systems: reliability, PCM
Slides:
(powerpoint)
(pdf)
Memory System Assignment
- We 29th Jan:
PCM wrap-up, cache coherence intro
Slides:
(powerpoint)
(pdf)
- Mo 3rd Feb: No class
- We 5th Feb:
Snooping and Directory Protocols
Slides:
(powerpoint)
(pdf)
- Mo 10th Feb:
Directory-based Implementations, TM intro
Slides:
(powerpoint)
(pdf)
- We 12th Feb:
Transactional Memory
Slides:
(powerpoint)
(pdf)
- Mo 17th Feb: University holiday
- We 19th Feb: No class
- Mo 24th Feb:
Shared memory consistency models tutorial (Adve and Gharachorloo)
YouTube videos on consistency models:
YouTube Video 68 (Example multi-threaded programs and sequentially consistent results)
YouTube Video 69 (Hardware support for sequential consistency, example of how SC is violated if program order is violated)
YouTube Video 70 (Example on how a coherence protocol may violate write atomicity and sequential consistency, hardware support for sequential consistency, safe optimizations to speed up the hardware)
YouTube Video 71 (A hardware-software approach to improving performance with relaxed consistency models and fences)
Slides:
(powerpoint)
(pdf)
- We 26th Feb:
Large cache hierarchy design: shared/private/NUCA, partitioning, replacement
Slides:
(powerpoint)
(pdf)
- Mo 3rd Mar: ASPLOS
- We 5th Mar:
Large caches: prefetching (guest lecture by Seth Pugsley)
Slides:
(powerpoint)
(pdf)
- Mo 10th Mar: Spring Break
- We 12th Mar: Spring Break
- Mo 17th Mar:
Large Caches: replacement, associativity, networks
Slides:
(powerpoint)
(pdf)
- We 19th Mar:
Interconnection network innovations
Slides:
(powerpoint)
(pdf)
- Mo 24th Mar:
Core Design Basics
Slides:
(powerpoint)
(pdf)
- We 26th Mar:
Core Design Basics
Slides:
(powerpoint)
(pdf)
- Mo 31st Mar:
Core Design Innovations, parallel algos
Slides:
(powerpoint)
(pdf)
- We 2nd Apr:
Parallel algorithms (Leighton book)
Slides:
(powerpoint)
(pdf)
- Mo 7th Apr:
Big data, memristors
Slides:
(powerpoint)
(pdf)
Student Paper Discussions:
- We 9th Apr: Student presentations
Towards Energy-Proportional Datacenter Memory with Mobile DRAM
MemScale: Active Low-Power Modes for Main Memory
Dynamic Zero Compression for Cache Energy Reduction
- Mo 14th Apr: Student presentations
Reducing GPU Offload Latency via Fine-Grained CPU-GPU Synchronization
Timing Channel Protection for Memory Controllers
BOOM: Enabling Mobile Memory Based Low-Power Server DIMMs
Frequent Value Encoding for Low Power Data Buses
- We 16th Apr: Student presentations
GPUdmm: A high performance and memory oblivious GPU architecture using dynamic memory management
The NVIDIA Tesla Architecture
DESC: Energy Efficient Data Exchange using Synchronized Counters
PHANTOM: Practical Oblivious Computation in a Secure Processor
- Mo 21st Apr: Student presentations
Supporting x86-64 Address Translation for 100s of GPU Lanes
Mini-Rank: Adaptive DRAM Architecture for Improving Memory Power Efficiency
Demystifying GPU Microarchitecture through Microbenchmarking
- We 23rd Apr:
Student project presentations.