Intel Optane(傲腾) M10

Intel Optane(傲腾)

Intel Optane(傲腾)是Intel公司推出的介于DRAM和常规3D-NAND SSD之间的特殊存储,具有非易失性的持久化存储特性,同时又兼具RAM的(接近)性能,最夸张的是具有较NAND Flash有1000倍的耐用性。

但是,由于特殊的PCM(相变化存储器)原理,无法像3D-NAND一样堆叠扩展容量,导致生产大容量成本极高。始终无法在消费市场拓展,且技术迭代进展缓慢,Intel已经放弃Optane(傲腾)技术线路。

备注

我之所以关注Intel Optane(傲腾),是因为在淘宝上,有非常廉价的小规格傲腾m.2存储: 16GB(实际是13.4G)仅需要13块RMB。如此低廉的价格,加上Intel Optane(傲腾)的超高性能和耐用度,使得我这样的电子垃圾佬不由不心动,想要尝试一下(虽然也有很多信息显示这款存储兼容性和可用度非常狭小)。

Intel Optane 的使用方法比较奇特:

  • 如果是新的Optane,那么开箱即用,表现为一个16G的SSD存储一样

  • 但是实际上Intel在OEM市场推广Optane是结合传统的HDD(磁盘)来使用的:

    • 使用Intel的Optane软件工具将Optane和一个HDD配对以后,对系统而言就看不到独立的Optane设备,只看到一块磁盘

    • 配对以后的Optane将无法独立使用,除非再次使用Optane软件工具unpair(我怀疑买到的一些Optane无法识别就是已经pair过的拆机存储,需要unpair才能使用)

    • Intel Optane技术非常类似 Linux Bcache(块缓存) ,但是驱动限定为Windows平台

  • 对于已经pair的Optane,如果安装到USB硬盘盒表现为一个U盘,可能还是可以使用的

  • Optane不是内存(RAM),也无法作为内存使用(来扩展内存容量),它就是一个存储设备

在树莓派上使用Optane(傲腾)

我购买Intel Optane(傲腾) M10的一个目标就是为 树莓派Raspberry Pi 5 在Optane(傲腾)构建swap分区 :

  • 树莓派Raspberry Pi 5 的内存太小(8G),运行大型程序捉胫见肘,通过增加swap来变相提升内存容量

  • Intel Optane(傲腾)极高的随机读写性能以及变态超长的使用寿命,非常适合密集型随机读写

  • 淘宝上售卖的16G规格Intel Optane(傲腾)价格低廉,只需要12RMB

使用小结

理想很丰满,但是现实是 "折腾" :

树莓派Raspberry Pi 5 上,通过 树莓派5 PCIe转M.2 NVMe SSD存储 是可以是可以识别出 M10 并作为NVMe存储来使用的,但是有很多限制(我的验证):

  • 刚购买的Optane盘,似乎需要先通过USB移动硬盘盒(此时会识别为 RTL9210 NVME )连接到主机上,先做一次磁盘分区和格式化。这样似乎就激活了磁盘属性,就能够放到 树莓派Raspberry Pi 5 的 PCIe 转 m.2 NVMe 扩展卡上识别为 nvme0n1

在Intel Optane M10没有创建分区之前的状态
Disk /dev/nvme0n1: 13.41 GiB, 14403239936 bytes, 28131328 sectors
Disk model: INTEL MEMPEI1J016GAL                    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
通过 fdisk 查看到的两个NVMe设备,一个是Intel OPtane M10,另一个是 铠侠KIOXIA EXCERIA G2 NVMe SSD存储 (2T)
Disk /dev/nvme0n1: 13.41 GiB, 14403239936 bytes, 28131328 sectors
Disk model: INTEL MEMPEI1J016GAL                    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device         Boot Start      End  Sectors  Size Id Type
/dev/nvme0n1p1       2048 28131294 28129247 13.4G  c W95 FAT32 (LBA)


Disk /dev/nvme1n1: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: KIOXIA-EXCERIA G2 SSD                   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x57a11afa

