如何将SuperFetch缓存放置在SSD上?


11

我正在考虑向我现有的Windows 7安装中添加固态驱动器(SSD)。

金士顿30GB SSD

我知道我可以(并且应该)将页面文件移至SSD

页面文件应该放在SSD上吗?

是。大多数页面文件操作都是小的随机读取或较大的顺序写入,这两种都是SSD能够很好处理的操作类型。

在查看来自数千条迹线的遥测数据并关注页面文件的读取和写入时,我们发现

  • Pagefile.sys读取的页数要比pagefile.sys写入的数多40到1,
  • Pagefile.sys的读取大小通常很小,小于或等于4 KB占67%,小于16 KB占88%。
  • Pagefile.sys的写入量相对较大,大于或等于128 KB的占62%,正好1 MB的占45%。

实际上,给定典型的页面文件引用模式和SSD在这些模式上具有的良好性能特征,几乎没有文件比页面文件更适合放置在SSD上。

我不知道是否可以在固态硬盘上放置SuperFetch缓存(即ReadyBoost缓存)。

我想获得Windows的好处,它能够在相对较小的(例如30GB)固态驱动器上缓存千兆字节的经常访问的数据。这正是SuperFetch + ReadyBoost(或SuperFetch + ReadyDrive)的设计目的。

Windows是否会提供(或让我)将ReadyBoost缓存放置在通过SATA连接的固态闪存驱动器上?

同一个问题的ReadyBoost缓存在ReadyDrive的缓存是,ReadyBoost的缓存不重新启动之间的生存。高速缓存使用每个会话密钥进行加密,从而使其现有内容在引导期间无法使用,而在登录期间无法进行SuperFetch预提取。


更新一

我知道Windows Vista将您限制为只有一个ReadyBoost.sfcache文件(我不知道Windows 7是否删除了该限制):

问:可以将多个设备用于EMD吗?A:不。我们已将Vista限制为每台计算机一个ReadyBoost

问:为什么只有一台设备?答:时间和质量。由于这是该功能的第一个修订版,因此我们决定专注于使单个设备表现出色,而无需管理多个缓存。不过,我们喜欢这个主意,并且正在考虑将来的版本。

我也知道缓存文件的4GB限制是大多数USB记忆棒上使用的FAT文件系统限制 -SSD驱动器将使用NTFS进行格式化:

问:我可用于ReadyBoost的最大闪存数量是多少?
答:ReadyBoost最多可以使用4GB的闪存(原来是压缩的8GB缓存)

问:为什么我不能使用超过4GB的闪存?答:FAT32文件系统将我们的ReadyBoost.sfcache文件限制为4GB

一个可以ReadyBoost的 NTFS卷上的高速缓存是大于4GB的?

更新二

ReadyBoost的缓存进行加密,每启动会话密钥。这意味着缓存必须在每次启动后重新构建,并且不能用于帮助加快启动时间或从登录到可用的延迟。

Windows ReadyDrive技术利用了一些混合硬盘驱动器中包含的非易失性(NV)内存(即闪存)。此闪存缓存可用于帮助Windows引导或更快地从休眠状态恢复。

  • Windows 7是否将内部SSD驱动器用作ReadyBoost / ReadyDrive / SuperFetch缓存?
  • 是否可以使Windows 在不可移动的SSD上存储SuperFetch缓存(即ReadyBoost)?
  • 是否可以不对ReadyBoost缓存进行加密,并且如果这样,Windows 7将在启动时使用该缓存吗?

也可以看看


为什么?将SuperFetch / ReadyBoost / Paging放在SSD上与SSD的用途相反...
Tamara Wijsman

6
想法是让SSD作为更大,更慢,更便宜的驱动器池的动态分层缓存前端。目标是以这种方式利用readyboost / superfetch,以便无论何时发生的事,用户都能获得最常用的[SSD大小]数据量的SSD速度并从中受益。即动态和自我调整)。必须手动在SSD和磁盘之间旋转所需的“快速应用程序”是不可接受的。我也没有这样的想法:我必须拥有足够大的SSD来容纳我所有不常访问的数据。

您是否看到过希捷Momentus XT等混合驱动器?
乔尔·科恩荷恩

Answers:


8

禁用ReadyBoost。将您的SSD用作主驱动器/引导驱动器,和/或确保您的页面文件位于其中。ReadyBoost只是内容的辅助缓冲区-如果您的页面文件足够快,则无需使用ReadyBoost。

即使无法将SSD用作启动驱动器,您仍然可以告诉Windows将SSD用作页面文件。无论哪种方式,都无需使用ReadyBoost。


