背景
2块硬盘, 系统放SSD, 软件放机械硬盘.
结果每次开机冷启动 百分浏览器 就很慢, 我测试了一下, 大概需要30秒时间.
之前我用猫眼, 一直以为是猫眼的问题, 结果百分更新后, 装了一堆扩展, 也很慢.
只是每次都是冷启动(开机后第一次启动)速度慢, 之后都是秒启动. 所以拖延症到最近一直懒得折腾.
这几天重启次数多, 所以决定彻底解决这个问题, 重启了好多次, 终于搞清楚原因了:
- 无扩展启动时间20s
- 全扩展启动时间30s
说明扩展的影响不是主要原因. 至于什么GPU硬件加速, 清理缓存, sppedFox 这类的效果根本不明显.
说明, 机械硬盘对浏览器冷启动的影响很大.
所以我就把缓存目录改到SSD, 结果发现冷启动速度没有多大区别
说明, 更改缓存对冷启动的影响不大.
但是, 我不想修改百分的默认位置, 所以找到了一个很牛逼的软件.
prefetch
通过开机预加载指定文件夹, 然后启动软件 的方式, 实现了加速启动.
效果非常明显.
大多数情况下,Windows 的预取机制无法按预期工作。
诚然,它比之前的 Windows 版本有很多巧妙的改进,
但仍然无法进行配置,导致常用软件运行缓慢,
即使是在一些现代大内存硬件上也是如此,例如大于 16 GB 的硬件。假设你的系统内存有 32 GB,那么
还有很多剩余空间可以存放你所有的软件文件和用户数据。
但是 Windows 并不会这样做,所以当你尝试打开软件时,
Windows 总是从磁盘而不是内存中读取数据。
这就是为什么你无法从“预取”机制中受益的原因。针对这种情况创建的预取项目:
它维护一个“包含”和“排除”文件夹列表。
每次预设时间间隔触发时,它会将您的软件和用户数据读入内存,
然后将其丢弃到空内存中。Windows 会检测到此读取行为并将这些数据缓存到内存中,
因此下次您真正运行软件时,将直接从内存中读取软件文件。粗略测试显示,Firefox 安装了大量扩展程序后的性能如下:
启动电脑,等待磁盘停止读取,这表明 Windows 已完成预取。
打开 Firefox 浏览器,加载所有文件需要 26 秒,即可使用。
重启并等待 Windows 再次进行预取,但将此“预取”项目设置为在启动时运行。
打开火狐浏览器,加载需要3秒钟。
这速度真的很快。
使用预取功能的另一个原因是,
Windows 的预取是动态的。你无法控制哪些文件会保留在内存中,
因此在日常使用中,你经常会遇到常用软件缓存未命中的情况,
因为 Windows 会优先将缓存用于其他用途。
即使打开软件,大量的缓存未命中仍然会导致较长的首次访问时间。
预设的循环执行间隔可以定期为你重新加载缓存。
这样一来,你就可以始终流畅地使用文件,就像切黄油一样顺畅。
目前, 我用它来预加载 微信pc版和 百分浏览器.
不过如果加载的文件夹太多, 会影响开机后系统速度.
- 16 GB 系统内存,或者至少准备 4 GB“可用内存”用于缓存。
这个软件初次使用需要修改 prefetch.ini 来指定要预加载的文件夹和要启动的程序.
觉得很好, 分享一下
