PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   效能極限 (https://www.pcdvd.com.tw/forumdisplay.php?f=18)
-   -   Hyper Threading(HT)對影片轉檔的比較 (https://www.pcdvd.com.tw/showthread.php?t=626830)

aronyuan 2006-06-06 10:43 PM

Hyper Threading(HT)對影片轉檔的比較
 
最近手邊有一台Intel Dempsey的伺服器,心血來潮來測試一個在心中疑惑已久的問題? HT(Hyper Threading)技術對吃CPU loading的影片轉檔到底有加速作用還是反效果? :confused:
或許之前已有許多前輩們就此問題測試討論過,會在此時再提出是因為-處理器多核時代來臨!! 國外已有許多的測試指出HT在某此狀況下反而造成效能降低,因此在multi core cpu的狀況下是否還需要要用模擬(HT)的方式來執行系統就值得研究一番~_~
測試內容主要紀錄將HT開啟和關閉時影片轉檔所需的時間,順便比較Divx和Xvid的差異,
小弟的測試平台環境及測試結果如下:
  • 硬體
    CPU: Xeon 5063(Xeon MV3.2) x2
    FSB:1066未超頻
    RAM: FBDIMM 667 1GB x 4
    HDD: U320 SCSI 18G x 1
    Chipset: Intel5000P
  • 軟體
    OS: Win2003Ent SP1
    測試影片:記憶的橡皮擦(2'h24'm18s)
    Encode: Divx6.22, Xvid1.2,VirtualDub1.6.1.4
    壓縮模式:2 pass,採用Snic所提供的"VirtualDub+AviSynth簡易教學"中的方法



測試後發現不論Divx or Xvid,HT關閉的轉檔效能都比HT開啟來的好,其中Divx不論HT開或關皆可充份運用多核心來運算,而Xvid只會用到兩個cpu :confused: (如下圖)

Loading會在多個CPU中自行切換,但同一時間只會用到兩個,Divx則將Loading平均用在每個CPU中,可能是對多執行緒的寫法不同造成~
以往要作這種測試可能要耗費二~三天的時間,拜cpu越來越快之賜,這個測試只花了不到一天的時間 :laugh: 想想真是幸福,後續有機會再將各種有關HT開關之測試提供給各位大大作分享~ :D

118127 2006-06-07 12:51 AM

喔~~~~可以知道程式支援多CPU的程度

還有HT關閉的轉檔效能都比HT開啟來的好 >"<

這報告很有參考價值

HSM 2006-06-07 01:20 AM

個人看法 如果有誤請糾正...

因該是軟體只支援2CPU....
HT On = 單CPU 虛擬成雙CPU (所以只支援雙CPU的軟體 只會...就是使用那HT 開啟的那兩顆)
HT OFF = 單CPU = 單CPU 那就是軟體會直接使用到兩顆實體的CPU來做運算!
更何況樓主 是用XEON 5063 ....(如果沒記錯因該是 LGA771介面 + 雙核心)
1CPU 雙核心 先分成 DIE1 DIE2
當開啟HT 軟體只支援兩顆CPU運算的話 只會用到 1 CPU 的DIE1 而已 因為HT開啟了(DIE1 HT on = 2虛擬CPU)
當HT關閉 軟體只支援兩顆CPU運算的話 會用到 1 CPU 的DIE1 和 DIE2 , 這樣就會直接跑兩顆實體的CPU來運作....
畢竟2個DIE實體運作 當然會比1DIE 開 HT好.....
所以....問題因該是出在 軟體不支援2CPU以上運作....

driftice 2006-06-07 03:35 AM

樓主用的伺服器應該是 Dual CPU * Dual Core,所以一共 4 Core

開了HT之後就是 8 Threading(?),所以最後一張圖可以看到8個CPU使用率紀錄

這種情況下除非軟體支援 8 Threading,否則HT開了不會比較好

angel_ghost 2006-06-07 09:45 AM

樓主的配備實是驚人啊
普通我壓個片子 就是樓主形容的要個幾天...

aronyuan 2006-06-07 02:41 PM

1CPU 雙核心 先分成 DIE1 DIE2
當開啟HT 軟體只支援兩顆CPU運算的話 只會用到 1 CPU 的DIE1 而已 因為HT開啟了(DIE1 HT on = 2虛擬CPU)
當HT關閉 軟體只支援兩顆CPU運算的話 會用到 1 CPU 的DIE1 和 DIE2 , 這樣就會直接跑兩顆實體的CPU來運作....

===========================
的確,在Xvid1.2的changelog也提到其中的修正: New experimental SMP support.
表示在SMP的部份還有再進步的空間。話雖如此,但在轉檔處理時,Xvid還是有用到8個thread,只是固定只選兩個來運算,詳細的說就是thread分成
  • CPU1
    DIE1<HT1,HT2>
    DIE2<HT3,HT4>
  • CPU2
    DIE3<HT5,HT6>
    DIE4<HT7,HT8>
在轉檔時可能是HT1,2 or HT2,3 or HT3,4 在運算,所以嚴格講起來Xvid還是知道有4(8)個thread,只是隨機抓兩個來用~ :agree:

下面是使用支援多執行緒及有針對HT最佳化的MainConcept H.264轉同一隻影片2pass時的狀況

同樣的,也比對了關掉HT後的結果:
HT開啟: 187.33分鐘
HT關閉: 202.4分鐘
MainConcept 在HT開啟比關閉轉檔時間反而快了8%, 因此軟體有沒有對HT作最佳化是有十足影響的~

vandenbroucke 2006-06-07 04:12 PM

Dempsey機器測試,這在PCDVD算首測吧∼

zandar 2006-06-07 09:35 PM

如果用TMPEGenc來轉,不知道會不會完全發揮多核心+ht

f50996 2006-06-07 10:00 PM

HT給小弟我的感覺...就只是不讓CPU使用率達到100%而已。
以單核心CPU執行軟體的時候很容易就會因為100%使用率,讓其他軟體會有遲緩的現象,
HT只是讓其他軟體也同樣可以分配到一些資源而已,所以對效能來說,應該是開了比較慢沒錯,
但用起來不會卡卡的...
多核心才是真正的王道啊~~
(我的950 C1什麼時候才上市啊???)

aronyuan 2006-06-07 10:51 PM

引用:
作者f50996
HT給小弟我的感覺...就只是不讓CPU使用率達到100%而已。
以單核心CPU執行軟體的時候很容易就會因為100%使用率,讓其他軟體會有遲緩的現象,
HT只是讓其他軟體也同樣可以分配到一些資源而已,所以對效能來說,應該是開了比較慢沒錯,
但用起來不會卡卡的...
多核心才是真正的王道啊~~
(我的950 C1什麼時候才上市啊???)

只要不是非平行處理的應用程式,在單核心的時代我想應該或多或少都能享受HT的好處,不過有了多核心CPU後,是否還要開啟HT就是一個問題,小弟測試到目前為止,如果可使用多執行緒的軟體沒有作HT最佳化(像Divx,Xvid), HT就是反效果,Intel自己也承認,HT在非平行處理的應用程式中會增加複雜度、減低效率甚至產生錯誤。嚴格說來我想HT只是單核到多核間過渡時期的產物吧 :think:
多核加上VT(Virtualization Technology)再加上VM(Virtual Machine),嘿嘿~想像一下,感覺像是有一台Mainframe在家裡∼ :D


所有的時間均為GMT +8。 現在的時間是05:23 PM.

vBulletin Version 3.0.1
powered_by_vbulletin 2025。