bwD*_*aco 4 performance ssd cache usb-flash-drive windows-10-v1709
有没有办法使用 USB 3.0 便携式 SSD 来减少写入廉价笔记本电脑的低容量 eMMC 存储?该系统只有 2 GB 的 RAM,因此分页通常是不可避免的,这会导致写入次数比原本已经脆弱的 TLC NAND 发生的写入次数多。
我在这里问的这个问题类似于“使用 Windows 7 最小化对 SSD 磁盘的写入”,我已经采取了其中的一些步骤,但涉及低内存的额外复杂性。
我刚刚购买了联想 Flex 4-1130 二合一笔记本电脑(规格表),这是一款具有 64 GB eMMC 存储和 2 GB 内存的廉价系统。虽然笔记本电脑在技术上可以接受 2.5 英寸、7 毫米 z 高度的 SATA 硬盘驱动器或 SSD,但这将需要拆卸一个全新的系统,该系统并不打算供用户维修(更不用说这违背了花费 230 美元购买系统),所以如果可能的话,我宁愿不这样做。我短暂地打开了底盖,发现里面没有 SATA 连接器。
虽然 64 GB 的存储空间比许多其他此类笔记本电脑(通常只有 32 GB)要好,但它是 TLC NAND,其耐用性较低。低容量也意味着驱动器很容易装满,难以保持写放大,这进一步降低了 eMMC 的耐用性。低容量本身也限制了耐力。总的来说,这意味着 NAND 的使用寿命是这台笔记本电脑(以及其他类似受限的低成本笔记本电脑)的真正问题。
更复杂的是,该系统上只有 2 GB 的 RAM。虽然 Windows 10 具有内存压缩功能,但通常不足以防止发生分页。考虑到 TLC NAND 通常仅适用于大约 750 到 1,500 个写入周期,这让我非常担心写入耐久性。
但是,我有一个 USB 3.0 便携式 SSD,它的性能与内部 eMMC 相似,只是随机写入性能明显更好(根据基准测试)。该驱动器的耐用性不是问题。
更新:一些研究发现底层 eMMC 模块是SanDisk iNAND 7232,部件号为 SDINADF4-64G-H。该数据表(第 17 页)指出,在具有代表性的 Android 工作负载下,此 64 GB 模块的耐久等级为 44 TBW。在 eMMC 模块的整个生命周期内,这大约是 700 次完整驱动器写入,并且允许在三年内每天大约 40 GB,或在五年内每天 24 GB。根据我的经验,在较重的工作负载下进行密集分页可以轻松地在几分钟内将数 GB 的数据写入磁盘,因此超出耐力等级并非不切实际的可能性。此外,在 Windows 下使用会产生比在 Android 下更密集的 I/O 模式(更多随机写入,更多使用接近满状态),这会增加写入放大并降低低于这些额定值的耐用性。
更糟糕的是,最便宜的 Windows 10 上网本通常只有 32 GB 的存储空间,这将耐用性降低了一半,实际上甚至更少,因为较低的容量会增加磁盘利用率,从而增加写入放大。假设设备要使用三年,并且具有相同类型的eMMC模块,这意味着额定续航能力仅为每天20 GB,而现实世界的续航能力可能会因为写入更高而低于每天10 GB放大。因此,eMMC 故障是这类笔记本电脑的一种令人惊讶的常见故障模式,这使得保持写入耐久性的需求尤为迫切。
有没有办法使用这种便携式 SSD 来减少对系统存储的写入或从系统存储转移写入?可能的解决方案包括将其用作分页/交换空间(Windows 不支持),或用作合并和延迟写入 eMMC的回写缓存,减少冗余写入并将小的随机写入转换为更大的顺序写入。
但是,Windows 不支持前者(至少在库存配置中),后者不能使用Romex PrimoCache完成(它不支持为此目的使用持久存储)(编辑:请参阅已接受的答案)。ReadyBoost 不可用,因为基于闪存的存储不会从读取缓存中受益(并且不会解决耐久性问题,因为它不会缓冲、合并或以其他方式减少写入)。
使用 Windows 10 Home 版本 1709 中现有功能的解决方案更可取,但我愿意考虑第三方软件,包括必要时价格合理的商业软件。如果可能,我应该能够快速重新配置系统,以便我可以根据需要轻松卸下驱动器。
Romex PrimoCache(3.0.1 版)的重大更新增加了对使用 L2 缓存(持久存储)层进行写入缓存的支持,包括“延迟写入”功能,该功能可缓冲缓存中的写入并延迟将它们提交到后备存储直到设定的时间段(例如几秒钟)。它也可以配置为在空闲时刷新缓冲区。请注意,这种写缓冲会在系统崩溃时带来数据丢失或损坏的风险,因此它不适合任务关键型应用程序。
我目前正在将该软件与包含较旧 mSATA SSD(我认为这是牺牲品)的 USB 3.1 机箱一起使用,并且发现它可以有效地合并随机写入并减少写入磁盘的数据总量。在发现该软件在 Windows 更新期间设法阻止超过 2 GB 的写入到达 eMMC 后,我继续购买了许可证。
我个人更希望 OEM 在这些笔记本电脑中使用更多 RAM 以减少对耐力不利的分页(即使这会增加成本),并且 Microsoft 进一步优化以减少系统执行的 I/O 量以提高耐力。第三方商业软件应该不会需要得到合理的耐力了存储空间。