a50758 wrote:
很少看到有程式 會讓 i7 8個全跑的...(恕刪)

很常看到阿...
我跑一個GW2,打個中型團戰WVW就80%總CPU使用率了,

然後再轉個檔就100%了。
如果同時轉2~3個檔,連GW2的FPS都會被拖累,
思考下台要換6C12T的了。4C8T真的不夠用了。

KaoYiHsuan wrote:
GHz是越大越好嗎?...(恕刪)


右鍵 > 裝置管理員 > 效能

看到幾格就是代表你的cpu是幾線程



那線程用在哪呢

轉檔

繪圖

國外單機遊戲大作

線程越多效能越強

以現在的標準

四線程是基本,有八線程,12線程更好

1111111111111111111111111111111111
ponjiayulady wrote:
右鍵 > 裝置管理員 > 效能

看到幾格就是代表你的cpu是幾線程



那線程用在哪呢

轉檔

繪圖

國外單機遊戲大作

線程越多效能越強

以現在的標準

四線程是基本,有八線程,12線程更好


根據你這張圖作業系統執行了731條線程Threads 51個處理程序(行程)

只不過作業系統只能同時在極短的時間內執行8條線程

就算你有1萬線程作業系統也能執行 讓你感覺他們是在同時處理的不同工作

因為切換的速度很快只有幾毫秒 人類感覺不出來




ponjiayulady wrote:
右鍵 > 裝置管理員 > 效能

看到幾格就是代表你的cpu是幾線程


我的cpu 8線程而已
但是有16格



Encoding wrote:
我的cpu 8線程而已
但是有16格



今日最猛,頭一次在01看到16格的(破之前12格),納悶這是拿來跑什麼的用途?


Encoding wrote:
我的cpu 8線程而...(恕刪)

不知道那張是你的伺服器?還是網路圖片...
你那張是8核心16線程。

另外想破這張的紀錄很簡單,
買個1366雙路MB約1萬多,
再買2顆L5639約6千,
就有12C24T了。

abc003 wrote:
例如英特爾的haswell架構CORE I7四核心

有時脈頻率3.5Ghz (每秒3.5億次工作頻率)

有15級管線或稱流水線 (一條管線被分程15個處理步驟)

共有6條流水線 同時在處理 (4條生產線)

有4個核心 (四家工廠)

有3級倉庫 大倉庫(遠) 小倉庫(中) 迷你倉庫(近)

那一秒鐘理論上能處理3.5*10^9 *15*6*4 =1260億條指令


這部分不太對

>>>有時脈頻率3.5Ghz (每秒3.5億次工作頻率)
G = 10^9 = 10億次

>>>有15級管線或稱流水線 (一條管線被分程15個處理步驟)
這部分是屬於同時做的,屬於並行作業,不能算在一起。

>>>共有6條流水線 同時在處理 (4條生產線)
>>>有4個核心 (四家工廠)
以i7 為例 4c8t,應該算是 4家工廠8條生產線

>>>那一秒鐘理論上能處理3.5*10^9 *15*6*4 =1260億條指令
理論上只有3.5GHz*8=28GHz
另外Hz 應該不等於指令數

=================================================

CPU 線程只是負責運算而已
yinhell wrote:
這部分不太對

>>>有時脈頻率3.5Ghz (每秒3.5億次工作頻率)
G = 10^9 = 10億次

>>>有15級管線或稱流水線 (一條管線被分程15個處理步驟)
這部分是屬於同時做的,屬於並行作業,不能算在一起。

>>>共有6條流水線 同時在處理 (4條生產線)
>>>有4個核心 (四家工廠)
以i7 為例 4c8t,應該算是 4家工廠8條生產線

>>>那一秒鐘理論上能處理3.5*10^9 *15*6*4 =1260億條指令
理論上只有3.5GHz*8=28GHz
另外Hz 應該不等於指令數

=================================================

CPU 線程只是負責運算而已


Hz就是赫茲是工作頻率 說白話就是CPU工作頻率是每秒35憶次

3.5GCPU代表每一個1hz的時脈週期時間只需要 3.5GHz10^-9次方秒 就是35億分之一秒

35億分之一秒之內能跑的指令不只1條 因為現代CPU都是超純量處理器 和指令管線化處理

而微架構就是會影響1HZ能夠跑的指令條數

80386加入快取記憶體

80486時期就加入了指令管線化

有幾條執行管線跟有幾核心是無關的

