在核心數、線程數、主頻、緩存大小相同的情況下,cpu的性能差距從何而來?

在評價cpu性能時,經常關注核心數、線程數、頻率、緩存大小等指標。它們對cpu性能的影響比較容易理解。但實際上兩顆cpu在這些指標完全相同時,性能還可能會有不同。 例如,i7 2760QM和i7 4710HQ均為4核8線程,6M三緩和2.4G主頻,在各項測試中卻大多有10到20個百分點的差距。 請問這些差距從何而來呢?像例子中這兩個cpu,主要是製造工藝(32nm和22nm)以及指令集的區別。我不是很明白它們是怎樣對性能產生影響的,想請知友們解答我的疑惑。


比較CPU,應先是先比架構,再比你列出的這些參數。

i7 2760QM屬於第二代i7,代號Sandy Bridge

i7 4710HQ屬於第四代i7,代號Haswell

首先,這兩個CPU的主頻就不一樣

ARK | Intel? Corei7-4710HQ Processor (6M Cache, up to 3.50 GHz)

2760QM的參數沒找到,但是主頻是2.4 GHz。

集成的顯卡也不一樣,支持的指令集也不同。

所以二者性能肯定有差異。

可能題主是被睿頻參數給迷惑了:

i7 4710HQ的基礎頻率是2.5GHz,睿頻是8/9/9/10,也就是說,如果啟動睿頻,可以是:

四個核心都工作在2.5+0.1*8=3.3GHz

或者三個核心工作在2.5+0.1*9=3.4GHz

或者兩個核心工作在2.5+0.1*9=3.4GHz

或者單個核心工作在2.5+0.1*10=3.5GHz

i7 2760QM的基礎頻率是2.4GHz,睿頻是8/8/10/11,其睿頻狀態是:

四個核心都工作在2.4+0.1*8=3.2GHz

或者三個核心工作在2.4+0.1*8=3.2GHz

或者兩個核心工作在2.4+0.1*10=3.4GHz

或者單個核心工作在2.4+0.1*11=3.5GHz

所以僅僅睿頻一項,差別就很大,這還不算CPU架構、流水線的差別。

睿頻信息:

List of Intel Core i5 microprocessors

List of Intel Core i7 microprocessors

架構的差異是影響CPU性能最關鍵的因素,架構的差異可能是流水線長度不同、某些指令的執行周期不同等等。比如(假設,實際未必)在i7 4710HQ,可能執行一條加法指令需要2個時鐘周期,在i7 2760QM可能就需要3個。那麼就算是二者同頻,執行指令的速度也是不同的。

舉個更直接的例子,同樣頻率下32位CPU和16位CPU肯定性能不同吧。

主頻只是決定CPU的頻率,指令周期和流水線長度才決定CPU真正執行一條指令需要多長時間。

所以,通常情況下,架構越新,CPU的性能越好


其實,架構才是對CPU影響最大的因素。

下面是個相關問題,希望對答主有幫助。

我的知乎回答:64位1.2Ghz的手機處理器和32位2.4Ghz的處理器是不是一樣快? 影響CPU性能的幾大因素排行:架構>主頻>核心數>。。。。。。。… http://www.zhihu.com/question/27994067/answer/40034867


有這麼多決定因素:

# instruction fetch queue size (in insts)

-fetch:ifqsize 4

# extra branch mis-prediction latency

-fetch:mplat 3

# speed of front-end of machine relative to execution core

-fetch:speed 1

# branch predictor type {nottaken|taken|perfect|bimod|2lev|comb}

-bpred 2lev

# bimodal predictor config (&

)

-bpred:bimod 0

# 2-level predictor config (& & & &)

-bpred:2lev 1 4096 8 0

# combining predictor config (&)

-bpred:comb 1024

# return address stack size (0 for no return stack)

-bpred:ras 16

# BTB config (& &)

-bpred:btb 64 4

# speculative predictors update in {ID|WB} (default non-spec)

# -bpred:spec_update &

# instruction decode B/W (insts/cycle)

-decode:width 4

# instruction issue B/W (insts/cycle)

-issue:width 4

# run pipeline with in-order issue

-issue:inorder false

# issue instructions down wrong execution paths

-issue:wrongpath true

# instruction commit B/W (insts/cycle)

-commit:width 4

# register update unit (RUU) size

-ruu:size 32

# load/store queue (LSQ) size

-lsq:size 16

# l1 data cache config, i.e., {&|none}

-cache:dl1 dl1:128:32:4:l

# l1 data cache hit latency (in cycles)

-cache:dl1lat 2

# l2 data cache config, i.e., {&|none}

-cache:dl2 ul2:2048:64:8:l

# l2 data cache hit latency (in cycles)

-cache:dl2lat 4

# l1 inst cache config, i.e., {&|dl1|dl2|none}

-cache:il1 il1:256:32:2:f

# l1 instruction cache hit latency (in cycles)

-cache:il1lat 1

# l2 instruction cache config, i.e., {&|dl2|none}

-cache:il2 dl2

# l2 instruction cache hit latency (in cycles)

-cache:il2lat 4

# flush caches on system calls

-cache:flush false

# convert 64-bit inst addresses to 32-bit inst equivalents

-cache:icompress false

# memory access latency (& &)

-mem:lat 120 20

# memory access bus width (in bytes)

-mem:width 8

# instruction TLB config, i.e., {&|none}

-tlb:itlb itlb:16:4096:4:l

# data TLB config, i.e., {&|none}

-tlb:dtlb dtlb:32:4096:4:l

# inst/data TLB miss latency (in cycles)

-tlb:lat 120

# total number of integer ALU"s available

-res:ialu 4

# total number of integer multiplier/dividers available

-res:imult 2

# total number of memory system ports available (to CPU)

-res:memport 2

# total number of floating point ALU"s available

-res:fpalu 2

# total number of floating point multiplier/dividers available

-res:fpmult 1


推薦閱讀:

最近幾年 Intel 處理器的架構進步不大,是遇到了技術困難,還是 Intel 在有意控制節奏?
在『固態硬碟』(SSD) 之後,下一個可以大幅提升PC性能的硬體技術是什麼呢?
intel cpu頻率是個怎麼回事?尤其是睿頻。
電腦任何情況下是否都應以CPU性能為重?
The New iPad 的 Retina 顯示技術原理似乎並不複雜,為什麼之前別的公司就沒有想到呢?而且 Apple 稱其為一個很大的突破?

TAG:中央處理器CPU | 計算機 | 硬體 | 電腦硬體 |