首页 企业版 Fusion-io ioDrive2 Duo SLC 应用加速器评测 (1.2TB)

Fusion-io ioDrive2 Duo SLC 应用加速器评测 (1.2TB)

by 凯文·奥布莱恩

Fusion-io ioDrive2 Duo 是一款全高、半长应用加速器,与 SLC NAND 配合使用时,可为当今要求最苛刻的应用提供 1.2TB 的低延迟、高耐久性存储。 虽然被标记为第二代产品,但这个命名有些误导,因为 Fusion-io 长期以来一直是内存即存储系列的先驱,拥有各种 ioMemory 产品。 这种经验不仅体现在产品开发和规格表亮点上,还体现在整个管理过程中; Fusion-io 拥有市场上最强大的驱动器管理软件套件 ioSphere。 尽管如此,漂亮的软件和经过验证的驱动器设计只是其中的一部分。 企业部署这些产品时要牢记一个目标; 通过攻击存储系统延迟来减少应用程序响应时间。 ioDrive2 的 SLC 迭代使激光聚焦于此问题,提供 47µs 的读取访问延迟和 15µs 的写入访问延迟。 相比之下,基于 MLC 的 ioDrive68 中的读取访问延迟为 2µs(它们具有相同的写入延迟),虽然大约 20µs 听起来并不多,但对于已针对闪存存储进行调整的应用程序而言,这几乎是永恒的.


Fusion-io ioDrive2 Duo 是一款全高、半长应用加速器,与 SLC NAND 配合使用时,可为当今要求最苛刻的应用提供 1.2TB 的低延迟、高耐久性存储。 虽然被标记为第二代产品,但这个命名有些误导,因为 Fusion-io 长期以来一直是内存即存储系列的先驱,拥有各种 ioMemory 产品。 这种经验不仅体现在产品开发和规格表亮点上,还体现在整个管理过程中; Fusion-io 拥有市场上最强大的驱动器管理软件套件 ioSphere。 尽管如此,漂亮的软件和经过验证的驱动器设计只是其中的一部分。 企业部署这些产品时要牢记一个目标; 通过攻击存储系统延迟来减少应用程序响应时间。 ioDrive2 的 SLC 迭代使激光聚焦于此问题,提供 47µs 的读取访问延迟和 15µs 的写入访问延迟。 相比之下,基于 MLC 的 ioDrive68 中的读取访问延迟为 2µs(它们具有相同的写入延迟),虽然大约 20µs 听起来并不多,但对于已针对闪存存储进行调整的应用程序而言,这几乎是永恒的.

除了规格表在延迟和吞吐量性能方面的提升外,Fusion-io 一直在努力工作,对最新一代的平台进行了其他几项实质性改进。 上一代 ioDrive 设备具有称为 FlashBack 的功能,该功能允许驱动器在 NAND 发生故障时继续运行,并且 ioDrive2 应用程序加速器基于该属性构建了称为 Adaptive FlashBack 的新版本。 Adaptive FlashBack 提高了 NAND 芯片故障容忍度,在发生多个 NAND 故障的情况下保持驱动器在线和数据安全。 在这种情况下,ioDrive2 无需离线即可重新映射和恢复。 

Fusion-io 还为 ioDrive2 系列推出了新的 NAND 控制器和固件版本。 这里的好处主要是与性能相关的、更好的吞吐量和改进的延迟,但也有 NAND 兼容性的好处。 Fusion-io 还将他们的 VSL 软件更新到 3.2.x,与新的 NAND 控制器相结合,使 ioDrive2 具有更高的性能和更小的块大小。 在 NAND 主题上,Fusion-io 对硬件架构进行了更改,将 NAND 置于其自己的模块中,与 NAND 控制器分离,从而实现更简单的设计。 净收益是 Fusion-io 可以利用相同的 PCB 布局更快地支持新的 NAND 或 NAND 封装。 

虽然我们将在下面的设计部分更深入地介绍硬件概述,但在这里提供 Fusion-io 架构的简要概述是有益的。 像 Virent Flashmax II 我们之前回顾过,ioDrive2 设计利用 FPGA 将大部分 NAND 管理职责卸载到主机 CPU。 而其他设计喜欢 美光的 P320h Fusion-io 利用板载控制器来完成这些任务中的大部分,更喜欢利用主机系统中功能强大且经常未被充分利用的 CPU。 这种设计还倾向于提供更直接的存储路径,从而减少存储延迟。 Duo 的设计利用双控制器,如 FlashMAX II,但不同之处在于它使用六个仅包含 NAND 的子板,而不是将 NAND 和控制器组合在单独的 PCB 上。 与 Virident 解决方案不同的是,带有 VSL 3.2.2 的 Fusion-io 为系统提供了四个 300GB 驱动器,而不是 Virident 提供的一个卷。 用户可以选择单独处理每个卷,但要获得单个卷,他们必须放入软件 RAID 中。 还值得注意的是,Fusion-io Duo 卡是全高半长卡,这使得它们比 Virident、Micron 和其他公司提供的通用半高半长卡更大。 也就是说,当今市场上的大多数 1 层 1U 和 2U 服务器都可以轻松容纳 FHHL 卡,使卡形状仅在边缘情况下相关。 

