computer-architecture

Definition

Temporal Parallelism (Computer Architecture)

Temporal parallelism is parallelism obtained by breaking a task into several stages and overlapping these stages over time.

Instead of duplicating hardware for the whole task, the computation is organised as a pipeline in which different inputs are processed in different stages at the same time.

In computer architecture, temporal parallelism is therefore often called pipelining.

Intuition

Assembly line

The standard analogy is an assembly line.

One product may be painted while another is assembled and a third is inspected. The products are at different stages, but all stages are active at once.

Example

Processor pipeline

A processor pipeline overlaps stages such as fetch, decode, execute, memory access, and write-back. Each individual instruction still passes through the stages in sequence, but several instructions can be in different stages at the same time.