Device         Boot      Start        End    Sectors   Size Id Type
/dev/nvme1n1p1            8192    1056767    1048576   512M  c W95 FAT32 (LBA)
/dev/nvme1n1p2         1056768  124735487  123678720    59G 83 Linux
/dev/nvme1n1p3       124735488 2272219135 2147483648     1T 83 Linux
/dev/nvme1n1p4      2272219136 3907029167 1634810032 779.5G 83 Linux
  • 当把 Intel Optane M10 放到USB硬盘转接盒中,则会识别为 /dev/sdb 设备,两种规格都可以正常使用,就好像一个U盘

  • 非常奇怪的经验:

    • 单NVMe转接卡 较适合安装Intel Optane(傲腾) M10,根据我的实测经验和树莓派论坛帖子综合,Optane(傲腾)可能不能作为常规启动NVMe,但是启动后将其作为数据存储盘使用没有问题

    • 2042 规格的 Intel Optane M10 可以在 双NVMe转接卡 上使用(内置 PCIe bifurcation )

    • 但是 2080 规格 Intel Optane M10 在 双NVMe转接卡 上不能识别,似乎;但是同样这个 2080 规格,在 单NVMe转接卡 上却能正常识别是使用

    • 识别不稳定:

      • 我一共购买了4快 2042 规格的 Intel Optane M10,其中有2快能够在 双NVMe转接卡 上使用,另外2快始终不能识别

      • 能够识别使用的 2042 规格Intel Optane M10也存在问题: 启动树莓派的时候,有时候能识别,有时候又完全看不到该 NVMe存储 设备( lspci 也看不到)

        • 如果启动 树莓派Raspberry Pi 5 时能够 幸运 识别出Optane,则 lspci 可以看到 0000:04:00.0 Non-Volatile memory controller: Intel Corporation NVMe Optane Memory Series ,之后使用就非常稳定,性能极佳

        • 在淘宝上看到 双NVMe转接卡 说明中提到(虽然不同品牌但是实际使用的都是 ASM1182e PCIe Switch芯片实现 PCIe bifurcation ):

          • 树莓派Raspberry Pi 5 的PCIe只有 1X ,而且经过扩展后只支持Gen 2模式,所以功耗会降低至额定参数的1/3。

          • 如果SSD上标记 3.3V 2.5A,实际从5V侧测量峰值也仅仅500mA多,两个SSD则峰值电流为 0.75A

        • 由于上述淘宝的产品说明,我推测是因为 双NVMe转接卡单NVMe转接卡 电流更低,导致无法满足 Intel Optane(傲腾) 正常工作(在树莓派论坛上用户提到Optane虽然不能用作启动盘但是从SD卡启动后就可以正常使用,很可能他们使用的都是 NVMe转接卡)

      • 我想到 树莓派5超频 会配置较高一些的电压以便能够提供更高的功率支持,或许也能同时解决 Intel Optane(傲腾) 识别的问题 -- 实践经验如下:

        • 实施 树莓派5超频 之后,虽然没有百分百解决 树莓派Raspberry Pi 5 启动识别Optane的问题,但是我观察明显好转,大多数情况下启动时能够识别Optane

        • 只要识别了 Optane ,则启动后使用就没有任何问题,性能极佳

        • 如果偶然没有正确识别Optane,则关机以后,过一会再开机基本上都识别

我还没有在Intel架构的服务器上测试,可能测试情况会和 ARM 架构不同:

  • Intel官方资料是说Optane(傲腾)只支持X86环境和Windows,不过我估计那是因为商业策略导致Intel只开发X86平台Windows的存储加速技术(因为傲腾就是Intel用于存储加速的技术线路),实际上作为通用的NVMe接口存储,可能是 ARM 架构也支持的(至少我验证能够正常作为NVMe SSD存储使用

  • 我怀疑是Intel做了技术限制(非常"愚蠢"的技术线路),强制每个HDD存储只能使用一块Optane(傲腾)存储进行加速,我怀疑是这个原因导致无法将2块Optane连接到一个PCIe接口上。目前测试这个限制打消了我使用多块M10构建一个简单存储(实验环境)的念头;也使得我想用M10为树莓派的NVMe存储加速的愿望破灭

参考