Fusion-io 以 MLC 和 SLC 配置提供 ioDrive2 Duo。 MLC 的容量为 2.4TB,SLC 为 1.2TB。 这些驱动器提供五年保修。

Fusion ioDrive2 Duo 规格

  • ioDrive2 双核容量 1.2TB SLC
    • 读取带宽 (1 MB) 3.0 GB/s
    • 写入带宽 (1 MB) 2.5 GB/s
    • 跑了。 读取 IOPS (512B) 700,000
    • 跑了。 写入 IOPS (512B) 1,100,000
    • 跑了。 读取 IOPS (4K) 580,000
    • 跑了。 写入 IOPS (4K) 535,000
    • 读取访问延迟 47µs
    • 写访问延迟 15µs
  • 2xnm NAND 闪存单级单元 (SLC)
  • 总线接口 PCI-Express 2.0 x8 电气 x8 物理
  • 重量:小于 11 盎司
  • 外形:全高、半长 (FHHL)
  • 保修期:5 年或最长使用期限
  • 耐力:190PBW(每个控制器 95PBW)
  • 支持的操作系统
    • Microsoft Windows Microsoft Windows:64 位 Windows Server 2012、Windows Server 2008 R2、Windows Server 2008、Windows Server 2003
    • Linux RHEL 5/6; SLES 10/11; OEL 5/6; 中央操作系统 5/6; Debian 挤压; 软呢帽 16/17; 开放SUSE 12; Ubuntu 10/11/12
    • UNIX Solaris 10/11 x64; OpenSolaris 2009.06 x64; 操作系统 10.6/10.7/10.8
    • 虚拟机管理程序 VMware ESX 4.0/4.1/ESXi 4.1/5.0/5.1、带有 Hyper-V 的 Windows 2008 R2、Hyper-V Server 2008 R2

设计与建造

Fusion ioDrive2 Duo 1.2TB SLC 是一个全高半长 (FHHL) x8 PCI-Express 2.0 卡,主电路板上有两个控制器和一个 PCIe 开关。 NAND 通过两个子板连接,使 Fusion 在切换到新的 NAND 配置时具有制造优势。 而不是每次光刻变化滚动时都重新设计卡(NAND 模具收缩), 他们可以安装新的子板并将新固件刷写到 FPGA 上。 我们的 SLC ioDrive2 Duo 由两个 600GB ioMemory 设备组成,每个设备使用 4 条 PCIe 连接通道。 PCB 布局非常高效,大型无源散热器覆盖了卡右侧的两个控制器。

每个控制器代表一个 ioDrive2,具有自己的 40nm Xilinx Virtex-6 FPGA 和 768GB 的​​ SLC NAND 池。 我们评测的 ioDrive2 Duo 使用美光 NAND,但 Fusion-io 与 NAND 制造商无关。 NAND 分为每台设备 24 个 32GB 芯片,600GB 可用在库存格式下。 该比率使库存超额配置水平达到 22%,与大多数企业闪存设备大致相当。

Fusion ioMemory 与 NAND 闪存的接口就像处理器与系统内存交互一样; 它结合了 Fusion-io 的 NAND 控制器 (FPGA),它直接通过 PCIe 进行通信,Fusion-io 的驱动程序或安装在主机系统上的虚拟存储层 (VSL) 软件将设备转换为传统的块设备。 通过 Fusion-io 的 VSL,该软件模拟块设备以实现兼容性,尽管 Fusion 还提供了一个 SDK 以允许软件供应商与 NAND 进行本地通信,从而绕过模拟开销。 ioMemory 也是非传统的,因为它会消耗系统资源来让 VSL 驱动程序发挥作用,利用主机 CPU,同时还会在系统内存中产生占用空间。 在产品支持方面,由于 Fusion-io 使用 FPGA 作为 NAND 控制器而不是 ASIC,他们可以部署非常低级别的软件更新来解决错误修复和性能增强。 这与标准 SSD 控制器形成鲜明对比,在标准 SSD 控制器中,只能通过制造新控制器来进行根本性的改变——尽管这两种设计都允许通过固件更新进行更高级别的调整。 

