A computing chip containing more than one central processor or ‘core’. These cores each have local memory and cache, and communicate internally via a common data bus, which itself is connected via a second, larger cache to the outside world. Until the early 2000s, processor chips had but one core, and improvements in chip technology simply meant wider data bus widths, more internal registers, and higher clock speeds. In the 2000s, however, further clock-speed improvements became infeasible, mainly owing to the excessive heat being generated. The focus now switched to the use of multiple cores running in parallel on a single device. At the time of writing (2019) chips with 64 cores are in commercial use. This has had a major impact on the programming of such devices, as much greater use has to be made of parallel and concurrent multiprocessor programming techniques.