大内存换硬盘速度的方法
什么是缓存,大家都知道,CPU有一级缓存,二级缓存,I系列的甚至有三级缓存,缓存就是为了提高处理速度的,其实,硬盘也有缓存,一般5400转硬盘有8M缓存,7500转的有16M缓存。那么我的机器为什么还是这么慢呢?因为硬盘还是太慢,它跟不上CPU的处理速度,CPU总是要把总线给总线控制器,硬盘把数据传给内存,然后CPU再处理,CPU其实一直在等,时间白白浪费。而机械硬盘没有大缓存,导致速度如此不堪,而我今天要说的就是给硬盘再加一级缓存——二级缓存,而充当二级缓存的是内存。而它的工作原理是什么?硬盘首次读数据把该部分数据全部放到二级缓存(内存)——如果你的二级缓存分配的足够大的话。等你停止了该程序,一会又要再打开的时候,这时将不再会从硬盘读取数据,而是CPU直接用这个硬盘的二级缓存(内存充当)中直接读数据,这样,速度相当明显,CPU不会再分配总线,而是直接通过北桥和内存数据交换,不再走老路—— 南桥-内存-北桥-CPU。
操作方法
- 01
下载:http://www.romexsoftware.com/zh-cn/fancy-cache/download.html这个软件分俩版本一个是针对整个硬盘,一个是针对分区。到底哪个好,其实针对不同的需求,如果你想省事,比如针对机械硬盘,那么用全局硬盘的就行,这样可以把所有分配的内存共享到整个硬盘,不管你读哪个分区的数据,全部会用到你分配的内存。而分区版,你要进行精细的管理,对不容的分区进行不同颗粒度的管理,比如你给C盘分配512M的缓存,如果你读取D盘数据,那么他就不会加速D盘,只有你给D盘分配了512M,它才会加速D盘。而这时你分配了1G,但是可能工作在D盘,而用不了所有内存,这样造成浪费。分区版我建议有SSD的童孩使用。因为我相信你不介意SSD读数据,很介意SSD写数据。而对SSD的管理绝对跟机械硬盘不容,机械硬盘我相信你不介意随便写数据。
- 02
下载完了,开始安装:安装很简单,这里不介绍,其实就是安装嘛,选个你顺眼的目录就行,然后重启,开机后开始菜单
- 03
然后进行设置:机械硬盘版:这个就选整盘版吧,可以有效利用所有内存,如果8G就分上4G来跑cache——够大了了吧~我相信4G能装大多数软件数据的,而根据淘汰规则,基本所有数据很难被淘汰,因为太大了,足够装,根本用不到淘汰最近不用的数据。这里详细介绍下分区版:
- 04
点取你要缓存的盘符,颗粒粒度一般就用4K吧,现在4K对齐已经深入人心了,不管SSD还是机械硬盘我看基本所有人都有对齐的共识。缓存大小分盘而论,我建议,系统盘有512M足够足够了,工具盘我放在了D盘,也给512M,但是我觉得256够足够了,主要俺是地主老财,8G内存用不完,所以就上纲上线往上整。而缓存算法我用默认LFU-R,对于缓存算法,官网上有介绍LRU (Least Recently Used): 最近最少使用调度算法,首先丢弃最近最少被使用的数据。LFU (Least Frequently Used): 最近最不常用调度算法,软件统计数据被使用的频率,使用频率最低的数据首先被丢弃。
- 05
而缓存策略,有只读/只写/读写三种而只写和读写策略的,有延时写入的策略,对于系统盘和工具盘由于对数据敏感,我建议只开只读了,这样不会造成数据不同步。不会造成你设置保存了,结果由于断电、关机等原因造成设置未生效,至于详细参数,后文论述到缓存盘了,再简单介绍一下。而二级缓存,官方有介绍: 二级缓存: 用户可以使用系统未识别内存或闪存盘/SSD固态硬盘作为二级缓存。如前所述,一级缓存有系统内存组成,其读写性能要高于二级缓存,当然二级缓存的读写性能仍要比普通硬盘好。缓存数据首先保存在一级缓存中,当一级缓存满的时候,数据将从一级缓存中转存到二级缓存中。注: 二级缓存可能发送大量的交换数据写入,因此对于SSD/闪存的寿命有较大影响。 MBU (Maximum Block Usage): 此替换算法以提供最大缓存能力为目标。当二级缓存满负载时,二级缓存中的数据会被淘汰替换以便容纳新数据。此算法容易引起一级缓存和二级缓存之间频繁的数据交换。 LBW (Least Block Written): 此算法以最少写入为目标。当二级缓存满负载时,不进行数据替换,即不再接受新数据写入。此算法主要用于SSD/闪存,以避免过多的写入。注: 虽然此时二级缓存不发生数据替换,但一级缓存仍进行数据替换。 如上就是了,注意我勾出来是“考点”二级缓存就是一级缓存放不下时用SSD、闪存、迅盘放数据来达到高速的目的。而二级缓存对于机械硬盘根本没有一点意义,你硬盘那么慢,放二级缓存有什么用,而大伙都很介意SSD写数据,所以二级缓存一般来说根本没必要设置。右边就是性能的监控了:
- 06
对于机械硬盘,我把F盘放游戏,分配了1G内存,这样可以保证游戏在关闭后再打开后能高速启动,以使命召唤8为例,第一次读取一个任务场景,基本需要15秒+的样子,如果你退出游戏,第二次进入游戏同一场景,只需5秒的样子,而这5、6秒基本就是CPU处理数据的停顿时间了。而我为了不对C盘进行频繁读写,专门分了一个盘20G R:作为垃圾集散地,这里的数据不重要,主要放系统的页面文件pagefile,以及浏览器的cache等,这个盘是机械硬盘中的盘,我的设置如下:可以看出,我启用了延时写入,缓存策略不再是SSD C: D:的只读了,而是读写。延时时间600秒(10分钟)共分配512M内存。这样,不仅不需要以前MEMDISK的大量内存放垃圾,还能够在你关机的时候舍弃掉一些数据,因为你可以注意到,我特别勾选了关机时丢弃缓写数据一项。对于装垃圾的盘,数据敏感度不高,所谓的数据其实都是些垃圾数据,往硬盘里可写可不写。系统的pagefile也放到了这个盘,在系统写pagefile的时候也可以起到缓写,而关机就算是内存中的数据没了,照样也没什么影响。而且不影响休眠,因为休眠的那个大文件是被强制的保存在C盘根目录的,我曾经想移走,但是没发现什么方法。这就是所有内容了。大家可以发现,软件未激活,对于激活,最近好像没有什么PJ,有钱的朋友就支援一下软件吧,为了软件产业贡献一下力量吧。对于大多数我这样的穷鬼,非官二代、富二代、各种太子裆精英人士来说,180天够你体验半年了,大不了180天后卸掉重装或格系统,我相信对于大多数的人来说,系统能坚持3个月已经算是牛逼人士了,很多人基本都是一月做一次系统,所以根本不影响软件使用~