用于 ioDrive3.2.2 设备的 VSL 2 发布带来的一项增强功能是新的控制器功能。 以前,每个 ioMemory 设备在主机系统中都显示为单个设备。 在 Fusion 的 VSL 的最新版本中,控制器被分成两个设备并以“双管道”模式运行。 因此,ioDrive2 不是一个 LUN,ioDrive2 Duo 是两个 LUN,而是分别是两个或四个 LUN。 在我们通过新旧布局进行的测试中,我们注意到小 I/O 性能有了很大的提高,尽管我们所有的正式基准测试仅在 VSL 3.2.2 上进行。

将 Fusion ioMemory 设备与 PCIe 环境进行比较时,电源是另一个经常出现的话题,因为它们是为数不多的为某些应用提供外部电源连接的设备之一。 这适用于 Duo 系列产品,它们是单个 PCIe 卡上的两个 ioMemory 设备。 在这些情况下,要以全功率运行,它们会消耗超过 25 瓦的功率,这是 x8 PCIe 的最低额定功率。 Fusion-io 有两种方法可以满足此电源要求:外部电源线或电源覆盖,允许卡通过 x25 PCIe 插槽消耗超过 8w。 在我们的评测中评估了 ioDrive2 Duo SLC 联想ThinkServer RD630,我们在启用电源覆盖的情况下执行了所有基准测试,无需外部电源即可为我们提供完整的性能。 在硬件安装指南中,Fusion-io 声明如果主机服务器的额定功率为 55w,则可以安全地启用软件覆盖。

管理软件

Fusion-io 不断设定其他制造商试图通过其 ioSphere ioMemory 数据中心管理套件达到的标准。 正如我们通过与竞争应用程序加速器广泛合作所看到的那样,即使是 Windows 中的基本 GUI 也很难获得,许多制造商提供有限的 CLI 支持。 这在给定闪存设备的长期管理中起着重要作用。 因为保修和预期寿命会回到给定环境中的使用情况。 

Fusion 的 ioSphere 通过 Web 界面为 IT 管理员解决许多关键领域的问题,包括:实时和历史性能、运行状况监控和保修预测。 ioSphere 支持监控本地安装的 ioMemory 设备以及跨大型网络安装的 ioMemory 设备,它还可以配置远程访问以允许管理员监控数据中心之外的数据。 这个广泛的功能集是无与伦比的。

无一例外,最有趣的功能之一就是实时性能流。 ioSphere 允许用户连接到特定的 ioMemory 设备,并在发生时观看设备上的活动。 我们在测试中广泛使用了此功能,如上图所示,在我们的内部测试期间捕获的流中 MarkLogic NoSQL 数据库基准. 由于 ioSphere 不断记录来自所有连接的 ioMemory 设备的数据,它还可以构建显示过去性能信息的报告,以便您可以更好地估计任何特定 ioMemory 设备在给定生产环境中的持续时间。

对于对高级信息感兴趣的用户,ioSphere 还将跟踪电源使用情况、卡温度、读取和写入的总数据以及调试时有用的大量其他详细信息。 可以通过 ioSphere 和默认随设备驱动程序安装的 Fusion-io CLI 访问此数据。 这些高级功能发挥作用的另一个领域是过度配置或配置不足的驱动器,这会以容量换取性能。 在我们的评估中,我们在普通模式和高性能模式下测试了 ioDrive2 Duo SLC。 高性能模式具有 20% 的额外预留空间,但对于高级用户,Fusion-io 提供了选择预留空间的确切级别的功能。 当配置不足时,用户可以将 ioDrive2 的容量增加到广告容量以上(以性能和耐用性为代价)。 

测试背景和比较 

本次评测中比较的所有应用程序加速器都在我们的第二代企业测试平台上进行了测试,该平台由基于 Intel Romley 的 联想ThinkServer RD630. 这个新平台配置了 Windows Server 2008 R2 SP1 和 Linux CentOS 6.3,使我们能够有效地测试不同 AA 在其驱动程序支持的各种环境中的性能。 每个操作系统都针对最高性能进行了优化,包括将 Windows 电源配置文件设置为高性能以及在 CentOS 6.3 中禁用 cpuspeed 以将处理器锁定在其最高时钟速度。 对于综合基准测试,我们使用适用于 Linux 的 FIO 版本 2.0.10 和适用于 Windows 的版本 2.0.12.2,并在允许的情况下在每个操作系统中使用相同的测试参数。

