Learn advanced system-level architecture techniques for devices such as personal computers, servers, and embedded or portable systems. Understand basic principles such as locality, coarse-grain parallelism, overlapping communication and computation, performance/power trade-offs, and reliability. Obtain a firm grasp of how computer systems are organized and, more importantly, why they are organized that way.
Computer Systems Architecture
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