Heat, not ambition, pushed every computer into doing many things at once
For about two decades, chips got faster mainly by ticking faster. Then power use and heat hit a wall, and on 8 May 2004 Intel cancelled two planned processors, a moment often cited as the end of that era. Manufacturers turned to packing several cores onto each chip, and parallel computing went from supercomputer niche to everyday reality.
A chip's power draw rises with its clock frequency and with the square of its voltage, so each speed bump cost more electricity and produced more heat. From the mid-1980s until 2004, raising frequency had been the main source of performance gains. Once that route closed, the industry split the work instead. Quad-core desktop processors were standard by 2012, and by 2023 some chips carried more than a hundred cores. Some designs, such as ARM's big.LITTLE, mix fast cores with frugal ones to manage heat.
Extra cores do not speed up old software automatically. A program written as one long sequence of instructions must be restructured so separate parts can run simultaneously. Ideally, doubling the processors halves the runtime, but real programs rarely manage it. Amdahl's law sets the ceiling: whatever fraction of a job cannot be split limits the total gain, so adding processors brings shrinking returns. No program can finish sooner than its longest chain of steps that each depend on the one before, called the critical path.
Parallelism differs from concurrency. A parallel program literally runs pieces on several cores at once, while a concurrent one can juggle many tasks even on a single core by switching among them. Mixing the two creates new kinds of bugs. The most common is a race condition, where two threads update the same variable and the result depends on which gets there first. Programmers guard shared data with locks so only one thread touches it at a time, but locks slow things down, and grabbing several of them piecemeal can lead to deadlock, where two threads each hold something the other needs and both freeze.
Some specialists sidestep locks with carefully built lock-free algorithms, though those are notoriously hard to write. Historically, the demand for parallel machines came from science, above all from simulations such as weather forecasting.
Source: Parallel computing