存储回顾联想ThinkServer RD630配置:

  • 2 x Intel Xeon E5-2620(2.0GHz,15MB 缓存,6 核)
  • 英特尔 C602 芯片组
  • 内存 – 16GB (2 x 8GB) 1333Mhz DDR3 Registered RDIMM
  • Windows Server 2008 R2 SP1 64 位、Windows Server 2012 Standard、CentOS 6.3 64 位
  • 100GB 美光 RealSSD P400e 启动固态硬盘
  • LSI 9211-4i SAS/SATA 6.0Gb/s HBA(用于启动 SSD)
  • LSI 9207-8i SAS/SATA 6.0Gb/s HBA(用于基准测试 SSD 或 HDD)

在为本次审查选择可比产品时,我们选择了最新的顶级 SLC 和 MLC 应用程序加速器。 这些是根据每种产品的性能特征以及价格范围选择的。 我们包括 ioDrive2 Duo SLC 的库存和高性能基准测试结果,并将其与 Micron RealSSD P320h 以及在高性能模式下过度配置的 Virident FlashMAX II 进行比较。 

1.2TB Fusion ioDrive2 双核 SLC

  • 发布时间:2H2011
  • NAND 类型:SLC
  • 控制器:2 个带有专有固件的 FPGA
  • 设备可见性:4 个 JBOD 设备
  • Fusion-io VSL Windows 版本:3.2.2
  • Fusion-io VSL Linux 版本:3.2.2
  • 预处理时间:12小时

700GB 美光 RealSSD P320h

  • 发布时间:2H2011
  • NAND 类型:SLC
  • 控制器:1 x 专有 ASIC
  • 设备可见性:单个设备
  • 美光视窗:8.01.4471.00
  • 美光 Linux:2.4.2-1
  • 预处理时间:6小时

2.2TB Virident FlashMAX II

  • 发布时间:2H2012
  • NAND 类型:MLC
  • 控制器:2 个带有专有固件的 FPGA
  • 设备可见性:单设备或双设备取决于格式
  • Virident Windows:3.0 版
  • Virident Linux:3.0 版
  • 预处理时间:12小时

企业综合工作负载分析

我们看待 PCIe 存储解决方案的方式比仅仅关注传统的突发或稳态性能更深入。 查看长时间内的平均性能时,您会忽略设备在整个时间段内的性能背后的细节。 由于闪存性能随时间变化很大,我们的基准测试过程分析了每个设备整个预处理阶段的总吞吐量、平均延迟、峰值延迟和标准偏差等方面的性能。 对于高端企业产品,延迟通常比吞吐量更重要。 出于这个原因,我们竭尽全力展示我们通过企业测试实验室测试的每台设备的全部性能特征。

我们还包括性能比较,以显示每个设备在 Windows 和 Linux 操作系统的不同驱动程序集下的性能。 对于 Windows,我们在最初审查时使用最新的驱动程序,然后在 64 位 Windows Server 2008 R2 环境中对每台设备进行测试。 对于 Linux,我们使用 64 位 CentOS 6.3 环境,每个 Enterprise PCIe Application Accelerator 都支持该环境。 我们进行此测试的主要目标是展示操作系统性能的差异,因为在产品表上将操作系统列为兼容并不总是意味着它们之间的性能相同。

闪存性能在每个存储设备的整个预处理阶段各不相同。 根据不同的设计和不同的容量,我们的预处理过程持续 6 小时或 12 小时,具体取决于达到稳态行为所需的时间长度。 我们的主要目标是确保在我们开始主要测试时每个驱动器都完全进入稳态模式。 总的来说,每个可比较的设备都使用供应商的工具进行了安全擦除,在 16 个线程的重负载和每个线程 16 个未完成队列的情况下,以相同的工作负载预处理到稳定状态,然后进行测试在多个线程/队列深度配置文件中设置间隔,以显示轻度和重度使用情况下的性能。

在预处理和初级稳态测试中监测的属性:

  • 吞吐量(读+写 IOPS 聚合)
  • 平均延迟(读+写延迟一起平均)
  • 最大延迟(峰值读取或写入延迟)
  • 延迟标准偏差(读+写标准偏差一起平均)

我们的企业综合工作负载分析包括四个基于实际任务的配置文件。 开发这些配置文件是为了更容易与我们过去的基准测试以及广泛发布的值(例如最大 4K 读写速度和 8K 70/30,通常用于企业驱动器)进行比较。 我们还包括两个传统的混合工作负载,传统的文件服务器和网络服务器,每个都提供广泛的传输大小组合。

  • 4K
    • 100% 读取或 100% 写入
    • 100% 4K
  • 8K 70/30
    • 70% 读取,30% 写入
    • 100% 8K
  • 文件服务器
    • 80% 读取,20% 写入
    • 10% 512b、5% 1k、5% 2k、60% 4k、2% 8k、4% 16k、4% 32k、10% 64k
  • 支持网络端
    • 100% 阅读
    • 22% 512b、15% 1k、8% 2k、23% 4k、15% 8k、2% 16k、6% 32k、7% 64k、1% 128k、1% 512k

