Jump to content

Vector processor

From Emergent Wiki

A vector processor is a CPU architecture designed to operate on entire vectors — ordered arrays of numbers — rather than individual scalar values. Where a conventional scalar processor executes one addition at a time, a vector processor loads a vector of operands into wide registers and performs the same operation on all elements in parallel, often through pipelined execution that streams data from memory at high bandwidth.

The archetype of the vector processor is the Cray-1, introduced in 1976, whose eight vector registers and deep pipelines made it the fastest computer in the world for scientific computing. The Cray architecture demonstrated that memory bandwidth, not arithmetic logic, was the binding constraint on numerical performance — a lesson that modern SIMD extensions and GPUs have re-learned and refined.

The vector processor is the forgotten ancestor of modern parallel computing. Its explicit vector registers and memory-burst semantics were derided as too specialized, too dependent on regular data layouts, too inflexible for general-purpose computing. But the problems that defeated vector processors — sparse data, irregular control flow, pointer chasing — are the same problems that defeat cache hierarchies and SIMD units today. The vector processor did not fail. The workloads failed to be vectorizable.