2006/09/09

Harddisk Cache - 活用記憶體

現在記憶體很便宜(相較以前來說),所以大家的DIMM插槽想必插了不只一條吧?
有的人可能是插2條256、2條512,或是2條1G、4條512等,更猛的大概是4條1G或是4條2G吧?
好了,當Windows 2000 / XP / Server 2003 / Vista啟動後,只吃了幾百M的RAM,
剩下的可能鮮少用到,難道要放著爛嗎?有其他更好的選擇。

其一是RAMDisk,這技術在DOS時代就已經存在,原理是將RAM割一塊當成虛擬硬碟使用,
因為利用的是記憶體的頻寬,讀寫速度很快。
目前有硬體RAMDisk (如GIGABYTE i-RAM),
和軟體RAMDisk (如QSoft RAMDisk, SuperSpeed RamDisk Plus或是gavotte RAMDisk)
前者有電池機制,可以實際將記憶體當作硬碟使用,速度比一般硬碟快一些(約130MB/s)
你覺得這就很快?還有更快的。
軟體RAMDisk如免費的gavotte RAMDisk,隨隨便便800MB/s,
假如是DDR2雙通道那更嚇人,我自己的測試是3200MB/s,可惜先天限制不能當成開機用。
用途可以拿來當暫時快取(例如瀏覽器檔案快取、下載檔案快取、Windows TEMP資料夾等)
頻繁讀寫更是需要他,可以減少硬碟磁區的叢集破碎層度。

其二是磁碟讀寫快取,利用記憶體的快速性,分出一塊部分當作硬碟讀寫的緩衝區,
其實現今硬碟本身都有緩衝區的設計,512K, 2MB, 8MB到現在的16MB。
但可以再度利用記憶體的速度來幫助硬碟。軟體方面要錢的SuperSpeed SuperCacheⅡ比較有名。
利用最小128MB的RAM當作緩衝區,將經常使用的檔案預先快取達成加速作用。
這個公司還有一個類似的SuperVolume軟體,但這個需要的記憶體更多,原理也不同。
利用大塊記憶體建立一個磁碟鏡像,從而對此鏡像作讀寫動作,可說是SuperCacheⅡ的進階版。
一般來說一般的使用者只能享受到SuperCacheⅡ,後者除非你的記憶體超大(大過某個磁區),
要不然根本玩不了。假如你要SuperVolume 10GB的C槽,那你就得有10GB的記憶體。
所以大家要玩的話,玩前者就好。

實際試驗原本74MB/s的C槽利用128MB的記憶體當緩衝後,在隨機讀取的項目獲得1400MB/s的高速。
這表示緩衝有作用到的情況將可以大幅提升速度。故建議對系統槽和遊戲槽、影音槽做個緩衝,
這樣讀取檔案時都會快上一些。

2 則留言:

  1. 1GB RAM都被我用光了
    2GB RAM情況應該沒多改善吧 XD

    回覆刪除
  2. 假如你有64GB的RAM就不會這樣說了吧(笑
    總之如果是一般操作的話,很難吃光啊。

    當然某些記憶體管理作不好的程式就先別提了XD

    回覆刪除