在我们的第一个工作负载中,我们查看具有 4T/16Q 出色工作负载的完全随机 16K 写入预处理配置文件。 在此测试中,Fusion ioDrive2 Duo SLC 提供了组中最高的突发性能,其 Linux 驱动程序测量了近 550,000 IOPS 突发。 在 Windows 中,突发速度“仅”为 360-420,000 IOPS。 查看其接近稳定状态时的性能,惠普模式下的 ioDrive2 Duo 在 Linux 中稳定在 230,000 IOPS 左右,在 Windows 中稳定在 200,000 IOPS 左右。 在库存容量模式下,性能测得在 Linux 中约为 140,000 IOPS,在 Windows 中约为 115,000 IOPS。

在 16T/16Q 的重负载下,Fusion ioDrive2 Duo 在 Linux 和 Windows 的库存容量模式下测得的平均延迟分别在 1.85 毫秒到 2.20 毫秒之间。 在高性能配置中,延迟下降到大约 1.10 毫秒和 1.25 毫秒。

将 Windows 和 Linux 中 ioDrive2 Duo 的最大延迟与我们的 4k 随机写入配置文件进行比较,很容易发现它在峰值响应时间方面更倾向于 Linux 环境。 在预调节期间,Windows 最大延迟在库存容量下为 40-360 毫秒,在高性能模式下为 100-250 毫秒。 这与其在 Linux 中的性能形成鲜明对比,Linux 中的峰值响应时间对于普通配置和高性能配置都保持在 20-50 毫秒之间。

深入研究延迟标准偏差,Fusion ioDrive2 Duo SLC 在 Windows 中的标准模式和高性能模式下的延迟一致性低于在 Linux 中的延迟一致性。 将它与 HP 模式下的 Micron P320h 和 Virident FlashMAX II 进行比较,这两种型号在两种操作系统中保持大致相同的一致性。

在 ioDrive12 Duo SLC 上结束 2 小时的预调节期后,在高性能模式下配置时,它在 Linux 中具有稳态随机 4k 性能,测量峰值为 231,456 IOPS。 这使其在该组中具有最高的随机 4K 写入性能,尽管其 Windows 性能与美光 P320h 的写入速度大致一致。 在标准性能模式下,随机 4k 写入速度在 Windows 中降至 114,917 IOPS,在 Linux 中降至 139,421 IOPS。 这与配置为高性能模式的 FlashMAX II 大致相当。 从 4K 随机读取速度组来看,美光 P320h 在 Linux 中以 637k IOPS 领先,ioDrive2 Duo SLC 在 Linux 中测量为 460-463k IOPS,在 Windows 中测量为 384-392k IOPS。

将平均延迟与具有 16% 16K 随机读取活动的繁重 100T/4Q 工作负载进行比较,ioDrive2 Duo SLC 在 Windows 中测量为 0.550-0.552ms,在 Linux 中测量为 0.649-0.663ms。 切换到写入性能,它在高性能模式下测得 1.102-1.255ms,在存储容量上测得 1.832-2.223ms,其写入强度在 Linux 端。

在比较最大延迟时,Fusion ioDrive2 Duo 在 Windows 中脱颖而出,峰值响应时间在该组中最高,在 373k 随机写入活动下测量为 1018-4 毫秒。 它在 Linux 中的性能要好得多,最高时为 43-51 毫秒。 当谈到峰值读取延迟时,Windows 中的 ioDrive2 Duo 以 3.32-3.76 毫秒的最大延迟领先。

比较我们随机 4K 配置文件中每个 PCIe AA 之间的延迟标准偏差,ioDrive2 Duo SLC 在 Windows 中提供了出色的读取延迟一致性,但对于写入活动,它在该组中具有一些不太一致的延迟。 这在 Linux 环境中得到了改进,尽管它们也比组中的其他人走得更高。 排在首位的是 Micron RealSSD P320h,它在读取和写入活动时提供平衡的延迟标准偏差。

我们的下一个测试切换到 8K 70/30 混合工作负载,其中 ioDrive2 Duo SLC 以 ​​424-443,000 IOPS 之间的最高突发速度领先,在 Windows 中具有更高的吞吐量。 随着性能接近稳定状态,ioDrive2 Duo SLC 的库存容量测得在 140-148k IOPS 之间,在高性能模式下增加到 195-200k IOPS。

