LV. 12
GP 14

【心得】解決系統所有CPU核心100% 造成的卡頓問題 在i5-9600K上面實測效果明顯

樓主 賢狼 閒狼 kenshin
GP13 BP-

文章內部的討論原本是在探討為何在頂級配備的CPU上面常常會有CPU使用率不足的問題 (GPU跟CPU使用率都無法到頂)
結論是BF2042的引擎常常會無法辨認hyper-threading (或是Ryzen系的SMT)造成在8c16t的架構下遊戲只使用8條執行緒造成cpu使用率偏低
於是有玩家發現可以藉由在遊戲安裝的資料夾 (BF2042.exe 所在位置) 底下新增一個User.cfg的檔案來修改遊戲對CPU的使用方式  內容如下

Thread.ProcessorCount <實體核心數>
Thread.MaxProcessorCount <希望遊戲使用的最大執行緒數量>
Thread.MinFreeProcessorCount 0
Thread.JobThreadPriority 0

舉例來說 在我的11900k (8c16t)上面我使用的參數就會是
Thread.ProcessorCount 8
Thread.MaxProcessorCount 14
Thread.MinFreeProcessorCount 0
Thread.JobThreadPriority 0

最大執行緒數量使用14而不使用16的原因是為了避免CPU造成的卡頓  以下解釋
BF2042在引入128人戰場後對CPU的需求高到完全不合理的程度  運算能力不足的CPU很可能在遊戲執行時所有的CPU資源全部被BF2042佔走  但windows系統本身以及一些背景運作的服務還是需要運作  因此當它們被喚醒時就會造成BF2042暫時無法使用CPU而形成卡頓
解決方法就是一開始就預留一些CPU資源給背後的其他服務使用就可避免問題

以我弟的9600k (6c6t) 為例  他在修改前執行遊戲時CPU永遠使用率100% 遊戲中每5-10秒就會有強烈的頓挫感
而在User.cfg中加入
Thread.ProcessorCount 6
Thread.MaxProcessorCount 4 (留兩個CPU執行緒給系統使用)
Thread.MinFreeProcessorCount 0
Thread.JobThreadPriority 0

原本的頓挫感便幾乎不再出現

這個方法最主要的後遺症是因為限制了BF2042的最大CPU使用率  最大張數"有可能" 會下降
但在順暢的遊戲體驗面前個人覺得沒有什麼意義就是了
13
-
LV. 28
GP 801
2 樓 雷姆教皇 EMT被狗幹 Ce1991325
GP13 BP-
底下新增一個User.cfg的檔案來修改遊戲對CPU的使用方式

我她媽不是花錢來學習如何製作遊戲 如何改善遊戲 如何他_的_破他_機_小

三千塊的東西,你為了正常開啟遊戲要改各種參數 要設定作業系統要啥小啥小的

Bug都我們玩家修,那是不是帳戶要提供給ea打款進來?
13
-
LV. 38
GP 1k
3 樓 甘蔗青好喝喔~ s1993836
GP0 BP-
試過了,沒什麼效果,優化太差了

3080還是時不時會卡那麼一下,真的不知道是伺服器問題還是優化的問題


0
-
LV. 15
GP 86
4 樓 JasonYCW J12894
GP0 BP-
i7 6700k + GTX1070
Thread.ProcessorCount 4
Thread.MaxProcessorCount 6

用以上這個 user.cfg, 在地圖時 "Render.DrawScreenInfo true" 有顯然 "CPU Core: 8 Job threads: 6"
但工作管理員還是看見 8 threads 100%, 唯一變化是好像是 GPU 用多少 10% 左右
FPS 沒看到太大分別, 還是50至60左右
0
-
LV. 10
GP 41
5 樓 258 Jerry258258
GP0 BP-
沒什麼感覺…
可能沒有正常地被啟動

cpu i7-11700
video GTX1650 Super
RAM 16G 3200Mhz
SSD
Quality low, 1080p

Thread.ProcessorCount 8
Thread.MaxProcessorCount 14
Thread.MinFreeProcessorCount 0
Thread.JobThreadPriority 0

開啟前:



開啟後:
  
0
-
LV. 28
GP 9
6 樓 哥吉拉 Ben2010BH
GP0 BP-
問下我的是CPU是I5-9400F 顯是GTX1660 RAM是16G 照上面9600K的抄可以嗎?
我雖然有SSD但2042沒放在SSD 玩起來會有差嗎?

0
-
LV. 24
GP 59
7 樓 櫻內梨子 wsad52130879
GP0 BP-
請問有人玩萬花筒和遭棄會很頓嗎
0
-
LV. 46
GP 11k
8 樓 〝★﹑小貓ω conan7772
GP1 BP-

作者標示-非商業性

本授權條款允許使用者重製、散布、傳輸以及修改著作,但不得為商業目的之使用。使用時必須按照著作人指定的方式表彰其姓名。

實際上User.cfg在2042上應該是沒有作用的
我和朋友都測試過了
我朋友還特地換英文版測試

要是實際有作用
在遊戲中按`後,直接從控制台輸入指令,不要輸入空格後的
就能看到目前該指令的值
就可以知道是不是真的有因為user.cfg而修改
所以目前要用這些指令都只能每次進遊戲後去手動輸入了...
沒這樣做的都是沒有啟用

比如輸入Thread.MinFreeProcessorCount 後面不帶數字
他就會回傳目前設定的值
其他指令也是這樣




希望有人真的能實驗值有真的照user.cfg改變
不然就都是心理作用罷了
1
-
LV. 28
GP 349
9 樓 GosuDatFuuuu banngtang920
GP0 BP-
user.cfg請設成唯讀

我原本是cpu core:12 (6核12線 bf裡顯示成12) thread :8
加了user.cfg後變成 thread:10

說實話無感
0
-
LV. 43
GP 2k
10 樓 God bless you jimjordan238
GP0 BP-
大部分的遊戲,CPU效能需求都很低,
BF系列的CPU使用率,是我玩的遊戲裡遇過要求最高的,
不只顯示卡要有一定的程度,CPU也不能太差。

原本用i7-3770+980 Ti,
CPU使用率100%GPU卡在50%平均FPS 45
很明顯的瓶頸在CPU。


後來把CPU換成i7-12700K,顯卡沿用980 Ti後,
CPU使用率37%GPU使用率100%平均FPS 119
總算能正常發揮顯示卡的效能了,CPU的需求門檻真的高。




隨手貼個i7-3770和i7-12700K的效能差距。
↓ i7-3770


↓ i7-12700K
0
-
0
未登入的勇者,要加入 11 樓的討論嗎?
板務人員: