MozTW 討論區

各項 Mozilla 相關軟體與技術討論
現在的時間是 2025-08-02, 03:26

所有顯示的時間為 UTC + 8 小時





發表新文章 回覆主題  [ 3 篇文章 ] 
發表人 內容
文章發表於 : 2008-07-25, 15:07 
離線

註冊時間: 2005-01-17, 01:04
文章: 14
昨天做了一些測試,得到一些結果
OS:win vista hp. sp1
測試軟體:官方 Fx 3.0.1、豬腳兄 Fx3.0.1
profile:全新
extension:無

測試目標網頁:yahoo首頁、自己寫的測試網頁內僅含3MB BMP圖片一張

測試方法:
使用同一分頁開啟 yahoo->關閉->開啟->loop
(啟動Fx空白頁面 47.x->開啟 52 ->關閉 50 開啟 52.x)
(應該是記憶體快取到不同資料,yahoo首頁會變)

使用同一分頁開啟 測試網頁->關->開->loop (圖片名稱不隨機變更)
(啟動Fx空白頁面 46.x->開啟 55 ->關閉 52.x ->開啟 56.x)

使用同一分頁開啟 測試網頁->關->開->loop (圖片名稱隨機變更,模擬快取不同檔案)
(啟動Fx空白頁面 47.x->開啟 55 ->關閉 52.x ->開啟 59.x ->關閉 -1~2MB ->開啟 + >4MB)

使用不同分頁,開啟大量 yahoo首頁
(快取量變動不大,每多一個分頁,約多2~3MB)
(關閉分頁後,每一個分頁減少約1~2MB)

使用不同分頁,開啟大量 測試網頁
(快取量以每多一個分頁多3MB,加上分頁占用2~3MB)
(關閉分頁後,每一個分頁減少約1~2MB)
(快取不釋放,超過快取上限,快取依舊增加)

混用分頁(開開關關),開啟網址列連結(沒有匯入書籤,使用剪下貼上)


測試結果:
Fx 在使用單一分頁之時,記憶體回收機制還可以感覺得出來在運作,
不過只要開啟新分頁,新開的分頁,在不使用後,並沒有釋放記憶體,
並且如果設定快取記憶體大小,使用超過了也不會刪除舊有快取,
手動清除快取,並不會看到記憶體釋放的結果,不過在尚未達到容量限制之前,
除了開新分頁會耗用記憶體之外,會優先使用舊有記憶體,
但即使將新分頁都關閉,再使用之下,依舊會稍微增加記憶體使用量

即使啟用了最小化後釋放記憶體,也只不過在縮小當下減少約4MB,
然後慢慢減少個幾十到幾百K,一旦回復視窗,立刻又加上4MB
( 這樣算啥? )
測試過,關閉所有分頁,清除關閉分頁回復序列,清除快取
外出吃飯閒逛,約兩小時,不見改善


由上面可知,如果習慣使用新分頁來瀏覽網際網路的話,
尤其查找一堆資料的時候,快取會被占用,而不會釋放,
導致記憶體占用量與(win)虛擬記憶體占用量只會增加,
此時只有關閉瀏覽器重開才能解決問題


我不曉得是否有哪邊設定有問題,不過這個問題在Fx2就存在了
尤其像我這樣除了指定target外,通通在新分頁開啟瀏覽
會非常耗用資源,並且還不能一直開著
在我工作使用下,大約兩到三小時,記憶體就超過1G

另外請問,有哪個套件是管理config的,他會介紹這個設定做啥用
或者,有哪邊有configs的詳細介紹


sessionstore 功能關閉
回復關閉分頁數量5


回頂端
Mozilla/5.0 (Windows; U; Windows NT 6.0; zh-TW; rv:1.9.0.1) Gecko/2008071812 Firefox/3.0.1 (pigfoot)
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2008-10-04, 00:43 
離線

註冊時間: 2006-08-11, 19:31
文章: 188
FX 吃記憶體跟快取有關係,
一開始吃掉的就不說了,
套件、佈景主題、js 腳本還有零零總總的物件,
這些是基本會吃掉的部份,
之後再增加的記憶體都跟快取有關係。