比较我们 8k 70/30 工作负载的平均延迟,Fusion ioDrive2 Duo SLC 的突发测量结果为 0.57-0.59 毫秒(在 Windows 中略有领先),库存容量增加到约 1.70-1.80 毫秒,高性能模式增加到 1.28-1.33 毫秒.

随着 ioDrive2 Duo SLC 从突发状态过渡到持续或稳定状态,Windows 和 Linux 中的峰值延迟以及库存和高性能模式在 50-250 毫秒之间波动。 这与测得 320-10ms 的 Micron P30h 或测得 30-50ms 之间的 Virident FlashMAX II 相比。

虽然 ioDrive2 Duo 在我们的 8k 70/30 预处理测试中的最大延迟很高,但我们注意到它在高性能模式下的延迟一致性紧随 Micron P320h。 在库存容量配置中,它比 Virident FlashMAX II 略高。

与我们在 16% 16K 写入测试中执行的固定 100 线程、4 队列最大工作负载相比,我们的混合工作负载配置文件可在各种线程/队列组合中扩展性能。 在这些测试中,我们将工作负载强度从 2 个线程和 2 个队列扩展到 16 个线程和 16 个队列。 在我们扩展的 8K 70/30 测试中,Fusion ioDrive2 Duo SLC 在高性能配置组中具有最高的峰值性能。 将其直接与 Micron P320h 进行比较,它能够在 2、4、8 和 16 线程时提供更高的低队列深度性能,但随着队列深度的增加而落后。 在库存配置中,它提供了非常接近配置为高性能模式的 Virident FlashMAX II 的性能。

在我们 8k 70/30 测试的比例平均延迟部分,我们发现 Fusion ioDrive2 Duo SLC 提供了组中最低的平均延迟,部分原因是它在低队列深度下的强大性能。 随着队列深度的增加,美光P320h一马当先,直到16T/16Q,ioDrive2 Duo SLC再次拔得头筹。

当我们在缩放的 8k 70/30 测试中比较最大延迟时,我们确实记录了 ioDrive2 Duo SLC 的一些更大的峰值,随着有效队列深度的增加,它似乎逐渐升高。 这在 Windows 中的库存容量 ioDrive2 中最为显着。 其 Linux 性能以及高性能模式下的 Windows 在小于或等于 QD70 的有效负载下将峰值延迟保持在 64 毫秒以下,而 QD128 和 QD256 的延迟分别增加了 160 毫秒和 220 毫秒。

在我们缩放的 8k 70/30 测试中,美光 P320h 在所有工作负载中以最一致的延迟领先,Virident FlashMAX II 位居第二,高性能的 ioDrive2 Duo SLC 紧随其后。 

文件服务器工作负载代表了每个特定设备的更大传输大小频谱,因此驱动器必须处理从 4b 到 8K 的请求,而不是适应静态 512k 或 64k 工作负载。 在这种工作负载下,Fusion ioDrive2 Duo SLC 必须开始应对更大的传输传播,它能够展示一些力量并在高性能模式下领先。 在突发情况下,ioDrive2 Duo SLC 的吞吐量几乎是美光 P320h 和 Virident FlashMAX II 的两倍,测量值约为 305,000 IOPS。 当它在高性能模式下接近稳定状态时,Windows 和 Linux 的 IOPS 稳定在 136,000 左右,而 P320h 为 125,000 IOPS。 在库存容量格式化中,吞吐量逐渐下降到大约 110,000 IOPS,而 Virident FlashMAX II 在高性能模式下接近 70,000 IOPS。

凭借其强大的突发性能,在我们的预处理曲线开始时,ioDrive0.83 Duo SLC 测得的平均延迟约为 2 毫秒,然后在高性能模式下稳定至 1.87 毫秒或在库存容量下稳定至约 2.25 毫秒。

随着 ioDrive2 Duo SLC 从突发状态过渡到持续稳定状态,峰值延迟开始像我们的 8k 70/30 测试中那样加快,尽管没有那么高。 总体而言,我们测量了 ioDrive20 Duo 在所有模式下的最大延迟范围在 200 毫秒到 2 毫秒之间,最好的是 Linux HP 模式。 我们确实注意到在高性能模式下 Windows 中的 ioDrive1,000 Duo 也有一个略高于 2 毫秒的尖峰。 相比之下,美光 P320h 在 Windows 和 Linux 下的峰值延迟都保持在 20 毫秒以下。

