1. Module Introduction
Computer Architecture is the science of creating computers, by putting together hardware components.
Von Neuman Architecture
Most modern systems use the Von Neuman architecture.
Insert image here of CPU, memory unit, and I/O devices
How Computer Architecture is Changing
The end of Moore’s law:
- The physical and economic limits of how small and fast we can make transistors is being reached, meaning scaling is less plausible.
“Power wall”
- Increasing the clock speed leads to too much power being consumed, and excess heat production
The proposed solution: Heterogeneous Computing
Different types of specialised processing units, on a single chip. (i.e. CPU, GPU, NPU, Memory, etc.)
CPU:
- A small pool of complex cores, where each core runs a few threads, but at high speed.
GPU:
- Ideal for processes which demand high throughput for parallel workloads.
NPU:
- Perform tensor mathematics for neural networks with high energy efficiency.
- Multiply-accumulate units arranged to perform matrix multiplication efficiently. (Keep in mind Strassen’s Algorithm being $O(n^{\log_2 7})$, also look into other algorithms)