PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   系統組件 (https://www.pcdvd.com.tw/forumdisplay.php?f=19)
-   -   雙核心 V.S. 四核心的迷思 (https://www.pcdvd.com.tw/showthread.php?t=718285)

syntech 2007-05-12 06:00 PM

要完整了解恐怕要先了解
multi-process 及 multi-thread 的差別.

就 cpu 而言,
的確是 "同一個時間內只執行一個工作",
但是 os 把會切割工作,
分配每一個process 一個固定的執行期間,
正常情況下,應該時間到了就要把執行權交出來,
可是有些process的程式寫法緣故,
時間到了也交不出來,
就是單cpu很容易發生失去回應的原因.

多cpu 因為有額外的cpu資源可以執行其他process,
所以某一個cpu被某個process佔住了,
還有其他cpu可以處理,
就會感覺執行比較"順".(不是比較"快")

雖然程式並不支援多核心多cpu,
但是還是可以由多核心多cpu獲得執行上的優點.

一個process要能充分利用到多核心多cpu的優點,
則必須把程式由 single-thread 的傳統設計方式改成 multi-thread的方式,
理論上,multi-thread的每個thread會獨立交由各個cpu執行,
一個cpu執行加法100次,兩個cpu一起做就各作50次,四個cpu一起就各25次,
所以執行時間會大幅減少,
但實際上又因為種種因素不能這樣設計,
所以multi-thread 的設計很困難.

對os 而言,
多cpu與多核心是一樣的,
cpu怎麼封裝,os 不會知道.

--
以上所述可能不完全正確,
敬請有能力的網友補充

syntech 2007-05-12 06:10 PM

所以如果process多到 雙cpu雙核心負擔不了,
例如有人說,一邊轉好幾個dvd檔,一邊看***.
single-thread 的轉檔程式一般可以讓一個cpu負載100%,
所以雙cpu最好執行一個轉檔程式,再看一部***,
4cpu 4核心 就可以執行三個轉檔程式,再看一部***,

有些轉檔程式支援多cpu,
所以執行一個就佔滿,
只是多cpu比較容易擠出cpu資源.

這也就是一般人頂多只需要雙核心雙cpu pc,
多核心多cpu沒有必要,也餵不飽的緣故
但是在server應用上,因為同時需要應付成千上百的要求,
所以多使用多cpu多核心.

taris 2007-05-12 06:48 PM

我會建議你買四核心.....
因為以Q6600的時脈速度來說對目前主流軟體速度絕對夠用~
而且從win NT開始微軟就對multi-processor最佳化了
軟體對多執行緒的支援也是非常完善,沒有你所謂的軟體架構不完善的問題
而且如同前面網友所講的,windows是time sharing的工作排程,使用更多核心絕對會得到比較好的response time,更何況現代PC同時會執行太多的工作了.

然後已經有很多遊戲針對多核心的架構最佳化了,像是英雄聯隊,而且XBOX 360和PS3都是超過雙核心的架構,現在遊戲開發一定要針對多核心來做最佳化.

最後以目前來看,不管是用X6800,還是Q6600,對使用者的經驗不會有太大的差別
,但是未來Q6600的效能更會更有機會凸顯出來,更何況用X6800又貴那麼多,怎麼算也是Q6600比較划算....

vxr 2007-05-12 06:52 PM

寫multi-thread出錯..
debug就會吐血了...!!

gtr32ae101 2007-05-12 07:39 PM

請衡量冷氣費用.噴火龍的使用感想...

JasonCTW 2007-05-12 08:35 PM

借題問一下

最近有案子要買Intel 5000P Chip MB搭Xeron 5160 (3G) x 2 或 Xeron 5310(1.6G) x 2
在2003 Server OS會看到4 CPU 或 8 CPU
但跑的程序(process)傻傻的只會抓CPU0來RUN, 要手動以工作管理員將處理程序指派到處理器

請問另外可否寫程式(因為上述程序是外國廠商提供的, 沒Source)
在VS6(VB6,VC6)有無函式(or API)可供使用做CPU指派
還是說要.NET(VB.net,VC.net )才有

JasonCTW 2007-05-12 08:49 PM

引用:
作者JasonCTW
借題問一下

最近有案子要買Intel 5000P Chip MB搭Xeron 5160 (3G) x 2 或 Xeron 5310(1.6G) x 2
在2003 Server OS會看到4 CPU 或 8 CPU
但跑的程序(process)傻傻的只會抓CPU0來RUN, 要手動以工作管理員將處理程序指派到處理器

請問另外可否寫程式(因為上述程序是外國廠商提供的, 沒Source)
在VS6(VB6,VC6)有無函式(or API)可供使用做CPU指派
還是說要.NET(VB.net,VC.net )才有

更正一下四核的是Xeron 5345(2.33G)

kca 2007-05-12 08:59 PM

[目前]的Q版4核效能上的確比雙核好,但是只好一些些,(畢竟是2個core2組在一起的;
就跟pentiumD一樣), 不用特別支援就會比教好

但沒有像Pentium4變成Core2一樣的大進步..現在的四核在效能上的進步有限...就看你的預算了..

有人是願意花大錢去得到那一點點小進步,有些人則是把錢挪去昇級其他地方,畢竟整體效能不是只看CPU而己.

Axel_K 2007-05-13 01:37 AM

我覺得不是很值得現在下手
除非一年內你有非用4核不可的原因
否則一年後再考慮升級或更恰當
(像一些RENDERING軟體,四核比雙核快了約80%
如果是公司拿來營利,那時間絕對是金錢,值得直接上4核)

floyd 2007-05-13 07:31 AM

聽說6月份會出ㄧ顆E6850 請問那和降價後的Q6600哪個較較推薦 :confused: (好像兩個變的價格差不多)


所有的時間均為GMT +8。 現在的時間是07:50 AM.

vBulletin Version 3.0.1
powered_by_vbulletin 2026。