Search for contacts, projects,
courses and publications

Advanced Computer Architectures


Pozzi L.

Course director

Ferretti L.



The course builds on previous knowledge in basic computer architecture, and visits the major techniques devised to get higher performance from a single processor, and, later on, from multi-processors. It describes the concepts of pipelined CPUs, cache architecture and optimization, Instruction-Level parallelism (Superscalar and VLIW architectures), Thread-Level parallelism (fine-grained, coarse-grained, simultaneous multithreading), Data-level parallelism (Vector architectures), and shared-memory multi-processing. The course also includes a project where the Simplescalar and Watch simulation tools are used to perform design-space exploration, and to understand the tradeoffs that computer architects must consider between performance and cost.



  • J. Hennessey, D. Patterson "Computer Architecture: a quantitative approach" 5th or 6th edition, Morgan-Kaufmann Publishers