虽然在我们之前的测试中注意到 ioDrive2 Duo 有更多的峰值延迟抖动,但看看它的延迟标准偏差,它在 Micron P320h 和 Virident FlashMAX II 之间处于中间位置。 总的来说,Linux 在普通配置和高性能配置中提供了更好的一致性,后者具有更高的稳定性。

在文件服务器预处理过程以恒定的 16T/16Q 负载完成后,我们开始进行主要测试,测量 2T/2Q 和 16T/16Q 之间设定水平的性能。 在我们的主要文件服务器工作负载中,ioDrive2 Duo SLC 提供最高的峰值性能,在 132T/135,000Q 下测得 16-16 IOPS,而 P320h 测得 125,500 IOPS。 ioDrive2 Duo 在 320、2 和 4 线程工作负载下也显示出其队列深度强度低于 Micron P8h,在高性能模式下略有优势。 随着队列深度的增加,美光 P320h 在每个阶段都提供了最高的性能,甚至更高。

比较我们文件服务器工作负载中每个一流 PCIe 应用程序加速器之间的平均延迟,ioDrive2 Duo SLC 在该组中的延迟最低,在 0.14T/2Q 的高性能模式下,Linux 和 Windows 的延迟均为 2 毫秒。 随着工作负载的增加,美光 P320h 保持强劲领先,直到 16T/16Q,其中 ioDrive2 Duo SLC 在峰值负载下的平均延迟最低。

查看我们主要文件服务器测试中的峰值响应时间,Fusion ioDrive2 Duo SLC 具有更高的最大延迟,在有效队列深度等于或高于 128 时开始出现。低于 QD128,ioDrive2 Duo 的最大延迟为 11 -100ms,在高性能模式下表现更好。 

在我们的文件服务器测试中,将我们的观点从峰值响应时间切换到延迟一致性,ioDrive2 Duo SLC 在高性能模式下落后于 Micron P320h,并且在延迟标准偏差方面与库存配置中的 Virident FlashMAX II 相比略有优势。

在我们最后一个涵盖 Web 服务器配置文件的综合工作负载(传统上是 100% 读取测试)中,我们应用 100% 写入活动以在我们的主要测试之前完全预处理每个驱动器。 在这种压力很大的预处理测试中,ioDrive2 Duo SLC 在普通配置和高性能配置中都遥遥领先于 Micron P320h 和 Virident FlashMAX II。 在此测试中,突发速度超过 145,000 IOPS,而美光 P320h 的峰值为 67,000 IOPS,而 Virident FlashMAX II 在高性能模式下的初始值为 32,000 IOPS。

在我们的 Web 服务器预处理测试中,在 100T/16Q 的 16% 重写工作负载下,ioDrive2 在高性能配置和库存配置中保持了大约 3.5-3.8ms 的平均响应时间和 6.4-7.2ms。

比较我们 Web 服务器预处理测试中的最大延迟,ioDrive2 Duo SLC 在 Linux 中的标准模式和高性能模式下测得的延迟在 25-70 毫秒之间,Windows 峰值延迟从 25-380 毫秒飙升至 1,000 毫秒以上的几个峰值。 

比较我们紧张的 Web 服务器预处理运行中的延迟一致性,美光 P320h 名列前茅,ioDrive2 Duo SLC 居中。 在高性能模式下配置时,它在 Windows 和 Linux 中的性能都比在标准配置下更强。

切换到具有 100% 读取配置文件的 Web 服务器测试的主要部分,ioDrive2 Duo SLC 的性能从 23.9T/25.5Q 的 2-2k IOPS 扩展到 141T/147Q 的 16-16k IOPS 的峰值。 与 Micron P320h 相比,ioDrive2 Duo 在低队列深度或高队列深度下的性能都无法与之匹敌,在低于 QD32 的有效队列深度上它落后于 Virident FlashMAX II,尽管在该水平之上它很快超过了它。

Fusion ioDrive2 Duo SLC 的平均延迟在 0.153T/0.163Q 时为 2-2 毫秒,在 1.737T/1.803Q 时增加到 16-16 毫秒的峰值。 总体而言,美光 P320h 的延迟最低,而 Virident FlashMAX II 在 QD32 及以下具有优势,ioDrive2 Duo SLC 能够在更高的有效队列深度上超越。

在我们的 100% 读取 Web 服务器配置文件中,我们注意到 ioDrive2 Duo SLC 的延迟峰值高达 130 毫秒,尽管大多数低于 20 毫秒的有效队列深度低于 256。在我们的 16T/16Q 最高负载下,ioDrive2 Duo SLC 峰值到 164-320 毫秒,最高是在 Windows 中的库存配置下测得的。

