- Evolution of hardware capabilities: density, speed, power, communications
- Virtual memory, virtualised processors
- The programming interface: instruction sets and memory models, compiler support
- Memory Hierarchies: cache architectures
- Branch prediction
- Cache coherence
- Instruction parallelism: pipeline optimisations, superscalar and out-of-order execution
- Data parallelism: dataflow, vector, SIMD
- Thread parallelism: hyper-threading, latency hiding, multi-core
- GPUs and other accelerators, Intel Phi
- Special-purpose processors: DSPs
- System on-chip
- Architecture performance simulation