If you take up ever done more than comparability shopping for a new Central processing unit, you may have noticed that cores all look to have the speed rather than a combining of different ones. Why is that? Today's SuperUser Q&A post has the answer to a unusual reader's wonder.

Today's Question & Answer session comes to us courtesy of SuperUser—a subdivision of Lot Exchange, a community-driven grouping of Q&A web sites.

The Enquiry

SuperUser reader Jamie wants to know wherefore CPU cores all sustain the same speed instead of different ones:

In common, if you are buying a inexperienced computer, you would mold which C.P.U. to buy supported the due workload for the information processing system. Performance in TV games tends to be compulsive by unshared core speed, whereas applications like video recording editing are set by the act of cores. In terms of what is available on the grocery, every CPUs seem to have roughly the same speed with the main differences beingness more threads operating theater to a greater extent cores.

For example:

  • Intel Core i5-7600K, place frequency 3.80 Gc, 4 cores, 4 duds
  • Intel Core i7-7700K, establish frequency 4.20 GHz, 4 cores, 8 threads
  • AMD Ryzen 5 1600X, base relative frequency 3.60 Gigahertz, 6 cores, 12 threads
  • AMD Ryzen 7 1800X, send frequency 3.60 GHz, 8 cores, 16 threads

Why exercise we see this pattern of increasing cores, yet all cores having the same time speed? Why are there no variants with differing clock speeds? For example, two "big" cores and mountain of small cores.

Instead of, tell, four cores at 4.0 GHz (i.e. 4×4 GHz, 16 Gigahertz level bes), how about a CPU with two cores running at 4.0 GHz and iv cores running at 2.0 GHz (i.e. 2×4.0 GHz + 4×2.0 Gigacycle, 16 GHz upper limit)? Would the sec option be A equally moral at single rib workloads, but potentially better at multi-threaded workloads?

I require this as a general question and not specifically with regard to the CPUs listed above or about whatever one specific workload. I am just curious arsenic to wherefore the pattern is what it is.

Wherefore do CPU cores altogether have the same speed as an alternative of several ones?

The Answer

SuperUser subscriber bwDraco has the answer for the States:

This is known as heterogeneous multi-processing (HMP) and is widely adopted by mobile devices. In ARM-based devices which implement big.LITTLE, the processor contains cores with different performance and power profiles, i.e. whatever cores run fast but draw lots of power (faster architecture and/or higher clocks) patc others are energy-efficient just slow (slower architecture and/or lower filaree). This is useful because power usance tends to gain disproportionately as you increase carrying out once you get past a certain point. The estimation hither is to get carrying into action when you need it and battery life when you do not.

On desktop platforms, power uptake is much less of an issue, so this is not truly necessary. Most applications expect each core to have similar performance characteristics, and programming processes for HMP systems is much more complex than scheduling for traditional even multi-processing (SMP) systems (technically, Windows 10 has reenforcement for HMP, but information technology is mainly intended for mobile devices that use Branch big.LITTLE).

Also, most desktop and laptop processors today are not thermally or electrically limited to the taper where or s cores need to run quicker than others, even for short bursts. We hold basically hit a wall along how fast we can score somebody cores, so replacing some cores with slower ones will not admit the odd cores to run faster.

Piece there are few desktop processors that have one or two cores open of running quicker than the others, this capability is currently limited to certain very high-final stage Intel processors (known as Turbo Boost Soap Applied science 3.0) and only involves a slight gain in performance for those cores that seat run faster.

While it is sure as shooting possible to design a time-honored x86 processor with both large, allegretto cores and smaller, slower cores to optimize for to a great extent-threaded workloads, this would add considerable complexness to the processor design and applications are unlikely to properly support it.

Take a conjectural processor with two accelerating Kaby Lake (7th-contemporaries) cores and eight dilatory Goldmont (Particle) cores. You would take over a summate of 10 cores, and intemperately-threaded workloads optimized for this kind of processor may consider a gain in performance and efficiency over a normal quad-core Kaby Lake mainframe. Nonetheless, the divers types of cores have wildly different performance levels, and the retard cores practise non even documentation some of the instructions the blistering cores support, like AVX (Build up avoids this issue by requiring both the big and Small cores to support the same instructions).

Once again, most Windows-based multi-threaded applications assume that every effect has the same or virtually the same level of performance and can execute the same instructions, so this kind of imbalance is likely to result in less-than-ideal performance, peradventure even crashes if it uses instructions non supported by the slower cores. While Intel could modify the slacken cores to summate advanced instruction corroborate so that all cores bottom execute all instruction manual, this would non resolve issues with software support for heterogeneous processors.

A different attack to application design, closer to what you are probably thought process around in your question, would use the GPU for acceleration of highly parallel portions of applications. This can be done exploitation APIs like OpenCL and CUDA. As for a single-scrap solution, AMD promotes hardware support for GPU quickening in its APUs, which combines a traditional CPU and a superior incorporate GPU into the same chip, as Diversified Organization Computer architecture, though this has non seen much industry uptake open-air of few specialized applications.


Have something to add to the explanation? Strike up in the comments. Require to read more answers from some other technical school-savvy Push-down store Exchange users? Look into the full discussion thread here.

Image Credit: Mirko Waltermann (Flickr)


The above article may hold back affiliate golf links, which help support How-To Geek.