• 5

多工處理

談近廿年來作業系統的基本排程單位『執行緒』,樓上也可以扯到不搭嘎的處理器Hyperthreading/SMT.....那就開聊吧!

先看看AMD也選擇放棄模組架構,回到SMT架構(Intel稱為Hyperthreading):

砍掉重練,下一世代AMD處理器回歸傳統SMT多線程架構



假設一個模組內有執行緒A跟B正在執行,現行FX的模組架構(CMT)最大問題,在於當執行緒A需要百米衝刺能量時,一個模組FX內卻只有上圖紅色框起來的部分可供運用,剩下來的非共享計算單元,即使執行緒B不存在或是執行緒B目前用不到而處於閒置狀態,也不能挪給執行緒A使用,這就是單核性能貧弱的由來。

更好玩是,眾所周知FX的一個模組只有1個FPU,那麼一旦分派到這個模組內執行的2個執行緒都要用到FPU怎麼辦呢?AMD採用最不花腦筋設計的輪流方式:時脈1歸執行緒A使用、時脈2歸執行緒B、時脈3歸執行緒A、時脈4歸執行緒B....以此類推。最好玩的是,就算執行緒B不存在,執行緒A仍然會乖乖的把時脈2/4/6/8...讓出來給空氣用,因此FPU的效能更不彰。詳情請參考AMD的Family 15h Software Optimization Guide。

Hyperthreading(SMT)的想法則是建造強大的核心,當執行緒A需要百米衝刺能量時,整個核心的資源(藍框),幾乎都可以運用上,執行緒B當下用不到的共享計算單元,只要對於執行緒A合用,就可以給執行緒A使用。但是缺點就是當執行緒A跟執行緒B都要百米衝刺時,強大核心的計算單元也可能不夠用,兩個執行緒必須競爭部分資源。


ps.藍框跟紅框僅為示意圖,雖然圖中看起來大小相近,但不代表兩者計算能力就相近,事實上以推土機/打樁機FX跟K10.5相較,同樣執行單一執行緒,紅色部分反而弱於K10.5的一個核心。同樣的,圖中的Module雖然畫得比SMT Core大,但不代表Module的總計算力就比SMT Core強,還得看管線數量跟架構設計功力。最後,圖中標示為推土機,但打樁機跟壓路機也都是CMT架構。

fedora wrote:
超執行緒 - WIK...(恕刪)

所以意思是其他因素都固定之下,2c4t在很多方面沒有辦法和真正的4c4t有相同的處理效率嗎?

Whistle Blow wrote:
單核當然也可以多工,(恕刪)

所以在95之多功基本單位是thread.那麼和core的關係是?
NEIL11834 wrote:
所以在95之多功基本單位是thread.那麼和core的關係是?...(恕刪)

作業系統如Win7/Win8分派給核心執行的基本單元是執行緒。但Win95還不認得多核心處理器。

NEIL11834 wrote:
所以意思是其他因素都固定之下,2c4t在很多方面沒有辦法和真正的4c4t有相同的處理效率嗎?


要看處理器效能而定! 4 thread 代表同時間可接受四個工作!

NEIL11834 wrote:
所以在95之多功基本單位是thread.那麼和core的關係是?


thread 為電腦的最小執行單位,一般的處理器一個 core 就是一個執行緒,特殊的像是

Intel 的 HT 技術,可讓一個 core 擁有2個執行緒!

sun 的 UltraSPARC T1 甚至可以一個 core 擁有4個執行緒!

Whistle Blow 大的文一看就知道真材實料~

他 po 了很多可供參考的資料,建議可以連進去看看!


NEIL11834 wrote:
所以意思是其他因素都固定之下,2c4t在很多方面沒有辦法和真正的4c4t有相同的處理效率嗎?...(恕刪)


那篇文章有提到:
按照Intel的說明,HT技術在不增加物理核心的情況可以帶來10-20%的性能提升。

一般會覺的說: 虛擬2T 效果= 2C(?)

事實上,根據 Intel 官方說明,是提昇 10~20% 而已。

而根據國外玩家實測,則只有提昇 10%。

另外 HT 也有缺點,當執行緒A和B 都搶著工作的時候,會發生打架,反而降低效能。


***********************************************

單一核心如果強,累加更多核心一起工作,就愈強,這是很簡單的數學 1+1=2。

舉例比方說:

Intel:1+1=2 核心

同樣的價錢

AMD 可以買 1+1+1+1=4 核心

具體:Intel G系列 2核心一顆的價錢,可以買 AMD X4。


當然的, AMD 的 1核心效能,並不等於 Intel 的 1核心,假設比較弱是 0.7 好了。

巧妙的地方就是在於:
(0.7)+(0.7)+(0.7)+(0.7)=2.8 ,

AMD 4核心總和效能 2.8,仍是比 Intel 雙核心只有 2 強

由各大測分網站的「多核心整體性能分數」,亦可證明這個情況。

即古人說的:三個臭皮匠,勝過一個諸葛亮。


有錢可以買諸葛亮。

但若想省錢,臭皮匠買多一點,也是不錯的經濟實惠選擇。

