[關鍵字]windows 最佳化 page file/PF/swap/分頁檔/虛擬記憶體

 

這篇文章分成兩個部分:

1.首先教大家怎麼知道自己的電腦需要多少虛擬記憶體

2.再來才講應該要如何設定才是最好

網路上多半只會告訴你1.5倍、3倍、0.5倍,但那些其實沒有益處

「虛擬記憶體是要根據實際使用的量身訂作的!」

先知道自己電腦會用到多少虛擬記憶體

 

第一種方法:用 win xp 內建的 monitor 去記錄 page file 的使用量

http://www.twbbs.net.tw/994737.html

一開機就會背景記錄,用很久之後再看就好

可以用 excel 打開看,裡面的數字是「你設定的虛擬記憶體最大值的使用比例」

 

第二種方法:直接抓 PageFileUsageMonitor

適合短期內看虛擬記憶體使用量,google就有

 

重要!不要看工作管理員的「PF使用量」!

原本 PF 就是指 page file 沒有錯

但工作管理員的這個數字實際上是等於右下角的「認可使用」

所謂「認可使用」大約等於「實體記憶體」+「虛擬記憶體(page file)」

我們關心的是「實體記憶體夠嗎?」「不夠的話用了多少虛擬記憶體」

所以從工作管理員上看到的這個值沒意義,請用上述兩種方法測試

 

參考 pczone 以及 mobile01:

http://www.pczone.com.tw/vbb3/archive/t-136560.html

http://www.mobile01.com/topicdetail.php?f=296&t=172582&p=1&cache=0

 

───────────────────────────────────────

 

再來就是設定虛擬記憶體

 

重點一:大小

 

這裡就要用到第一點的觀察,只要比觀察到的尖峰值(peak value)多一些緩衝即可

例如最多只用到 400Mb 的 pagefile,那開個 512Mb 就好

(記得最大與最小要同樣的值,不要讓 windows 調整,效率會差)

如果真的超過呢?通常應該是沒關係

因為 windows 會自己「在實體記憶體裡面模擬虛擬記憶體」!

(上面兩個連結有提到)

 

澄清!固定1.5(0.5)倍的設定方法並不是鐵則!

現在記憶體 2G 以上非常容易,難道要讓硬碟裡面多出一個 3G 的分頁檔?

記憶體非常充足的時候,我們應該反過來將虛擬記憶體減小才對!

網路上因此也出現了「設定成一半」的說法,但我仍覺得不好

破題已經說過:每台電腦根據使用的習慣,有不同的使用量!

 

重點二:位置

不要放在系統硬碟(預設是C:\),甚至獨立一個磁區

參考微軟技術文章:

(中)http://support.microsoft.com/default.aspx?scid=kb;zh-tw;314482

(英)http://support.microsoft.com/?kbid=314482

 

重點三:關閉與否

如果實體記憶體已經大到塞進 page file 還綽綽有餘

那就可以考慮把所有東西都塞進實體記憶體(關閉虛擬記憶體),以做最大利用

登錄檔改以下機碼就可以讓程式(如果有支援)不要用虛擬記憶體

───────────────────────────────────────

; 禁用記憶體頁面調度

; 盡量將所有程式和資料強制性限定在實體記憶體中運行

; 而不使用虛擬記憶體,進而提升系統性能。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\

 Control\Session Manager\Memory Management]

"DisablePagingExecutive"=dword:00000000

;預設值為00000000,改成00000001即可

───────────────────────────────────────

(英)http://support.microsoft.com/?scid=kb;en-us;184419&x=19&y=17

(中,不建議,電腦翻譯很爛)http://support.microsoft.com/kb/184419

以上兩篇微軟的技術文章說到:要有極大的實體記憶體才建議這樣做

網路上很多人說不要亂關,但我也看到一堆人說關了正常

可以確定的是:記憶體不夠請不要這樣做!

(我的筆電記憶體非常充裕,因此是有這樣設定,pagefile 只用了10M左右)

 

重點四:ramdisk

更甚者,如果關掉虛擬記憶體還是剩餘很多實體記憶體

這時候就可以考慮把常用的程式丟到 ramdisk 裡面

ram-disk 顧名思義就是把 ram 當 disk 用!

常見的應用範例就是把 IE/FF3 等瀏覽器的暫存檔或者快取設定在 ramdisk 裡面

如此一來這些程式讀取的時候就是從記憶體裡面拿,而不是慢吞吞的硬碟!

 

 

arrow
arrow
    全站熱搜

    LeavedCorn 發表在 痞客邦 留言(6) 人氣()