Re: [閒聊] 雙核打四核 in real?已回收

看板PC_Shopping作者 (shantotto)時間10年前 (2016/05/29 03:42), 10年前編輯推噓13(13023)
留言36則, 11人參與, 最新討論串6/7 (看更多)
※ 引述《wch6858 (天野)》之銘言: : 各CPU World連結底下其實都有單核/多核各用什麼benchmark的測試數據 : 這邊就不一一細看了 : 因為更重點的部分我相信是像這樣的 之前看到蝦友PO的 : https://www.youtube.com/channel/UCoO0rygK4OoYlHAJOBaSk6Q : 分別測試在多款遊戲中 更貼近實際使用情況的比較 : 比較貼近這次主題的i3 vs i5 : i5-4460 vs i3-6300 (原始頻率) : https://www.youtube.com/watch?v=LZmb0y-3hQ4
: i5-4460 vs i3-6300 (i3超到4.3GHz) : https://www.youtube.com/watch?v=LZmb0y-3hQ4
: 說實話 單看這影片的遊戲測試 我已經不知道遊戲上i5的意義何在 : 有點顛覆我之前的觀念 還是說DDR3跟DDR4的差距是如此的有影響力? : 又或者Full HD不夠 特效全開還是有落差? 以 SC2 來說, 3C 還是比 2C 好, 3C 以上沒有太大差別. http://goo.gl/zT1dMo 許多 GAME 多核效能不佳, 有一個原因是被 DirectX 卡住. App 多執行緒寫得再好, 只要有一條執行緒被 driver/kernel 卡住就無法發揮. 微軟有注意到這個問題, DX12 提供非同步運算能力讓顯卡支援, 以後多核會比較有用. http://goo.gl/k3XDWP 至於利用 HyperThreading, 其實程式設計師不是很喜歡. 2C4T 上要利用 HT 代表程式要開出 4 條而非 2 條執行緒. 如果是大量存取記憶體的應用 (比如說 PhotoShop), 4 條對 cache 的汙染會更嚴重. 很多時候運算是慢在存取的 cache miss 而不是 CPU 的加減乘除. 開 4 條比 2 條還慢不是不可能, 開發階段會測看看再決定開幾條. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.163.111.186 ※ 文章網址: https://www.ptt.cc/bbs/PC_Shopping/M.1464464559.A.1DC.html

05/29 03:54, , 1F
已經有測試出來了 只要開高特效(2k以上)多核心cpu
05/29 03:54, 1F

05/29 04:00, , 2F
將近滿載,那DX12跟DX11表現會一致
05/29 04:00, 2F

05/29 04:00, , 3F
,因為沒有多餘的空間可以榨出多的性能,
05/29 04:00, 3F

05/29 04:00, , 4F
相反的若是但我覺得使用720p的畫質,那多
05/29 04:00, 4F

05/29 04:00, , 5F
核cpu負載很低,能被榨出更多的性能,提升約
05/29 04:00, 5F

05/29 04:00, , 6F
25%以上。
05/29 04:00, 6F

05/29 04:00, , 7F
我之前的文章有原文測試,晚點在補上來吧。
05/29 04:00, 7F

05/29 04:12, , 8F
05/29 04:12, 8F

05/29 09:12, , 9F
對程式而言2C4T和4C4T應該是一樣的 但OS就認為不同
05/29 09:12, 9F

05/29 09:12, , 10F
2C4T,軟體就會當作四核心CPU在跑
05/29 09:12, 10F
程式可以偵測幾 C 幾 T, 決定要開 C 條或 T 條執行緒. Windows 內建 API 只能偵測 T https://msdn.microsoft.com/zh-tw/ms724958 偵測 C 比較麻煩, 要下低階 CPUID 指令, Intel/AMD 有提供程式碼供參考. 開 C 條是希望只利用實體核心. 開 T 條是希望利用上邏輯核心, 讓 HyperThreading 作用.

05/29 09:13, , 11F
而OS一定要支援HT,否則分配會出問題
05/29 09:13, 11F

05/29 09:14, , 12F
例如A核心的a1和a2執行序 B核心的b1和b2執行序
05/29 09:14, 12F

05/29 09:14, , 13F
不支援HT的OS,有可能把需要雙核心的軟體分配給
05/29 09:14, 13F

05/29 09:14, , 14F
a1和a2兩個執行序,導致實際上只用一個核心去跑
05/29 09:14, 14F

05/29 09:15, , 15F
支援的OS就會分配ax+bx過去,讓程式用到完整兩核心
05/29 09:15, 15F
這方面倒是不用擔心, Windows 甚至提供 API 讓程式某條執行緒鎖在某顆核心上跑. 不過一般不建議程式自作主張, 因為程式並不知道整個系統的情況. 原則上還是讓 OS 主控, 軟體效能會比較好.

05/29 09:22, , 16F
我想 對OS而言應該是一樣的
05/29 09:22, 16F

05/29 09:22, , 17F
你所謂的"軟體當作4核心在跑"是OS做的事情
05/29 09:22, 17F
※ 編輯: yamiyodare (36.231.122.57), 05/29/2016 10:24:01

05/29 10:13, , 18F
軟體是在OS中跑的吧..
05/29 10:13, 18F

05/29 11:05, , 19F
你貼這個我就有印象了 記得以前X3-435這類東西出來
05/29 11:05, 19F

05/29 11:06, , 20F
的時候我還滿喜歡配的 CP頗高 不過inpai好像掛了
05/29 11:06, 20F

05/29 12:59, , 21F
x86就是這樣 沒辦法從底層直接榨乾硬體效能
05/29 12:59, 21F

05/29 13:29, , 22F
x86怎麼會沒辦法從底層? 用api是給程式設計師方便
05/29 13:29, 22F

05/29 13:29, , 23F
不然你可以在x86實作system call
05/29 13:29, 23F

05/29 15:05, , 24F
有時候我會優先希望用C去跑而不是T
05/29 15:05, 24F

05/29 15:06, , 25F
不曉得是不是因為我跑分表看太多的原因
05/29 15:06, 25F

05/29 15:07, , 26F
跑分表的線條在某些CPU會呈現後半段平緩的向上曲線
05/29 15:07, 26F

05/29 15:09, , 27F
如果所說得從底層炸乾效能是直接存取硬體,DOS表示
05/29 15:09, 27F

05/29 15:14, , 28F
所有的程序都是運作在T上,
05/29 15:14, 28F

05/29 15:14, , 29F
但是可以限制只跑一條管線上的某一條通路,讓它看起
05/29 15:14, 29F

05/29 15:14, , 30F
來像是運作在C上
05/29 15:14, 30F

05/29 15:32, , 31F
u大濕一個被打臉XD
05/29 15:32, 31F

05/31 01:42, , 32F
不是應該是由作業系統去掌控軟硬體資源?由作業系統
05/31 01:42, 32F

05/31 01:42, , 33F
去做調配及調度嗎?
05/31 01:42, 33F

05/31 01:46, , 34F
我覺得還是請神人開文解釋一下,HT技術輙@業系統
05/31 01:46, 34F

05/31 01:46, , 35F
軟體之間的運作方式好了 xDDDDDDDDD
05/31 01:46, 35F

05/31 01:57, , 36F
符號變亂碼惹…
05/31 01:57, 36F
文章代碼(AID): #1NIVIl7S (PC_Shopping)
討論串 (同標題文章)
文章代碼(AID): #1NIVIl7S (PC_Shopping)