1
我无法将SSD用作主驱动器/引导驱动器-它不够大。另外,我不想重新安装Windows。再者,这不是我的问题。
伊恩·博伊德

1
@Ian-但是,这是正确的建议。没有理由将SSD用作企业服务器环境之外的启动驱动器,这既浪费钱又束缚自己。您是否真的无法在120GB的分区中将可以正常运行的Windows与主要应用程序一起安装?编辑:也就是说,如果您坚持要浪费这样的驱动器,只需将页面文件放在上面即可。通过抢占式抓取,它的速度将足够快,您甚至都不会错过ReadyBoost功能。
Shinrai 2011年

2
您假设ReadyBoot将要缓存的数据缓存在SSD上。不一定是这样。如果游戏中只有少数文件/文件夹可以从使用SSD上受益,请使用符号链接将其迁移到SSD上。(您的大多数用户个人资料也会放在HD上,例如文档/图片/视频/等等。)
afrazier 2011年

2
@Ian,即使您没有将它作为主驱动器/引导驱动器,您仍然可以指定Windows页面文件的位置。无论哪种方式,一旦使用SSD运行,都无需ReadyBoost :)
Joshua

2
@Ian Boyd-好吧,我希望有人能够回答您的问题(我真的不知道)。显然,我们当中有些人认为,即使有可能,您也应该意识到这是The Wrong Choice™。
Shinrai 2011年

3

事实证明您无法将ReadyBoost缓存放在SSD上。

最初格式化驱动器并为其分配驱动器号时,可以选择在驱动器上放置ReadyBoost缓存。

但是,在随后的重新启动过程中,ReadyBoost驱动程序会在事件日志中报告:

该设备(未知未知)将不会用于ReadyBoost缓存,因为ReadyBoost驱动程序已附加到其卷堆栈。

完整的日志条目:

Log Name:      Microsoft-Windows-ReadyBoost/Operational
Source:        Microsoft-Windows-ReadyBoost
Date:          3/2/2011 10:55:28 ᴩᴍ
Event ID:      1022
Task Category: ReadyBoost
Level:         Information
Keywords:      (16384)
User:          SYSTEM
Computer:      Harpax
Description:   The device (Unknown Unknown) will not be used for a ReadyBoost cache because the ReadyBoost driver is attached to its volume stack.

尽管ReadyBoost对于在旋转盘片上运行的计算机很有用,但ReadyBoost似乎仅限于连接到慢速USB端口的存储设备。


2
是的,据我所读,Readyboost只是为了通过低配置的机器(例如仅具有1 GB RAM的上网本)获得更好的性能。一旦您拥有2GB或更多的RAM,它就毫无用处,实际上可能会使您减速,因为USB驱动器太慢了。如果要提高Windows的速度,请首先使主板的RAM最大化,然后再获得SSD。我发现,即使磁盘旋转,我的Windows 7机器也非常快,只要我有4 GB以上的RAM。
Kibbee 2012年

2

看一下支持英特尔快速存储技术的主板。它允许将SSD用作磁性/主轴硬盘驱动器的缓存。


那可能是个好主意。由于SSD已插入主板中,并且它是“较新的”主板,因此可能可以使用。虽然,我当然希望Windows SuperFetch轻松管理此类工作。
伊恩·博伊德

从那以后我一直在研究它。原来我的主板不支持它。SouthBridge可以,但是主板缺少某种胶水使其启用。
伊恩·博伊德

0

>将SuperFetch缓存(即ReadyBoost缓存)放在固态驱动器上。

http://technet.microsoft.com/zh-cn/magazine/ff356869.aspx

Windows 7使用Windows SuperFetch算法来确定应将哪些文件存储在缓存中。SuperFetch监视用户访问的文件(包括系统文件,应用程序文件和文档),并将这些文件预加载到ReadyBoost缓存中。如果闪存设备是可移动的,则缓存中的所有文件都使用128位AES进行加密,但是硬件制造商可以选择在内部不可移动的ReadyBoost设备上禁用加密。由于ReadyBoost缓存存储文件的副本,因此可以随时删除闪存驱动器,而不会影响计算机,Windows只需从磁盘读取原始文件即可。

>高速缓存使用每个会话密钥进行加密,从而使其现有内容在引导期间无法使用,并且在登录期间无法进行SuperFetch预提取

这里提到有关禁用ReadyBoost的压缩和加密的信息

另外,还有EnableCompressionEnableEncryption的参数,但没有具体说明如何将其添加到注册表或GroupPolicy中以使其保持不变。不知道禁用加密是否可以保留您的SuperFetch。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.