這邊指的快取是 Memory cache,
Disk cache 不會算在記憶體內,
計算方式大約是 Storage in use + Inactive storage
Storage in use 值是固定的,about:config 裡設定多少最多就吃多少,
而預設 FX 是讓它自己分配大小,
有的人 ram 比較大,如果沒去調整這個數值,
FX 就很容易吃掉大量的記憶體。

而 Inactive storage 指的是比較不活躍的快取,
似乎無法這個調整參數,且跟 Storage in use 分開計算,
即使把 Storage in use 的最大值設定在某個大小,
但這兩個快取加起來還是可以超過所設定的數值,
所以 FX 開啟後,吃掉的記憶體大約就是這兩樣數值的總和。

而 Memory cache 跟 Disk cache 的差異,
搜尋了一陣子沒看到有比較詳細的解釋,
既然有了 Memory 做快取,為何還要用 Disk cache 來儲存資料?
而且裡面的資料似乎較少變動,
會用的時機也只有在啟動 FX 時,
會從裡面調資料出來而已 (如果沒刪除的話),
使用中似乎就完全依賴 Memory cache,
不知道有沒有人知道原因的呢?


回頂端
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.4pre) Gecko/2008092719 GranParadiso/3.0.4pre (ayakawa PGU)
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2008-10-04, 05:20 
離線
頭像

註冊時間: 2003-07-17, 22:16
文章: 941
> 我不曉得是否有哪邊設定有問題,不過這個問題在Fx2就存在了
>即使啟用了最小化後釋放記憶體,也只不過在縮小當下減少約4MB,
>然後慢慢減少個幾十到幾百K,一旦回復視窗,立刻又加上4MB
>( 這樣算啥? )
...看網頁需要把圖片decoder成點陣圖
(記憶體夠用 不要最小化釋放記憶體 這樣會重複decoder)

其他部份先看看再說
viewtopic.php?t=24192&start=30
前面的部份的使用量還沒到FX預設要強迫釋放記憶體的程度
它要怎麼釋放只能說隨它高興,到需要強迫釋放時它就會釋放了
而依據使用方式、安裝addon、FX設定,記憶體佔用會有小出入
長時間使用下FX3會維持在一定值上這一點是不變的
(而這個值正常使用下應該也不會超過300MB?)

後面的部份FX記憶體佔用量超過1G 這是很不正常的,屬於memory leak 請自行找出原因
可能是plugins、addon... 不過你說是空白的profile,這問題會出在哪呢?
也只剩下一種可能 plugins,如果連這都不是的話你可能要找人實際幫忙你診斷一下
我只能說我沒看過FX3出現過這類問題 (當然我也沒用過vista)
而最近一次看到FX吃到接近1GB也是2.0.0.2時的事
你到新聞報導區可以看到各瀏覽器的memory leak的測試
viewtopic.php?t=23123
這個測試結果比較符合我的使用經驗

>而 Inactive storage 指的是比較不活躍的快取,
>似乎無法這個調整參數,且跟 Storage in use 分開計算,
不是無法調整而是inActive跟Active的容量是一模一樣的
>而 Memory cache 跟 Disk cache 的差異,
>搜尋了一陣子沒看到有比較詳細的解釋,
>既然有了 Memory 做快取,為何還要用 Disk cache 來儲存資料?
很簡單裝的東西不一樣
Disk cache裝的是網站上下載的東西(下載管理員下載的東西不含在內)
memory cache裝的是網站圖片decoder出來的點陣圖
然後memory cache裡面有的東西不會重複decoder
>而且裡面的資料似乎較少變動,
因為瀏覽網站重複性大加上沒有比較大的檔案可以大量擠掉其他東西


回頂端
Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.9.0.3pre) Gecko/2008091813 GranParadiso/3.0.3pre (ayakawa PGU)
 個人資料  
引用回覆  
顯示文章 :  排序  
發表新文章 回覆主題  [ 3 篇文章 ] 

所有顯示的時間為 UTC + 8 小時


誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 45 位訪客


不能 在這個版面發表主題
不能 在這個版面回覆主題
不能 在這個版面編輯您的文章
不能 在這個版面刪除您的文章
不能 在這個版面上傳附加檔案

搜尋:
前往 :  
Powered by phpBB® Forum Software © phpBB Group
正體中文語系由 竹貓星球 維護製作
© moztw.org, Mozilla Foundation
MozTW,Mozilla 台灣社群