看板 Browsers 關於我們 聯絡資訊
我平時有掛著twitch的習慣 一次開一台 從某個版本開始我掛著實況一陣子後 firefox就會突然有一個程序吃了一堆記憶體跟CPU https://i.imgur.com/3Kp2Akh.png
就算我關掉播放的分頁 也不會放掉 必須要把整個firefox關閉才能解決 我也曾經試過從疑難排解重整firefox 但情況依舊 目前版本是85.0.2 想請問這個問題該怎麼處理呢?? thx -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.37.171.228 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Browsers/M.1613314954.A.F61.html
BDrip: 網址打 about:performance 開Fx的工作管理員看看? 02/14 23:05
JustinYeh88: 感覺是firefox的毛病,某些分頁掛著記憶體會暴漲,32 02/14 23:09
JustinYeh88: G RAM什麼都不做掛個3天就被fx塞滿了 02/14 23:09
JustinYeh88: 後來只能裝auto tab discard來釋放記憶體 02/14 23:09
t7yang: dom.ipc.processCount 去開大一點,UI 只能開到 8 的樣子 02/14 23:43
t7yang: 如果分頁平常開不多 8 應該也是足夠,原理就是讓他跟 GC 02/14 23:43
t7yang: 一樣一個分頁一個處理程序,關掉就會釋放,所以數量少 02/14 23:43
t7yang: 反而容易釋放不了記憶體 02/14 23:44
pabubai: 有裝video downloadhelper嗎 之前看YT實況會被他吃滿 02/15 00:59
legnaleurc: 治標的話不用關掉整個Firefox, 把子程序硬殺掉就好 02/15 10:57
legnaleurc: 被分配到該程序的分頁可以重新整理回來 02/15 10:58
a0193143: 搞不好是add on的鍋,都先停用試試 02/15 11:16
alastor0325: 先打 about:processes 看一下是哪個 process 在吃記 02/15 13:07
alastor0325: 憶體 02/15 13:07
Kenqr: 記憶體現在16G 以前8G 電腦一星期才重開一次 也沒被吃滿過 02/15 18:24
MilchFlasche: 我裝什麼unloader discard都沒用QQ 02/15 19:59
mayuyu: 將dom.ipc.processCount設為-1 02/16 11:43
mayuyu: 每個分頁都會使用獨立的執行程序 02/16 11:43
mayuyu: 只要關閉分頁 馬上就會釋放該分頁所佔用的記憶體 02/16 11:43
mayuyu: 不需要整個firefox重新啟動 02/16 11:43
mayuyu: 缺點是如果同時開啟很多個分頁 會使用很多的記憶體 02/16 11:44
mayuyu: 推薦搭配Auto Tab Discard擴展 02/16 11:44
mayuyu: 定時將暫時不用的分頁卸載 有需要時點擊就會重新載入 02/16 11:44
mayuyu: 這樣既可以關閉分頁便立即釋放記憶體 02/16 11:44
mayuyu: 同時開啟多個分頁放著 也不會吃掉太多的記憶體 02/16 11:45
mayuyu: Auto Tab Discard可以指定分頁網域不卸載 02/16 11:45
mayuyu: 所以掛著term.ptt.cc也不用擔心會斷線 02/16 11:45
mayuyu: about:performance和about:memory底下 02/16 12:25
mayuyu: 可以觀察是哪一個分頁或擴展佔用記憶體 02/16 12:25
mayuyu: dom.ipc.processCount設為-1的話 02/16 12:25
mayuyu: 只要關閉該分頁就可以立即釋放記憶體 02/16 12:26
mayuyu: 搭配Auto Tab Discard定時卸載分頁 02/16 12:26
mayuyu: 由於現在每個分頁都是獨立的執行程序 02/16 12:26
mayuyu: 卸載分頁=砍掉執行程序=立刻釋放資源 02/16 12:26
mayuyu: 所以同時開啟多個分頁放著不動一段時間 02/16 12:26
mayuyu: firefox佔用的記憶體反而會越來越少 02/16 12:27
mayuyu: 使用這個方法要注意browser.newtab.preload 02/16 12:27
mayuyu: 要設定為預設值true 02/16 12:27
mayuyu: 否則開啟新分頁或重新載入分頁的速度會有感變慢 02/16 12:28
BDrip: 這是 about:processes 下面看的到的 "預先分配" 吧? 02/16 12:48
mayuyu: 是的 02/16 13:18
mayuyu: 沒有預先分配的話 每開一個新分頁就要重頭創建一個新程序 02/16 13:19
mayuyu: 會有很明顯的延遲現象 網頁要花一段時間才會顯示出來 02/16 13:19
mayuyu: dom.ipc.processCount開很大或者設為-1的時候 02/16 13:19
mayuyu: 預先分配執行程序的選項一定要打開(預設是開啟的) 02/16 13:19
mayuyu: 否則雖然解決了記憶體佔用不放的問題 02/16 13:19
mayuyu: 但每次開新分頁都會卡卡的 02/16 13:20
mayuyu: 有預先分配的話就會很順 完全感覺不到是重新載入的 02/16 13:20
kuro: processCount 改成 -1 目前看起來滿有效的 感謝 02/16 17:34
cattgirl: mayuyu 大大 我的 Auto Tab Discard 不運作 可否教學 02/18 15:38
mayuyu: 檢查一下browser.tabs.remote.autostart設定是否為true 02/18 19:01
mayuyu: 如果設為false Auto Tab Discard會無法運作 02/18 19:01
cattgirl: 我的 Auto Tab Discard 不會定時檢查 火狐84.0.2 02/18 19:24
cattgirl: 找到原因 套件改用舊版版本 0.3.7 好用 新版可能有BUG 02/18 19:43
t7yang: 哈,原來還有 -1 的用法,我都直接設定一個比較大的數字 02/19 11:27
mayuyu: Firefox的Project Fission快要正式推送了 02/19 13:06
mayuyu: 到時候分頁裡不同網域的frame都會獨立在不同的程序執行 02/19 13:06
mayuyu: 使用的程序數量將會比現在設成-1還要多 02/19 13:06
mayuyu: 為了解決執行程序暴增 浪費的記憶體成本問題 02/19 13:07
mayuyu: Project Fission花了很多時間減少多程序消耗的記憶體 02/19 13:07
mayuyu: 到時候雖然會有很多程序 但是佔用的記憶體會比現在-1還少 02/19 13:07
mayuyu: 不過我覺得如果會開著50個分頁以上的使用者 02/19 13:07
mayuyu: 最好還是安裝Auto Tab Discard 讓它幫你自動或手動卸載 02/19 13:07
mayuyu: 可以再更進一步縮減記憶體的使用量 02/19 13:08
t7yang: fission 目前我的 devEd 還是強制鎖起來不給開 02/19 21:08
t7yang: 不過記憶體就是管他,反正沒用光就好,當然 ATD 還是要裝 02/19 21:09
MilchFlasche: 我用了processCount -1好幾天,記憶體用量沒改善, 02/23 11:38
MilchFlasche: suspend後還是沒釋出記憶體。我現在來裝Auto Tab 02/23 11:38
MilchFlasche: Discard試試,是不是不同擴充套件的問題 02/23 11:38
mayuyu: about:processes看一下是哪個程序佔用記憶體 02/23 13:17
mayuyu: 開-1後 應該每個「網頁(程序56789)」項目底下 02/23 13:17
mayuyu: 只會有一個「分頁」 02/23 13:17
mayuyu: 按右邊的X 關閉分頁或者關閉程序應該就會 02/23 13:17
mayuyu: 立刻釋放記憶體 02/23 13:18
mayuyu: 如果佔用記憶體的不是「網頁」而是其他的程序 02/23 13:18
mayuyu: 例如GPU硬體加速子程序 擴充套件子程序 等等 02/23 13:18
mayuyu: 那麼問題就不在網頁上 關閉網頁也沒用 02/23 13:19
mayuyu: 可能要檢查是哪一個套件造成記憶體佔用 02/23 13:19