例如初代奔騰1 處理器有2條執行管線 的超純量處理器 但是那個時代只有單核心處理器

奔騰2 PRO 加入了亂序執行機構 OoO


上圖叫超純量處理


上圖叫指令管線化 橫軸每一格代表時間周期完成的處理 指令是平行的



從純量到超純量

最簡單的處理器是純量處理器。該處理器執行每個指令通常會在一個時間內操作一個或兩個資料項目。但相較之下,向量處理器執行每個指令能夠同時間運作很多資料項目。而超純量處理器則是將純量與向量處理器混合起來。每個指令處理一個資料項目,但是有多個多餘的處理器內的功能單位能同時處理額外獨立的資料項目。

超純量處理器設計強調增強指令發送的準確度,而且能夠加強很多功能單位的利用度。這樣當單位增加時效能增進就能很明顯。當早期的超純量CPU有兩組ALU與一組FPU的時候,像PowerPC 970較先進的設計就內含四組ALU、二組FPU與一對單指令流多數據流單位。但如果調度器(dispatcher)效率低落,系統的性能將會拖累。

超純量處理器的執行速度通常高於每週期一個指令。但同時處理多個指令不見得就是超純量化,像是管線化CPU與多核心CPU,就是使用不同的方式,來達同時處理多個指令的目的。

而超純量處理器的調度器從記憶體讀取指令,而且決定要將哪些指令能夠並行處理,將這些指令再調度到CPU內重複的功能單元。因而超純量處理器可以想成它有多個平行的管線,這些管線可以平行處理一個執行緒中指令。
http://zh.wikipedia.org/wiki/%E8%B6%85%E7%B4%94%E9%87%8F

指令級並行(Instruction level parallelism,ILP):指令管線化與超純量架構
基本的管線結構示意。假設在最佳情況下,這種管線可以使CPU維持純量的效能。
主條目:指令管線化和超純量

其中一種達成增加平行運算的方法,便是在主要指令完成執行之前,便進行指令提取及解碼。這種最簡易的技術,我們稱為指令管線化,且其被利用在泰半現代的泛用CPU中。透過分解執行通道至離散階段,指令管線化可以兩個以上的指令同時執行。相較於已被淘汰的組合管線,指令管線化不再使用等候指令完全在管線中結束才執行下一指令的技術。

指令管線化產生了下一作業需要前一作業才可完成的可能性。此類狀況又常稱為相依衝突。解決的方法是,對此類的情況增加額外的注意,及在相依衝突發生時延遲一部份的指令。自然地,此種解決方法需要額外的循環,是故指令管線化的處理器比低純量處理器還要複雜。(雖然不是很顯著)一個指令管線化的處理器的效能可能十分接近純量,只需禁止管線推遲即可。(在一個階段需要超過一個以上的循環的指令)
簡單的上純量管線。藉由同時提取和分派兩個指令,能夠在一個時脈循環中完成最多兩個指令。

此外,對於指令管線化的改進啟發了減少CPU元件閒置時間的技術。稱為超純量的設計包括了一條長指令管線化及多個相同的執行單元。上純量管線的分派器同時讀取及透過數個指令;分派器決定指令是否能夠平行執行(同時執行)並分配到可執行的執行單元。大致上來說,一個上純量的CPU能夠同時分派越多的 指令給閒置的執行單元,就能夠完成越多的指令。

上純量CPU結構的設計中,最困難的部份便是創造一個有效率的分派器。分派器必須能夠快速且正確的決定指令是否能夠平行執行,並且讓閒置的執行單元最小化。其需要指令管線化常時的充滿指令流,且提升了在上純量結構中一定數量的CPU快取。其亦催生了危害迴避的技術,如分支預測、投機執行與跨序執行以維持高層次的效能。藉由嘗試預測特定的指令選擇何分支(路徑),CPU能夠最小化整個指令管線等待特定的指令完成的次數。投機執行則是藉著執行部份的指令以得知其是否在整個作業完成後仍被需要而提供適度的效能提升。跨序執行則是重新整理指令執行的命令以降低資料相依。

當不是所有的CPU元件均有上純量效能時,未達上純量的元件效能便會因定序推遲而降低。奔騰的原型有兩個每一時脈循環可接收一個指令的上純量算術邏輯單元,但其浮點算術處理器(Floating Point Unit, FPU)不能在每一時脈循環接收一個指令。因此P5的效能只能算是整數上純量而非浮點上純量。英特爾Pentium結構的下一代P6加入了浮點運算處理器的上純量能力,因此在浮點指令上有顯著的效能提升。

此兩種簡單的管線及上純量設計,均能透過允許單一處理器在一個時鐘迴圈完成一個指令[ipcrate],提升指令管線化的效能。多數的近代CPU設計至少都在上純量以上,且幾乎所有十年內的泛用CPU均達上純量。近年來,一些重視高指令管線化的電腦將其從CPU的硬體移至軟體。超長指令字元(的策略使得一部份的指令管線化成為軟體,減少CPU推動指令管線化的工作量,並降低了CPU的設計複雜度。

http://zh.wikipedia.org/wiki/CPU
微架構

(Microarchitecture)
管線層數

(Pipeline stages)
Sony Cell 23
IBM PowerPC 7 17
IBM Xenon 19
AMD Athlon 10
AMD Athlon XP 11
AMD Athlon 64 12
AMD Phenom 12
AMD Opteron 15
ARM7TDMI(-S) 3
ARM7EJ-S 5
ARM810 5
ARM9TDMI 5
ARM1020E 6
XScale PXA210/PXA250 7
ARM1136J(F)-S 8
ARM1156T2(F)-S 9
ARM Cortex-A5 8
ARM Cortex-A8 13
AVR32 AP7 7
AVR32 UC3 3
DLX 5
Intel P5 (Pentium) 5
Intel P6 (Pentium Pro) 14
Intel P6 (Pentium III) 10
Intel NetBurst (Willamette) 20
Intel NetBurst (Northwood) 20
Intel NetBurst (Prescott) 31
Intel NetBurst (Cedar Mill) 31
Intel Core 14
Intel Atom 16
LatticeMico32 6
R4000 8
StrongARM SA-110 5
SuperH SH2 5
SuperH SH2A 5
SuperH SH4 5
SuperH SH4A 7
UltraSPARC 9
UltraSPARC T1 6
UltraSPARC T2 8
WinChip 4
LC2200 32 bit 5

http://zh.wikipedia.org/wiki/%E6%8C%87%E4%BB%A4%E7%AE%A1%E7%B7%9A%E5%8C%96



如果依造多線程效能來排名 I7 > FX8000 > I5 >= FX6000 > FX4000 >= I3

如果依造單線程效能來排名
I7 > I5 >I3 (Haswall>IVY>SNB) >打樁機FX8>FX6>FX4> K10架構(飛龍2) >推土機FX8>FX6>FX4 > K8 >P4 >=ATOM (CT+架構)

BF3是優化四核心軟體 但是只有在多人連線時有機率跑滿四核100%使用率 8核心無用武之地

CRYSIS3 是優化雙核心~3核心軟體

單機遊戲大作普遍是優化2~4核心 並不一定

線上遊戲MMO 90%以上都是跑單核心 只有 TERA B&S 上古世紀等比較新的大作+WOW 有優化到雙核心

轉檔/解壓縮軟體大多都支援16幾個核心/線程以上

另外P4 和最新的CPU架構相差太大 不管是英特爾AMD 就算只開啟單核心都能贏過

如果P4的每核心每時脈週期效能DMIPS/MHz 是3

那Haswall每1個核心就是10 AMD的打樁機則是6

現在讓我們計算一下 4個10DMIPS/MHz的核心拼的過8個打樁機6 DMIPS/MHz的核心媽?

公式1 多線程效能=核心數*每核心效能 =核心數 * 每核心數每時脈週期效能 * 時脈頻率

Haswall四核心效能4*10=40DIPS 8*6=48 這就是AMD在多線程之上能贏過Haswall四核心的原因

但是英特爾有HT技術 開了之後在每核心之上能在多20%左右多線程效能 4*10*1.2=48

這就是英特爾I7在多線程之上能贏過AMD八核心的原因

注意DMIPS是每秒鐘能處理的百萬條指令數量 除以/Mhz就是每個時脈周期能處理的指令數量

如果這個數值越高代表同樣的時脈之下CPU會有更高的效能

這就是為什麼英特爾同時脈核心數效能較AMD高的原因


不管你的多線程效能在高 如果軟體只支援到多少核心那最多就只看多少核心的效能

例如有8核心去跑只支援四核心的軟體那麼最多只有4核心有使用到

這個狀況下依多線程效能=核心數*每核心效能 英特爾就變成10X4=40 AMD就變成6*4=24

例如有8核心去跑只支援雙核心的軟體那麼最多只有2核心有使用到

這個狀況下依多線程效能=核心數*每核心效能 英特爾就變成10X2=20 AMD就變成6*2=12

例如有8核心去跑只支援單核心的軟體那麼最多只有1核心有使用到

這個狀況下依多線程效能=核心數*每核心效能 英特爾就變成10X1 AMD就變成6*1

但是例如英特爾雙核心VS AMD四核心去跑只支援4核的軟體

那麼最多只有4核心有使用到

這個狀況下依多線程效能=核心數*每核心效能 英特爾就變成10X2=20 AMD就變成6*4=24

結果AMD的四核就贏過英特爾雙核了


但是例如英特爾雙核心VS AMD四核心去跑只支援單核的軟體

那麼最多只有1核心有使用到

這個狀況下依多線程效能=核心數*每核心效能 英特爾就變成10X1=10 AMD就變成6*1=6

結果AMD的四核就輸給英特爾的雙核了


IPS演進時間表
http://zh.wikipedia.org/wiki/%E6%AF%...8C%87%E4%BB%A4
http://en.wikipedia.org/wiki/Instructions_per_second

IPS演進時間表
IPS演進時間表
處理器名稱 Dhrystone MIPS 每時脈周期DMIPS 每核心數每時脈周期DMIPS Year
UNIVAC I 0.002 MIPS at 2.25 MHz 0.0008 0.0008 1951
Intel 4004 0.092 MIPS at 740 kHz
(Not Dhrystone) 0.1 0.1 1971
IBM System/370 model 158-3 1 MIPS at 8.69 MHz 0.1 0.1 1972
Intel 8080 0.330 MIPS at 2 MHz
(Not Dhrystone) 0.165 0.165 1974
MOS Technology 6502 0.500 MIPS at 1 MHz
(Not Dhrystone) 0.5 0.5 1975
VAX-11/780 0.500 MIPS at 5 MHz
1 Dhrystone MIPS 0.2 0.2 1977
Motorola 68000 0.700 MIPS at 8 MHz
(Not Dhrystone) 0.1 0.1 1979
Intel 286 2.66 MIPS at 12.5 MHz 0.2 0.2 1982
Motorola 68020 10 MIPS at 33 MHz 0.303 0.303 1984
Intel 386DX 9.9 MIPS at 33 MHz 0.3 0.3 1985
ARM2 4 MIPS at 8 MHz 0.5 0.5 1986
Motorola 68030 18 MIPS at 50 MHz 0.36 0.36 1987
Motorola 68040 44 MIPS at 40 MHz 1.1 1.1 1990
DEC Alpha 21064 EV4 300 MIPS at 150 MHz 2.7 2.7 1992
Intel 486DX2 54 MIPS at 66 MHz 0.8 0.8 1992
Motorola 68060 110 MIPS at 75 MHz 1.33 1.33 1994
Intel Pentium 188 MIPS at 100 MHz 1.88 1.88 1994
Microchip PIC16F 5 MIPS at 20 MHz 0.25 0.25 1995
Atmel megaAVR 16 MIPS at 16 MHz 1 1 1996
ARM 7500FE 35.9 MIPS at 40 MHz 0.9 0.9 1996
Intel Pentium Pro 541 MIPS at 200 MHz 2.7 2.7 1996
PowerPC 750 525 MIPS at 233 MHz 2.3 2.3 1997
Zilog eZ80 80 MIPS at 50 MHz 1.6 1.6 1999
Intel Pentium III 2,054 MIPS at 600 MHz 3.4 3.4 1999
Freescale MPC8272 760 MIPS at 400 MHz 1.9 1.9 2000
AMD Athlon 3,561 MIPS at 1.2 GHz 3.0 3.0 2000
ARM11 515 MIPS at 412 MHz 1.25 1.25 2002
Silicon Recognition ZISC 78 8,600 MIPS at 33 MHz 260.60 260.60 2000
AMD Athlon XP 2500+ 7,527 MIPS at 1.83 GHz 4.1 4.1 2003
Pentium 4 Extreme Edition 9,726 MIPS at 3.2 GHz 3.0 3.0 2003
MIPS32 4KEc 356 MIPS at 233 MHz 1.5 1.5 2004
Microchip PIC10F 1 MIPS at 4 MHz 0.25 0.25 2004
ARM Cortex-M3 125 MIPS at 100 MHz 1.25 1.25 2004
Nios II 190 MIPS at 165 MHz 1.13 1.13 2004
ARM Cortex-A8 2,000 MIPS at 1.0 GHz 2.0 2.0 2005
VIA C7 1,799 MIPS at 1.3 GHz 1.4 1.4 2005
AMD Athlon FX-57 12,000 MIPS at 2.8 GHz 4.3 4.3 2005
AMD Athlon 64 3800+ X2 (Dual core) 14,564 MIPS at 2.0 GHz 7.3 3.6 2005
Tegra 3 NVIDIA (Quad core Cortex-A9) 13,800 MIPS at 1.5 GHz 9.2 2.5 2011
Xbox360 IBM "Xenon" (Triple core) 19,200 MIPS at 3.2 GHz 6.0 2.0 2005
PS3 Cell BE (PPE only) 10,240 MIPS at 3.2 GHz 3.2 3.2 2006
AMD Athlon FX-60 (Dual core) 18,938 MIPS at 2.6 GHz 7.3 3.6 2006
Intel Core 2 Extreme X6800 (Dual core) 27,079 MIPS at 2.93 GHz 9.2 4.6 2006
Intel Core 2 Extreme QX6700 (Quad core) 49,161 MIPS at 2.66 GHz 18.4 4.6 2006
MIPS32 24K 604 MIPS at 400 MHz 1.51 1.51 2006
ARM Cortex-R4 450 MIPS at 270 MHz 1.66 1.66 2006
MIPS64 20Kc 1,370 MIPS at 600 MHz 2.3 2.3 2007
P.A. Semi PA6T-1682M 8,800 MIPS at 1.8 GHz 4.4 4.4 2007
Intel Core 2 Extreme QX9770 (Quad core) 59,455 MIPS at 3.2 GHz 18.6 4.6 2008
Intel Core i7 920 (Quad core) 82,300 MIPS at 2.66 (Turbo 2.93) GHz 30.9 7.7 2008
Intel Atom N270 (Single core) 3,846 MIPS at 1.6 GHz 2.4 2.4 2008
Qualcomm Scorpion (Cortex A8-like) 2,100 MIPS at 1 GHz 2.1 2.1 2008
ARM Cortex-M0 45 MIPS at 50 MHz 0.9 0.9 2009
ARM Cortex-A9 (Dual core) 7,500 MIPS at 1.5 GHz 5.0 2.5 2009
AMD Phenom II X4 940 Black Edition 42,820 MIPS at 3.0 GHz 14.3 3.5 2009
AMD Phenom II X6 1100T 78,440 MIPS at 3.3 GHz 23.7 3.9 2010
Samsung Exynos 5250 (Cortex-A15-like Dual core) 14,000 MIPS at 2.0 GHz 7.0 3.5 2011
Intel Core i7 Extreme Edition 980X (Hex core) 147,600 MIPS at 3.33 GHz 44.7 7.46 2010
Intel Core i7 2600K 128,300 MIPS at 3.4 GHz 37.7 9.43 2011
Intel Core i7 875K 92,100 MIPS at 2.93 GHz 31.4 7.85 2011
AMD E-350 (Dual core) 10,000 MIPS at 1.6 GHz 6.25 3.125 2011
AMD FX-8150 (Eight core) 108,890 MIPS at 3.6 GHz 30.2 3.78 2011
ARM Cortex A5 1,256 MIPS at 800 MHz 1.57 1.57 2011
ARM Cortex A7 2,850 MIPS at 1.5 GHz 1.9 1.9 2011
Qualcomm Krait (Cortex A15-like, Dual core) 9,900 MIPS at 1.5 GHz 6.6 3.3 2011
Intel Core i7 Extreme Edition 3960X (Hex core) 177,730 MIPS at 3.33 GHz 53.3 8.89 2011
http://home.gamer.com.tw/creationDetail.php?sn=2167519 個人部落格

多工作業細統如Windows 7,可以同時(宏觀上)做很多工作。每個工作又被細分成一或多個更小單位的工作(thread),這些小工作要被排入CPU的線程(thread)裡才能運行。CPU有4線程就表示同時(微觀上)可以有4個小工作被排入CPU一起運行。

以上的每個小工作裡有許多如加減乘除等指令,這些指令一定要送進CPU核心才能執行。如果一核心有兩線程,兩線程會不斷往核心送指令進去,但每一核心一次只能執行一個指令,另一個只能等待。看起來沒什麼好處。但有些時候線程塞給核心指令時會有延誤,如果是一核心一線程,核心只能乾等,若一核心有2線程,核心不必枯等,可以執行由另一個線程塞進來的指令。由此達到加速的目的。
關閉廣告
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!