假設只能派出一位大將單挑(只支援單核心的軟體),那會是諸葛亮贏。

但如果大將、副將、小兵,有多少派多少(支援多核心運算的軟體),4個臭皮匠,勝過2個諸葛亮。


古代可能還有單挑制度,就像電腦早期有所謂只支援單核心的軟體。

現代的話,很少在單挑了,有多少兵力派出多少,即"人海戰術"。

就像現在電腦不支援多核心平行運算的軟體,屬稀有動物,快絕種了。


不過"人海戰術"也有個缺點:吃飯量大(耗電大)。

多工自然是 4核強,只是耗電量也比 2核 大。

愈多核,吃電就愈大,這是很明顯的道理。總不可能要馬兒肥,又要馬兒不吃草。

系統不需要那麼多核心時或無法彈性運用那麼多核心時怎麼辦?
反過來,系統臨時需要多線程/多核心怎麼辦?

HT就是在成本和效能之間取得平衡,在友站有人提出另類觀點,逆多線程。看能不能把閒置的核心合併成單一核心提供更高的單一核心效能,這就是HT在做的事啊!

哪天手機搞HT也不意外,利用有限資源換取最大效率是HT的精髓,講個不正經的,HT就是拼命壓榨CPU,很血汗,不能善用的多核心,則是養了一堆冗員。
fedora wrote:
AMD 的 1核心效能,並不等於 Intel 的 1核心,假設比較弱是 0.7 好了。
...(恕刪)

整數效能實際上是0.5~0.6,有機會下探破0.5......浮點效能大約只有0.3上下,詳情看上面的解釋(模組內FPU省事輪流用架構),另一方面是因為FPU架構老舊。

AMD打樁機之後壓路機登場, Steamroller 採Radix-8除法器 架構
-----------------------------------------------------------------------------
.....對比Intel的前進的步伐,AMD其實還是慢了許多,因為Intel早在酷睿時代的Penryn架構上就已經採用Radix-16除法器.....
-----------------------------------------------------------------------------
Whistle Blow wrote:
整數效能實際上是0.5~0.6,有機會下探破0.5......浮點效能大約只有0.3上下,...(恕刪)


請問 0.5~0.6 數據是從哪裡得知的?


科學講究實驗證據

上面說的 0.7 是有根據的



AMD 單核心性能輸,約 Intel 的:
76 / 90 = 0.84



AMD 4核心全上的情況下,Intel 2核心輸:
181 / 225 = 0.80



Intel 2核,總體性能只有 AMD 4核的:
1644 / 2373 = 0.69

※ CPU WORD 沒有 X4-860K 的資料,所以取 X4-760K 的來比較。


*****************************************

再看 PASS MARK 的測分:



單一核心 = 3,458 / 2核 = 1,729



單一核心 = 5,664 / 4核心 = 1,416

1,416 / 1,729 = 0.81
(AMD 單一核心,只有 Intel 單一核心的 81% 效能)

但贏在"人海戰術",若軟體支援多核心平行運算,4核全派出去,反而贏。

考慮到誤差什麼的,取 0.7。(其實是低估了)

※ PASS MARK 計算後,與 CPU MARK 的測分,也大致符合。判斷數據是靠譜的,可以參考。


附上價格表:


上述比較,基於同價位的產品,完全公平。


******************************************

補充,附帶一提:

理性分析:為何同樣價錢,多核心整體性能差距那麼大?

因為 X4 沒有內顯,G3420 有內顯,那內顯不是白送的,肯定是算在售價裡面。

也就是說:G系列因為多買了那個內顯,成本增加。不然它如果只有 CPU 的部份,這種性能不該賣那種價錢,應該要更低價。


當然購買也不是這麼盲目,還要考慮到其它因素:

● 1150 腳位有升級空間。FM2+ 腳位,X4 就封頂了(A10 不算的話)。

● 耗電性、散熱(是否需要加塔扇改善風扇噪音過大問題)。


只是單純從「多工」來講,4核是優於2核的(同價位比較)。
fedora wrote:
請問 0.5~0.6...(恕刪)

http://www.mobile01.com/topicdetail.php?f=296&t=4198145&p=4#53632700


除非這年頭您自己買電腦竟然還會配2GB記憶體,不然這類讓2GB記憶體平台跟4GB記憶體平台比較的公平『科學』測試結果,還是您自行參考....畢竟對於2GB記憶體那台,作業系統開機就要吃將近2GB了,還外加跑對系統負擔很重的H.264壓縮,光虛擬記憶體檔案讀寫的拖累就夠嗆了。

Single Process不等於測單核心,您必須先了解"Process"(名詞)在作業系統內的意義,可以找本計算機概論或是作業系統的書來看。

如果要看Passmark這個裡面不太知道測些什麼的『科學』跑分程式,可以順便參考下面的Passmark的顯卡測試排名,AMD高階顯卡排名不高,其可能性有兩種:

1. Passmark的代表性很高 ==> AMD高階顯卡真的表現不好
2. AMD高階顯卡如R9 295X2在實際遊戲下表現並沒那麼糟 ==> Passmark的代表性很差,不具參考價值

多花個幾分鐘思考,你會得到更多啟示
  • 5
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?