之前一直用ramdisk做内存盘,虽然能极大的解决硬盘细碎文件存取,但1.用量大时容量有限,用不满时造成浪费2.实际上还是有比如日志文件之类的写入C盘。


偶然接触到primocache,简直是我的梦中情软,配合ramdisk可以做到全盘无写,硬盘静悄悄。等于是实际上的内存系统,系统各项响应是点到即开。


磁盘0活动,无读写


看了贴吧一堆帖子,好多认知错误,我自己来写一篇我的理解。


首先我们要搞明白,为什么要设置内存盘(ramdisk)和缓存盘(primocache)。

好多帖子目的都没有搞清楚就瞎跟着设置,我看结果是适得其反。


1.内存盘(ramdisk)是把内存划一块空间出来当硬盘用,他速度快,但断电丢失数据,极适合指定各种稀碎数据到这里,比如c盘的temp环境变量,浏览器网页缓存,QQ微信的聊天记录文件等(因为手机会自动接收聊天记录,所以我认为电脑不需要保存)


2.缓存盘(primocache)是把一部分内存强制作为硬盘的预读写盘,硬盘的一切读写操作都会先载入缓存盘,系统再从缓存盘去读写操作,缓存盘满了以后再依据设定的规则写回硬盘,相当于影子系统。假设你缓存盘够大,设置合理,整个系统都运行在内存上,既保护硬盘读写,又能指点如飞。

缓存盘的坏处是断电了容易造成系统错误,因为window是时刻写一些状态文件,写在缓存盘没有及时写到硬盘的话,系统就废了。所以缓存盘给笔记本或者ups用是极合适的。


特别强调:缓存盘(primocache)只有1级缓存是真内存缓存,2级缓存是用ssd存机械硬盘内容,我个人认为与其买个垃圾ssd,不如加钱上内存条,贵也贵不了多少,速度感受和保护效果不可同日而语。非要设置2级缓存的话,我只推荐买20块的傲腾16G。


为什么内存盘(ramdisk)和缓存盘(primocache)结合来用是最优解?
1.只用内存盘,C盘还是会有读写日志读写零碎文件的操作,做不到完全保护。
2.只用缓存盘,一些垃圾文件并没有保存的意义,缓存盘缓存完了以后还是会写回硬盘,浪费空间和写pe


两者结合使用,即可做到完全内存系统,你系统的快慢只取决于网速和性能。


设置篇:
系统环境:工作老电脑,win7,16G内存,C盘128G固态,D盘机械盘随机容量(工作随时拔插)
软件:图吧工具箱自带的魔方内存盘,primocache4.2


电脑默认开机会占用2-3G内存,内存占用到80%会报警内存不足,也即用到12G,所以内存可供分配的就只有10个G左右,取小一点,内存盘和缓存盘各分3G,合起来就是3+3+3,留下来4-6个G给系统和显卡,日常上网打字完全够用。


内存盘设置:
魔方盘相当简单——创建img映像,映像由于创建以后只读不写,所以可以放在固态加速读取,别放机械盘,每次开机读取一遍,磨损机械还卡——选择开机加载,别点关机保存,关机保存要写回数据,失去了细碎文件不保存的意义。


在创建的时候可以在新盘里创建temp文件夹,保存一下,以后就不用动了。我自己创建的是01temp,与系统的temp区分开。


创建的时候,第一次重启会不加载内存盘,打开魔方盘,加载一下,再重启一次,以后每次内存盘就自动加载了,不用打开软件。


然后把系统的环境变量指定到z盘01temp
注意:环境变量就是系统用的临时目录,一般操作的细碎文件都在这里。
一些显卡的配置文件,onedrive日志,和winrar临时解压的东西都在这里。
这意味着你不能直接在压缩包里拖放大于内存盘容量的东西,会提示空间不足,需要先把压缩包解压到硬盘才能使用,如果不懂这是什么意思的请不要指定变量。
另外个人使用中,出现过1次软件读不到温控,部分软件闪屏,onedrive同步错误等问题,取消指定变量或干脆重装系统。


特别注意:

1.请打开系统C盘保护,保障即便断电,电脑也能恢复上一次状态。特别是win10以后系统,win7不更新还稍微好点。

2.可选关闭虚拟内存,因为后面还要开缓存盘,虚拟内存也是先跑缓存盘,如果你内存小到都需要用虚拟内存了,那你这盘那盘都没有太大的意义,去买内存把。


可选将QQ、微信、浏览器缓存全部放到01temp

