是否可以利用 CPU 缓存创建虚拟磁盘?

是否可以利用 CPU 缓存创建虚拟磁盘?

我听一个兄弟讲过一个故事,另一个兄弟在 CPU 缓存上安装了小型操作系统,运行速度非常快。Intel® Xeon® 处理器 E7-8870 v3 的缓存为 45MB。是否有一些技术允许将进程缓存用作磁盘?过去存在这样的技术吗?

答案1

CPU 缓存通常会根据需要动态映射到物理 RAM 地址空间。确实有一些平台(CPU 和操作系统的组合)允许锁定 RAM 和缓存之间的特定关联。此外,有些 CPU 具有专用的快速内部存储器,但那是用于嵌入式系统,而不是服务器。

E7-8870v3 有 18 个内核,如果锁定其 45MB 三级缓存的大量空间,那么与自动缓存分配相比,性能可能会下降,除非所有 18 个内核都需要非常快速且重复地执行某项任务和/或所有代码和数据都适合三级缓存。

=> 术语安装在这种情况下毫无意义,因为要么所有内容都可以放入缓存中,那么尝试将任何东西锁定到缓存中就是完全浪费精力,因为这会自动发生,要么它无法放入缓存中,那么显然不可能“安装”它。

如果您仅使用 RAM 文件系统,那么将 CPU 缓存用作磁盘当然是(实际上)可行的。如果有可用的 CPU 缓存,并且 RAM 文件系统被频繁访问,那么 RAM 文件系统的至少一部分可能会自动驻留在 CPU 缓存中。这相当于您所要求的。

但是,再说一次,这个 CPU 有 18 个核心,所以在通常情况下(通常的操作系统和应用程序),这种情况不会发生,而且也没有意义,因为每个核心的 2 级缓存相当小,并且 CPU 只有在可以根据需要使用大量 L3 缓存时才会表现良好。

相关内容