比较我们 100% 读取 Web 服务器测试中的延迟标准偏差,美光 P320h 在组中遥遥领先,而 ioDrive2 Duo SLC 从低到高有效队列深度落后于或与 Virident FlashMAX II 持平。

结语

Fusion-io 已经显示出相当多的能力,可以通过 ioDrive2 Duo SLC 应用程序加速器开发出不仅仅是增量更改。 从自适应闪回 NAND 故障保护等内部工作原理,到将 NAND 移动到其自己的子板的增强板设计,Fusion-io 进行了多项硬件更改,使 ioDrive2 比前代产品更好。 开发团队积极致力于减少驱动器中的延迟; 我们在 4K 100% 和 8K 70/30 测试中看到了这些优势,其中 ioDrive2 SLC 在峰值负载下发布了最佳延迟和吞吐量分数。 它还在低队列深度下具有最强的性能,在我们针对 320、8 和 70 线程工作负载的 QD30 2k 2/4 测试中显着领先于 Micron P8h 和 FlashMAX II。 这提供了驱动最低平均延迟的另一个好处,因为它不必有那么多未完成的 I/O 来驱动显着更高的性能。 在管理方面,ioDrive2 配备了 ioSphere,这是目前最全面的驱动器管理软件。 将它与目前市场上与应用程序加速器配对的任何捆绑软件进行比较,它在功能和界面设计方面都毫不逊色。

我们已经看到大多数其他应用程序加速器通常在一个操作系统中比在另一个操作系统中表现更好。 当然,这就是我们在 Windows 和 Linux 中测试驱动器的原因,因此我们可以确定驱动器的优缺点。 正如我们在之前的 Fusion-io 驱动器中看到的那样,ioDrive2 Duo 在 Linux 环境中表现非常出色,尽管它在 Windows 中变得更加不稳定。 虽然从我们的图表上看更明显,Windows 的整体性能并没有受到太大影响,但肯定还有改进的空间。 在 16T/16Q 的峰值负载下,我们注意到 ioDrive2 Duo 出现峰值延迟。 虽然,在比较其延迟一致性时,总体而言,它并没有对这些数字产生太大影响。 虽然一些延迟数字不是 Fusion-io 想要的,但他们的设计允许非常低级别的更新,应该能够随着时间的推移消除其中一些延迟问题。 还值得注意的是,在兼容性主题上,Fusion-io 支持更强大的操作系统列表之一,使该驱动器易于在大量用例中部署。 

Fusion-io 卡设计经常受到竞争的抨击,因为它使用主机 CPU 和 RAM 来完成大部分 NAND 管理工作。 正如我们所见,这是一种高效的设计,Virident 也采用了这种设计,它通过利用越来越强大的 CPU 来提供令人印象深刻的性能和延迟。 Micron 的 P320h 是替代方法的一个光辉例子,它利用了一个非常好的板载控制器,但他们的卡最高可达 700GB 的 SLC 存储,说明存储供应商必须做出的妥协。 针对 Fusion-io 的新行业攻击有点有趣,这是围绕外形因素的攻击。 ioDrive2 Duo 使用 FHHL 设计,而其他大多数使用 HHHL,从服务器适配的角度来看,这是一种更通用的设计。 我们实验室中来自 HP、Dell、Lenovo 和 SuperMicro 的所有服务器都支持 FHHL 和 HHHL 格式,但值得注意的是 Fusion-io 设计在这方面有些异常。 从设计的角度来看,使用更多空间来允许模块化 NAND 段似乎是可以接受的。 随着 NAND 的变化,这限制了产品线长期生命周期内的设计成本,但竞争很快注意到它在特殊用例中的局限性。

优点

  • 在我们的 100% 4K、8k 70/30 和文件服务器工作负载中提供最高的峰值性能
  • ioSphere 管理套件提供一流的功能集
  • 在低队列深度的 8k 70/30 和文件服务器工作负载中实现最高吞吐量和最低延迟
  • 经过验证的架构具有自适应闪回等功能,可提高可靠性

缺点

  • Windows 和 Linux 中的最大延迟问题
  • 在最低和最高有效队列深度之间输给美光 P320h

底线

Fusion-io ioDrive2 Duo SLC 应用程序加速器在多个工作负载中提供 1.2TB 最快的可用存储,同时提供比上一代产品更多的设计和功能升级。 其中一项升级是 Adaptive FlashBack,即使在多个 NAND 芯片故障后,它也能保留数据并保持驱动器运行。 ioDrive2 Duo SLC 结合了业界最佳的管理软件和无需新控制器即可持续改进驱动器的能力,必将长期服务于能够利用出色存储性能的最关键应用程序。 

ioDrive2 产品页面

讨论这篇评论