实测重度办公一天,这些垃圾数据有2个G左右,平时1个G,所以分3个G合理,内存小的分2个G足够。

缺点是第一次开机打开他们需要加载1分钟左右。


QQ
浏览器
微信


缓存盘:

primo cache4.2,之前看到别人说win7不能用,实测win7用得好好的,造谣思码。


缓存命中率99%

想要命中率99%,硬盘纹丝不动吗?

跟我走。


所谓命中率,就是你写进缓存的内容是否被系统读取,
如果系统反复读取同一个内容,则内存加速有效,命中率高,取1缓1,读无数次。
如果系统一直读取硬盘新内容,则内存加速效率低,命中率低,取1缓1读1,取无数次。

所以其实是你的操作习惯影响命中率。
所以游戏反复加载地图会有提升,而不停切视频看会因为要不停缓存一遍而变慢,

我办公只用浏览器和聊天,这2个都缓存到了内存盘,等于是左手倒右手,完全没有硬盘参与,所以缓存命中率奇高。


设置上,只设置1级缓存即可,粒度我试过4 8 16k这3个速度差不多,但4k太耗cpu性能,时不时会卡一下,我个人选了16k。其实默认32k也可以。


不用设置独立读写,对速度没影响,让他自动更合理利用空间。


写入模式智能,加上延时写入60秒,实测好像并不是60s写一次,我一直开着资源监视器,貌似是3G缓存用完了才会写一次。


由于我所有文档和重要数据都是onedrive云同步的,前面又开了c盘保护,所以断电完全不怕。



这里解释几个重要问题:
1.为什么不开2缓?
因为目的是保护硬盘读写和加速系统,2缓是在用ssd存机械,那既然你要这样用,何不直接把内容搬到ssd呢,比如常玩游戏,我看好多人给2缓分64g,128g打lol csgo什么的,那你直接把游戏放在ssd不就行了,开2缓脱裤子放屁还要反复擦写浪费寿命,还要忍受第一次从机械复制到ssd再读取的延迟和卡顿。这样既加重了2个硬盘的读写,又不见得加速游戏,除非你一直不关机。


2.1缓那么点不够用,游戏装不下?
加速缓存不是你想象中的非要将整个游戏装下,他是你读多少缓多少,而且注意能加速的前提是反复读取,第一次读取并不加速,反复加载的模型和地图也就十几m,3-4g 1缓完全够用,豪一点的8-16G可以涵盖绝大部分游戏。


3.为什么还要给系统留几个G但又不开虚拟内存?
1缓实际上是“提前使用”内存,win系统是“按需使用”内存,你还得留点真内存给软件和系统用。
至于虚拟内存,也是把ssd当内存用,实际上这部分的内存操作会在1缓里完成,所以也等于脱裤子放屁。而真到了要用虚拟内存的时候,那说明你该买内存条了。


4.CPU性能差但有内存的能加速吗?

能,特别能,

我有一个win平板,atom 4G,平时用卡死,除了cpu性能差以外,还有寨板普遍用emmc硬盘,速度太慢,cpu一直在等细碎4k。

primo cache分1个g加速,终于不卡了,泪流满面。CPU——缓存——硬盘,有了缓存缓冲,cpu不用等硬盘数据。


目前发现的情况:

1.粒度设太小会加重cpu负担导致卡顿,鼠标丢帧,设大即可。即便设最大,缓存速度也比硬盘快,不用担心,不懂的就默认32k。

2.大量新文件第一次操作会有延迟,这个时间是从硬盘读取到内存的时间,硬盘——缓存——系统,所以某些频繁切换新地图,或者要放各种华丽大招的游戏,建议还是直接放到ssd为好,否则被人爆头砸电脑。

3.正确设置缓存盘后,似乎可以降低整个硬件的温度,比如我CPU日常打游戏峰值82度,开缓存后这几天观察降到了72度,低负载甚至只有68度,风扇都不带转的。猜测是由于cpu不再需要处理硬盘数据而平滑降温。同理,显卡方面帧生成时间也有所下降,画面更平滑更跟手。笔记本用户狂喜。

4.16G分3+3以后,开机内存占用70%,一天下来内存74%,还剩4个G左右,这个场景开着QQ微信2个浏览器12个页面,向日葵、360、onedrive,内存不爆,硬盘不读写,我认为是最佳平衡点,给各位办公人士参考。

家里的游戏机配置是内存盘2,缓存盘4,32G内存套在路上,到了以后可以开2+14,留16G打游戏,美滋滋。