看板 PC_Shopping
作者 TRFgee (ASIAGODGEE)
標題 Re: [閒聊] intel 12代之後的大小核到底有沒有調度
時間 Sat Oct 14 13:46:36 2023


※ 引述 《nk11208z》 之銘言:
: → spfy: 我以為是OS負責調度的                      203.121.243.239 10/13 22:31

對OS而言
其實沒有分什麼大小核
一般設計系統就是以core為概念設計
就像是伺服器用的雙路主機板
上面插兩顆八核心cpu
對系統而言也還是一個十六核cpu
如果它的運作效能不如單顆十六核心順暢
那87%是匯流排跟cpu內部設計問題


就像是超線程技術也一樣
OS以為有雙核心(線程)在跑
但底層的單核cpu
只是在每個線程等I/O等等其他空檔的時候
讓這顆cpu輪流跑兩個線程的任務


所以給OS調度反而會增加效能負擔
我猜win11調度機制是配合Intel給的table
只是不是每個遊戲或程式都有設計支持

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.76.104.35 (臺灣)
※ 作者: TRFgee 2023-10-14 13:46:36
※ 文章代碼(AID): #1bAYi-wt (PC_Shopping)
※ 文章網址: https://www.ptt.cc/bbs/PC_Shopping/M.1697262398.A.EB7.html
※ 同主題文章:
Re: [閒聊] intel 12代之後的大小核到底有沒有調度
10-14 13:46 TRFgee
ltytw: 好奇怪喔  為什麼不是程式設計師把軟體寫1F 114.33.46.227 台灣 10/14 13:47
※ 編輯: TRFgee (42.76.104.35 臺灣), 10/14/2023 13:48:12
ltytw: 成n核心  但也只是告知軟體能使用幾個核心而並不是寫死說哪個部份指定core1 哪個部份指定core2
要讓軟體使用哪個核心由AMD/intel寫調度器塞進OS  由OS指派
萌新如我有這個疑問
也就是說   誰要擔這個調度大任?  應用
軟體商還是CPU廠商  還是作業系統廠商?
萌新如我有這個疑問2F 114.33.46.227 台灣 10/14 13:54
onnie: 軟體控制的話 n個軟體就要寫n次
如果改架構可能又要改一次 成本太高11F 1.200.135.162 台灣 10/14 14:19
ILike58: 當然OS廠商去調度啊,只有他有辦法看到全局的需求,只是這些都還是要吃硬體資源,這種大小核的調度應該也只是對非常多工有明顯助益吧,個人使用沒那麼多繁雜工作,看起來這種機制未必是好事。13F 111.71.88.221 台灣 10/14 14:20
atpx: 軟體寫成多執行緒有一堆同步與控制問題
能不做就不做18F 1.163.130.166 台灣 10/14 14:25
ILike58: 這種設計策略用在伺服器上應該很好,甚至排程上直接用最簡單的需求類型去指派大小核,太複雜的排程策略是不是真有那個效益都還是問號,個人需求要的就是快速回應,當然手上有的硬體資源盡可能的砸下去,畢竟你不會在打電玩還要想著服務其他人的需求,通常手上同時進行三項工作就很多了,其中有項吃了九成的資源大概已經是個人對電腦使用的盡的狀況了,這時什麼排程進來也沒意義。20F 111.71.88.221 台灣 10/14 14:32
a1234567289: 是OS調度沒錯  OS當然能知道誰是大核誰是小核.. 最晚2011 ARM引入bigLITTLE的時候 當時Linux kernel已經能透過table調度大小核了30F 101.12.31.113 台灣 10/14 14:32
atpx: 對軟體商來說,多執行緒還會有QA問題,除非能賣錢,不然都是丟給底層處理就好
應用層比較少自找麻煩34F 1.163.130.166 台灣 10/14 14:37
luke72: 給一樓,先去查查為什麼會有OS37F 111.71.10.98 台灣 10/14 15:06
spfy: 高階語言可以寫多執行緒 但很少管核心吧?38F 203.121.243.239 台灣 10/14 15:18
chchwy: 一樓大概沒寫過程式39F 114.34.94.191 台灣 10/14 15:23
a2935373: Server就沒在用大小核的吧?40F 114.32.245.58 台灣 10/14 15:27
aegis43210: server只有超執行緒41F 223.140.175.54 台灣 10/14 15:28
dildoe: 馬農都說threading沒SIMD香,還搞異質threading嗎?XD42F 93.91.80.6 10/14 15:46
ltytw: 樓上某樓對不起  我的確沒寫過多線程的程式只有寫過單線程100行左右的hello world
有請C大賜教44F 114.33.46.227 台灣 10/14 15:53
hn9480412: 那AMD的吃土機呢?47F 42.73.192.189 台灣 10/14 16:25
deflife: linux有eas排程演算法 有興趣可以看看48F 39.15.33.156 台灣 10/14 16:32
SHR4587: 我比較好奇AMD版本的大小核那種狀況會怎49F 220.136.15.129 台灣 10/14 16:51
bhmagic: 你雙路OS不用管NUMA? 寫一些大便
OS不只要管大小核 誰誰共多少快取都要管還有些架構和新指令集都不一樣51F 76.82.233.154 美國 10/14 17:08
aasssdddd: 大小核單核快 多線程是一般的比較快54F 1.34.231.24 台灣 10/14 17:28
birdy590: 呃 原po這個是有分大小核之前的觀念55F 115.43.53.170 台灣 10/14 17:41
kamichu: ???你在說什麼56F 36.232.161.236 台灣 10/14 17:41
birdy590: 開始有區分以後, OS 就必須有對應的設計Intel+Win11 就是靠 Thread Director
本來 Linux 是領先的, 現在變成落後了完整方案不只排程 還包括資源分配 和省電有關的部份 一定是先有硬體再去支援57F 115.43.53.170 台灣 10/14 17:42
sokayha: 感覺就類似筆電的主顯和內顯的調度分配,寫不好的遊戲就有可能自己跑去用內顯
都有符合新規範的遊戲/開發平台之後應該是就不會遇到類似的調度問題62F 106.104.70.198 台灣 10/14 18:04
lc85301: 說到排程器只好 @jserv66F 223.138.47.180 台灣 10/14 18:36
commandoEX: 軟體決定最多有幾個執行緒可以同時跑但是給誰跑是OS決定的
除非你寫死指定哪個核心跑哪個執行緒67F 118.171.131.70 台灣 10/14 19:29
la8day: 不信70F 118.231.217.26 台灣 10/14 19:39
Litfal: 我看你是不懂喔 對稱多cpu os都有numa71F 1.34.131.99 台灣 10/14 19:44
linjrming: 就算沒有大小核也有雙路問題需要OS排程72F 61.230.99.2 台灣 10/14 19:52
birdy590: 前一次大改是為了 SMT, CPU table 必須有辦法區分實體和邏輯處理器的對應
分大小核以後變更複雜 因為沒有標準答案73F 115.43.53.170 台灣 10/14 19:57
friedpig: 13gen以後有直接做CPU理了八
CPU會稍微判斷一下要分到大核還小核
雖然最後用最暴力最有效的做法是前景大核 背景小核 大約87%時間是對的76F 125.228.96.10 台灣 10/14 20:05
SPDY: 就Intel的說法 是會盡可能的向OS提供資訊啦畢竟相較AMD的c核就只是同構縮快取和降時脈玩更大的Intel的玩 是P+E+LP異構在不同晶片所謂Threadirector是內建評分機制給OS看
該機制可以韌體更新 搞不搞得定 實機再看了80F 1.171.209.158 台灣 10/14 20:25
johnjohnlin: 比效能的程式的確要針對架構優化啊,不是總是無關架構的85F 1.34.40.114 台灣 10/14 21:49
peal: OS存在有個最大目的就是分配資源(分配cpu資源)。87F 1.173.43.50 台灣 10/14 22:16
Fezico: 現在玩這種異種核架構不管是i還是a都會遇到同一個問題,怎樣讓os/軟體知道哪顆是大核哪個是小核,對機器來說都一樣是核心。89F 106.64.97.35 台灣 10/14 22:24
SPDY: 必須韌體/OS/軟體全都要更新且之間良好配合然而x86+Win這既是資產也是包袱的相容性...連ARM生態較封閉更替較快也才即將切掉32bit等P+E+LP多重異構甚至跨晶片的實機慢慢調吧92F 1.171.209.158 台灣 10/14 22:37
Fezico: 有暴力解就全調動,不管資源分配也不管設備因素,全核操起來。但使用體感會爛的跟泥漿一樣就是96F 106.64.97.35 台灣 10/14 22:45
SPDY: 全開? 那Intel就失去搞SoC裡設LP核的意義了而且多重異構的IPC落差 也沒辦法全開就解決99F 1.171.209.158 台灣 10/14 22:52
Fezico: arm我記得某個版本搞過這個,結果核炸。101F 39.12.41.21 台灣 10/14 22:58
birdy590: ARM 其實比較簡單 像手機上前景就給大核Windows 也差不多... 像Linux這種就難了哪裡分的出什麼前景背景? 最好程式要求知道哪個大核哪個小核不難啊 加欄位已經問題是知道了以後要怎麼辦 這個有夠複雜102F 115.43.53.170 台灣 10/14 23:04
SPDY: 畢竟手機常見狠狠的乾脆 凍結不在前台的App107F 1.171.209.158 台灣 10/14 23:06
birdy590: 弄不好就是體驗爛到屎 逼人把小核關了跟省電還會連動 想要省電可能得關大核108F 115.43.53.170 台灣 10/14 23:06
SPDY: 而PC跑編碼之類的工作 開瀏覽器打發時間
正事被扔去小核會令人不爽但OS哪懂何謂正事最好的解是軟體能表明自己是正事要最大效能110F 1.171.209.158 台灣 10/14 23:10
Fezico: 這樣搞就是每個軟體都指名要大核惹,這東西神麻煩113F 39.12.41.21 台灣 10/14 23:13
SPDY: 所以又是韌體/OS/軟體都要配套得好的事情了115F 1.171.209.158 台灣 10/14 23:13
hanshsu: https://m.mobile01.com/topicdetail.php?f=296&t=6485684&p=1 感覺m01這篇討論
回答的蠻完整的
https://reurl.cc/K3dkDn 補上短網址116F 111.249.83.197 台灣 10/14 23:33
birdy590: 人人都是VIP~ 那就是沒有VIP120F 115.43.53.170 台灣 10/15 00:07
moon52016: 哪有軟體會報自己不重要…121F 61.231.6.106 台灣 10/15 00:27
commandoEX: 軟體要的資源都是喊多不喊少122F 118.171.131.70 台灣 10/15 00:29
SPDY: 調用硬解的影音播放可以喊少 就問題是肯嗎?最近Intel才秀14代 刻意關P和E核硬解播8K60https://youtu.be/S7U_OVv0un4
影片特地強調 這只使用SoC的那2顆 小小LP核123F 1.171.209.158 台灣 10/15 00:44
kuninaka: 這篇看到第一行就笑了127F 61.227.111.248 台灣 10/15 07:46
Arbin: 奇文共賞128F 223.139.185.92 台灣 10/15 08:51
Glacier319: 照m01那篇的說法 12-13代的小核根
本和arm的大小核不同 只是塞滿湊數
用的 更不用說一個windows要包各種
規格CPU了 客製化的條件不同129F 1.162.115.45 台灣 10/15 10:05
scott260202: 現實沒有課本上講的簡單,別誤導人133F 36.224.4.163 台灣 10/15 13:14
ILike58: 知道哪顆是大核哪顆是小核不難吧,難的是哪個行程該用大核哪個該用小核才難。134F 111.71.88.221 台灣 10/15 16:12
AmigoSin: @jserv136F 111.250.179.122 台灣 10/15 16:24
yymeow: 會有問題都是在指令派發出去之後,實際的執行時間與預測的有差異。好比我們把難的專案給老鳥,簡單的給菜鳥。預計兩者的完成時間應該差不多。結果可能專案難度與預期有差,或是執行因素。結果實際完成時間與預計產生了不小的落差。那剛好又牽涉到資源釋放問題,就變成誰非得停下來等誰。然後就很容易進入worst case了137F 114.37.36.165 台灣 10/15 16:53
dildoe: 有問題請問SW marketing仔不是比較專業嗎?真心不騙!XD145F 93.91.80.6 10/15 18:20
kira925: 這最大的問題就 每個軟體都希望自己最大沒有人要老實147F 220.135.86.145 台灣 10/15 19:18
ekgs: 1F 先去看一下作業系統+計算機組織
多核心 多執行緒 同步問題 affinity ...
太多了149F 61.230.81.169 台灣 10/15 21:59

--
作者 TRFgee 的最新發文:
點此顯示更多發文記錄