The evolution of parallel computers has had a rich and varied history.
Examples are associative processor, caching, co-processor, multiple functional units, pipelining.
Processor duplication or mass replication of smaller processing elements. Machines connected together via a network. Examples are distributed computing, workstation clusters, and metacomputing. These are used for highly SIMD applications such as image processing and other specialised tasks. Machines such as the CM-200 are obsolete by modern standards.