This course focuses on how to build modern computing systems, namely notebooks, smartphones, and data centers, covering primarily their hardware architecture and certain system software aspects. Each system class covers the system architecture, processor technology, advanced memory hierarchy and I/O organization, power and energy management, and reliability. Programming assignments will allow students to explore performance/energy tradeoffs when using heterogeneous hardware resources on smartphone devices.
- Christos Kozyrakis Associate Professor, Electrical Engineering and Computer Science
- Cache hierarchies, memory systems, storage and IO systems
- Virtualization, clusters, fault-tolerance, and low-power design
- Interactions between hardware and software layers in such systems
- Performance analysis and optimization techniques for small and large-scale systems
EE 180: Digital Systems Architecture (formerly EE 108B)
CS 140: Operating Systems and Systems Programming
We highly recommend watching the course preview to ensure you have the requisite background and understand the scope of material covered.