為什麼cpu核心的速度都是相同的,而不是不同的?

如果你曾經為一個新的CPU做過很多比較,你可能已經注意到,所有的核心似乎都有速度,而不是不同的組合。為什麼?今天的超級使用者問答帖子回答了一位好奇的讀者的問題。...

為什麼cpu核心的速度都是相同的,而不是不同的?

如果你曾經為一個新的CPU做過很多比較,你可能已經注意到,所有的核心似乎都有速度,而不是不同的組合。為什麼?今天的超級使用者問答帖子回答了一位好奇的讀者的問題。

今天的問答環節是由SuperUser提供的,SuperUser是Stack Exchange的一個分支,是一個由社群驅動的問答網站分組。

問題

超級使用者讀者Jamie想知道為什麼CPU核心的速度都相同而不是不同:

In general, if you are buying a new computer, you would determine which processor to buy based on the expected workload for the computer. Performance in video games tends to be determined by single core speed, whereas applicati*** like video editing are determined by the number of cores. In terms of what is available on the market, all CPUs seem to have roughly the same speed with the main differences being more threads or more cores.

For example:

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

Why do we see this pattern of increasing cores, yet all cores having the same clock speed? Why are there no variants with differing clock speeds? For example, two “big” cores and lots of **all cores.

Instead of, say, four cores at 4.0 GHz (i.e. 4×4 GHz, 16 GHz maximum), how about a CPU with two cores running at 4.0 GHz and four cores running at 2.0 GHz (i.e. 2×4.0 GHz + 4×2.0 GHz, 16 GHz maximum)? Would the second option be as equally good at single threaded workloads, but potentially better at multi-threaded workloads?

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

為什麼CPU核的速度都一樣而不是不同?

答案

超級使用者貢獻者bwDraco為我們提供了答案:

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. some cores run fast but draw lots of power (faster architecture and/or higher clocks) while others are energy-efficient but slow (slower architecture and/or lower clocks). This is useful because power usage tends to increase disproportionately as you increase performance once you get past a certain point. The idea here is to get performance when you need it and battery life when you do not.

On desktop platforms, power c***umption is much less of an issue, so this is not truly necessary. Most applicati*** expect each core to have similar performance characteristics, and sche****ng processes for HMP systems is much more complex than sche****ng for traditional symmetric multi-processing (SMP) systems (technically, Windows 10 has support for HMP, but it is mainly intended for mobile devices that use ARM big.LITTLE).

Also, most desktop and laptop processors today are not thermally or electrically limited to the point where some cores need to run faster than others, even for short bursts. We have basically hit a wall on how fast we can make individual cores, so replacing some cores with slower ones will not allow the remaining cores to run faster.

While there are a few desktop processors that have one or two cores capable of running faster than the others, this capability is currently limited to certain very high-end Intel processors (known as Turbo Boost Max Technology 3.0) and only involves a slight gain in performance for those cores that can run faster.

While it is certainly possible to design a traditional x86 processor with both large, fast cores and **aller, slower cores to optimize for heavily-threaded workloads, this would add c***iderable complexity to the processor design and applicati*** are unlikely to properly support it.

Take a hypothetical processor with two fast Kaby Lake (7th-generation) cores and eight slow Goldmont (Atom) cores. You would have a total of 10 cores, and heavily-threaded workloads optimized for this kind of processor may see a gain in performance and efficiency over a normal quad-core Kaby Lake processor. However, the different types of cores have wildly different performance levels, and the slow cores do not even support some of the instructi*** the fast cores support, like AVX (ARM avoids this issue by requiring both the big and LITTLE cores to support the same instructi***).

Again, most Windows-based multi-threaded applicati*** assume that every core has the same or nearly the same level of performance and can execute the same instructi***, so this kind of asymmetry is likely to result in less-than-ideal performance, perhaps even crashes if it uses instructi*** not supported by the slower cores. While Intel could modify the slow cores to add advanced instruction support so that all cores can execute all instructi***, this would not resolve issues with software support for heterogeneous processors.

A different approach to application design, closer to what you are probably thinking about in your question, would use the GPU for acceleration of highly parallel porti*** of applicati***. This can be done using APIs like OpenCL and CUDA. As for a single-chip solution, AMD promotes hardware support for GPU acceleration in its APUs, which combines a traditional CPU and a high-performance integrated GPU into the same chip, as Heterogeneous System Architecture, though this has not seen much industry uptake outside of a few specialized applicati***.


有什麼要補充的解釋嗎?在評論中發出聲音。想從其他精通技術的Stack Exchange使用者那裡瞭解更多答案嗎?在這裡檢視完整的討論主題。

圖片來源:米爾科·沃爾特曼(Flickr)

  • 發表於 2021-04-07 13:15
  • 閱讀 ( 48 )
  • 分類:網際網路

你可能感興趣的文章

一個神奇的amd threadripper cpu的簡短指南

... 是什麼讓threadripper與眾不同? ...

  • 發佈於 2021-03-13 04:05
  • 閲讀 ( 47 )

你電腦的終極指南:你想知道的一切——等等

...持不變。在本指南中,我們將詳細說明每個元件的作用,為什麼要這樣做,以及為什麼這一點很重要。 ...

  • 發佈於 2021-03-13 07:48
  • 閲讀 ( 50 )

如果英特爾停止生產奔騰g4560,您應該購買哪種處理器?

... 為什麼英特爾奔騰g4560是一顆寶石 ...

  • 發佈於 2021-03-13 13:07
  • 閲讀 ( 62 )

cpu超頻初學者指南

... 我的技術發燒友想說:“為什麼你還沒有超頻你的電腦呢?”然而,有一種方法來瘋狂超頻和各種因素要考慮。 ...

  • 發佈於 2021-03-16 22:41
  • 閲讀 ( 45 )

什麼是cpu?它做什麼?

...中找到的CPU型別。令人沮喪的是,他們幾乎總是不告訴你為什麼這是如此重要。 ...

  • 發佈於 2021-03-17 18:33
  • 閲讀 ( 53 )

為什麼windows提供linux核心會改變一切

... 為什麼我要linux? ...

  • 發佈於 2021-03-20 05:49
  • 閲讀 ( 50 )

什麼是cuda核心,它們如何改進pc遊戲?

... 為什麼cuda核心在遊戲中很重要? ...

  • 發佈於 2021-03-20 21:38
  • 閲讀 ( 48 )

英特爾酷睿i9與i7與i5:您應該購買哪種cpu?

...),每個核心為整體效能增加了更多的處理能力。這就是為什麼你有雙核和四核處理器。 ...

  • 發佈於 2021-03-22 17:56
  • 閲讀 ( 54 )

cpu決戰:amd與英特爾(ryzen與coffee lake比較)

...面是每個**商品牌的頂級主機板晶片組給您的系統帶來了什麼,以及一個簡短的型號概述和一些細節的影象。 ...

  • 發佈於 2021-03-24 16:33
  • 閲讀 ( 59 )

為什麼我的手機比我的電腦慢?智慧手機vs.桌上型電腦速度

你口袋裡的智慧**功能強大。它的功能比大量現已失效的超級計算機,以及一些現代的超級計算機還要強大。另一個現成的事實是,“你的**比1969年美國宇航局的所有**都有更強的計算機能力,當時它把兩名宇航員送上了月球。...

  • 發佈於 2021-03-26 09:35
  • 閲讀 ( 52 )
njx99284
njx99284

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