StorageReview 对标记的命令队列及其对桌面和服务器世界的影响进行了多次综合考察。 TCQ 有评分吗? 它如何与 RAID 阵列啮合? SATA TCQ 是否与 SCSI TCQ 一样有效? 在 SR 的最新消息中找到这些问题的答案!
参见 我们如何试驾
参见 西部数据猛禽 WD740GD 评测
参见 希捷 Cheetah 10K.6 评测
介绍在过去的几年里,西部数据在高性能、大容量的台式机和发烧友市场上一直保持着虚拟的副锁。 久负盛名的 WD Caviar 系列结合了令人羡慕的速度和容量以及合理的价格。 然而,除了一条相对晦涩、短命的 SCSI 产品线外,当涉及到利润丰厚的企业领域时,该公司只是远远地看着希捷、迈拓和日立等巨头争夺市场份额。 一年多以前,WD 通过推出世界上第一款 10,000 RPM ATA 驱动器 Raptor WD360GD 测试了企业水域。 Raptor 将 SCSI 级机械装置与新的且相对便宜的串行 ATA 接口相结合,试图降低 SCSI 子系统所需的相当高的溢价。 然而,StorageReview 的性能结果显示,虽然 WD360GD 提供了世界级的单用户结果,但与现有的 10k RPM SCSI 设备相比,其多用户性能仍然不尽如人意。 |
WD360GD 缺少 SCSI 世界多年来享有的关键元素 - 标记命令队列 (TCQ),该功能可以智能地重新排序请求以最大限度地减少执行器移动。 2003 年 740 月,Western Digital 宣布推出后续的 Raptor WD74GD,这是第二代产品,为生产线带来了许多改进。 尽管将 Raptor 的容量翻倍至 XNUMX GB 是最明显的改进,但最吸引人的无疑是 TCQ 的实施。
TCQ 简介
不要与操作系统重新排序和优化混淆,标记命令队列是一个硬件级过程,旨在简化重负载下高度随机访问中的数据交付。 如果没有 TCQ,驱动器一次只能接受一个命令。 因此,它以先到先得的方式运作,按照收到的顺序完成请求。 这并不总是服务数据请求的最有效方式,尤其是在密集的非本地化环境中。
通过标记命令排队的过程,主机适配器将特殊标记添加到各个命令。 驱动器本身了解其自身在三个维度上的扇区物理布局,可以考虑旋转和寻道距离并重新排序命令以更有效地为它们服务。 因此,请求的数据以更流线型的方式返回给控制器; 然后它可以使用之前添加的附加信息将数据透明地返回给操作系统。
考虑左边的图表。 在传统的非排队范例中,驱动器将接受对数据片段 A 的请求,移动执行器并检索它,接受对 B 的请求,检索它,然后移动到片段 C。可以缓冲和排队请求的驱动器但是,将能够检索 A,然后选择先检索 C,然后再检索 B,从而在完成这三个请求时节省了时间。
TCQ 必须得到控制器和硬盘驱动器本身的支持。 它早在 1990 年就被引入 SCSI 领域,并于 2 年正式编入 SCSI-1994 标准。该功能迅速证明了自己在多用户服务器领域的价值,并且如今已在几乎所有主机适配器和磁盘上得到一致部署. 同样,TCQ 在 1998 年的 ATA-4 标准中正式实施。 然而,与 SCSI 设备不同的是,ATA 驱动器根本没有用于热插拔性和低访问时间等功能至关重要的企业应用程序中。 此外,传统的 ATA 大本营单用户机器并没有从 TCQ 中受益; 事实上,在许多情况下,额外的开销实际上降低了而不是提高了这些领域的性能。 结果,该功能在很大程度上被业界忽略了。
然而,今天,串行 ATA 的出现、其相关的热插拔功能及其与即将推出的串行连接 SCSI (SAS) 标准承诺的互操作性,为 ATA 在企业中的应用带来了光明的未来。 即将出台的 SATA II 标准包括将标记命令队列纳入 la ATA-4 标准的规定。 希捷 Barracuda 7200.8 和迈拓 MaXLine III 等原生 SATA 驱动器架构标榜包含“原生 SATA”标记的命令队列,或简称为“原生命令队列”(NCQ)。 NCQ 的基本范例与标记命令队列的范例相同; NCQ 名称只是将 SATA II 标准与现有的 ATA-4 型号区分开来。
凭借雄厚的研发资金,希捷是唯一一家在其首款 SATA 产品中避免使用成本更低、上市速度更快的 PATA-to-SATA 桥接器的制造商。 出于财务和时间的原因,西部数据等其他制造商推出了他们的第一款具有桥接操作的产品。 Raptor WD740GD 就是其中一种设计。 虽然实际影响可以忽略不计(毕竟重要的是底线性能!),但 Raptor 的桥接器阻止它使用 SATA II NCQ 标准。 因此,为了及时在其崭露头角的面向企业的产品线中实施标记命令队列,Western Digital 选择在 Raptor 中加入 ATA-4 风格的 TCQ。 对 WD 来说幸运的是,该公司收到了许多控制器制造商的热烈响应。 大多数设计支持 NCQ 的 SATA 主机适配器的公司也采用了 Raptor 风格的队列。 Promise Technology 就是这样的制造商之一。
测试
在这几篇文章的第一篇中,我们将研究 SATA 的标记命令队列的影响,我们将看看即将推出的 Promise FastTrak TX4200 与目前出货的、未启用 TCQ 的 FastTrak S150 TX4 相比如何。 这两个控制器之间的关系特别有趣,因为 TX4200 只是一个添加了 TCQ 代码的 FastTrak S150 TX4。 反过来,S150 TX4 只是支持 RAID 的 SATA150TX4,是 SR Testbed 的长期参考 SATA 控制器。 因此,两个 Promise RAID 控制器之间的直接对比可以将 TCQ 的影响与其他变量隔离开来。
Promise FastTrak TX4200 具有以下特点:
- 4 个串行 ATA 端口,最多可连接 4 个驱动器
- RAID 0/1/10 和 JBOD
- 32 位/33-66 MHz PCI 操作
- NCQ 和 SATA TCQ 支持
当然,TCQ 在 SCSI 领域已经存在了一段时间——所有当前的主机适配器、RAID 控制器和硬盘驱动器都支持非常成熟的实现。 为了发现 SATA TCQ 与更成熟的 SCSI 解决方案相比有哪些缺点(如果有的话),这些测试中包含了 Mylex AcceleRaid 170 RAID 控制器与最多四个 73 GB Seagate Cheetah 10K.6 驱动器配对的结果。
Mylex AcceleRaid 170 具有以下特点:
- 1 个 68 针 LVD 端口,最多可连接 15 个驱动器
- RAID 级别 0、1、0+1、3、5、10、30、50、JBOD
- 32 MB ECC SDRAM 缓存
- 32 位/33 MHz PCI 操作
尽管 TCQ 即使在单个驱动器在重随机负载下运行时也会带来好处,但当还有多个执行器一起工作时,它的真正潜力就会大放异彩。 因此,接下来的测试还仔细研究了阵列在多用户和单用户场景中提供的扩展——我们两年多来首次正式采用 RAID。
在以下测试中,Testbed3 的硬件和基准测试从多个维度梳理出潜在的性能驱动因素:
- TCQ 如何提高多用户和单用户性能?
- TCQ 如何影响 RAID 阵列在添加更多驱动器时向上扩展性能的能力?
- SATA TCQ 与 SCSI 的实施相比如何?
- RAID 阵列如何在日益繁重的随机 I/O 下扩展?
- RAID 阵列对主导非服务器(单用户)使用的高度本地化 I/O 有何好处?
由于这些测试利用了标准 SR 测试台,让我们花点时间考虑机器硬件的潜在限制,即 33 MHz、32 位 PCI 插槽。
PCI 总线的局限性
标准 133 位、32 MHz PCI 总线的 33 MB/秒限制可能引起某些人的关注,尤其是那些出于各种原因寻求最大化顺序传输速率的人。 实际的现实世界限制仍然略低于该阈值 - 与以下结果相关的 STR 测试最高为 126 MB/秒。 位于其外部区域的单个 Raptor 可以推动近 72 MB/秒,而 Cheetah 10K.6 可以达到 69 MB/秒 - 两者只需要两个就可以使 PCI 总线饱和。
然而,让我们仔细看看 STR 在大多数应用中的重要性。 这 StorageReview 文件服务器 DriveMark 生成 22 KB 的平均传输大小。 换句话说,套件中平均生成的 I/O 操作包括将执行器重新定位到所需位置,然后读取或写入 22 KB 的数据。 同样,SR Office DriveMark 的平均传输大小为 23 KB。 SR High-End DriveMark 基于包括视频和音频编辑在内的一套应用程序,是唯一能够显着超出这些大小的测试,每个 IO 生成相对较高的 69.5 KB 传输。
单个 Raptor WD740GD 的最大传输速率为 72 MB/秒,可以在以下位置传输 22 KB:
PCI 节流的 RAID0 阵列可以传输 22 KB 的数据:
右图说明了典型的单用户和多用户场景中定位和传输之间的关系。 观察定位执行器和盘片(红色)所花费的时间如何支配读取/写入数据本身所花费的相对较少的时间(黄色)。 即使是通过无限快的总线释放无限传输速率的渐近情况,也只会消除服务一个请求所需总时间的黄色部分。
因此,虽然 PCI 总线可以限制顺序传输速率,但它在典型使用中限制实际速度的实际效果并不像人们乍一看所认为的那样重要。 因此,本文中展示的缩放比例也代表了在高速总线上运行的阵列所带来的增长。
我们的第三个 Raptor WD740GD 样品
Western Digital 为我们提供给 SR 的评估样本 去年一月发表的评论 于 4 年 2003 月 4 日制造。为了这次审查,WD 向我们发送了另外四个样品,所有样品的日期均为 2004 年 150 月 4 日。虽然本文的大部分重点都放在多驱动器阵列上,但出于控制目的,有必要重新测试一个我们的参考 Promise SATAXNUMXTXXNUMX 控制器上这批新产品的单个驱动器。 出现一些差异:
在比较我们的第二个和第三个样本时,请注意扩展 MDL 名称的最后一位数字的差异。 1 月的单元以 XNUMX 结尾,而 XNUMX 月的单元以 XNUMX 结尾。为什么要更改? 首先,我们应该指出,所有制造商在初始发布后悄悄地定期更新所有驱动器上的固件,以纠正错误或随着大量配置经验的涌入调整性能。
其次,正如在过去几个月中显而易见的那样,SATA 命令队列已被证明是一个不断变化的目标,而驱动器和控制器制造商也在不断调整他们的产品。 随着太平洋数字、矽映和乔鼎科技等控制器制造商不断开发预发布适配器样品,西部数据等驱动器制造商被迫重新优化固件以获得最佳效果。 同样,相反的方向也是如此。 尽管 Western Digital 于 740 年 2003 月发布了 WD00GD,并且自去年 1 月以来通过渠道广泛销售的设备都具有 TCQ 功能,但 Raptor 团队仍被驱使定期重新评估驱动器的潜在配套主机适配器并相应地重新调整固件。 结果是“XNUMXFLAXNUMX”修订版,该单元更适合当今支持 TCQ 的主机适配器的状态,尽管某些性能指标略有下降。
扫一眼上面的数字就会发现,尽管存在差异,但它们在所有意图和目的上都是微不足道的。 人们根本不会注意到主观使用速度的差异。 专门获取早期 00FLA0 修订版的尝试可能会令人沮丧且毫无结果。 我们不会为差异而烦恼。
关于组织的一句话
呈现以下结果可能会让人望而生畏。 当人们试图形成“大局”时,会出现许多不同的表现维度。 当所有其他变量保存队列深度保持不变时,性能如何提高? 向阵列中添加更多驱动器会带来哪些好处? 选择镜像而不是条带化对性能有何影响? 问题列表继续。 因此,我们避免使用我们的标准“HTML 生成”图表,转而使用静态图表。 希望它们能准确地传达要收集的大量信息。
事不宜迟,让我们来看看一些结果吧!
队列深度增加时的多用户性能首先,看看随着队列深度(负载)的增加,在高度随机的 StorageReview 文件服务器 DriveMark 下性能如何扩展。 有关 FS DriveMark 的信息,请查看 这个解释. 为了进行比较,Testbed3 的标准 Promise SATA150TX4 SATA 控制器和 Adaptec AHA-29160 SCSI 控制器的结果已包含在单驱动器场景中。 下面显示的 RAID0 结果具有 64 KB 条带大小。 |
当负载达到 4 个未完成的 I/O 时,29160 拉到了包的头部,逐渐超过了 AcceleRaid。 FastTrak S150 TX4 和 SATA150TX4 继续表现相同,而 TX4200 仍然领先,设法缩小了一些差距。
深度为 16 会产生相当大的变化。 Adaptec 以令人印象深刻的每秒 237 次 I/O 跃居领先地位。 Mylex 继续保持良好的扩展性,但 TX4200/Raptor 对的 TCQ 实施开始让人感觉到它的存在并略微落后。
当我们最终达到 64 个未完成请求的沉重负载时,就会出现一个清晰的层次结构。 Adaptec SCSI 主机适配器一直是流行、可靠的选择。 29160 也被证明是一个伟大的表现者,它让其他控制器在重负载下处于尘土中。 尽管 TX4200 和 AcceleRaid 未能达到如此高的高度,但它们仍然提供了人们期望从具有 TCQ 功能的子系统获得的负载下扩展。 相比之下,两个非 TCQ ATA 控制器位于电池组的后部,这与它们在只有一个请求未完成时的快速性能形成鲜明对比。
当深度达到 16 时,S150 TX4 的斜率趋于平稳,表明缩放比例低于 AcceleRaid 和 TX4200。 最后,在 64 个 I/O 时,AcceleRaid 和 TX4200 比 S150 TX4 具有显着优势,TX4200 达到每秒 385 个 I/O。
非 TCQ S150 TX4 在队列达到 16 时落后于其他两个适配器。当深度达到 64 个未完成的 I/O 时,TX4200 再次领先于其他适配器。
驱动器数量增加时的多用户性能随着 RAID0 阵列驱动器数量的增加,对比控制器之间的性能也会产生有说服力的结果。 下图展示了在保持所有其他变量不变的情况下添加更多磁盘的效果。 下面显示的结果具有 64 KB 条带大小。 |
但是,当将第二个驱动器添加到阵列时,AcceleRaid 的扩展性比 ATA 控制器要小一些; 这三个地方彼此非常接近。
当我们达到三个和四个驱动器计数时,AcceleRaid 缓坡将其保持在两个 Promise 控制器之后。 增加的致动器数量使 S150 TX4 能够克服其缺乏 TCQ 功能的问题,并领先于 AcceleRaid 和 TX4200,尽管差距相对较小。
SCSI AcceleRaid 提供比只有一个驱动器的 SATA TX4200 更好的性能。 但是,随着更多磁盘添加到阵列中,TX4200 的扩展性更好; 在 13 驱动器阵列中,它的斜率比 AcceleRaid 高出 4%。
多用户镜像从学术角度来看,随着驱动器数量的增加,从 RAID0 阵列中剔除的结果很有趣,这主要是由于可以添加独立执行器的线性特性。 然而,不可否认,RAID0 在生产服务器中的实际使用非常有限——性能提升被风险的显着增加所抵消。 如果一个四驱动器条带阵列出现故障,所有数据都将丢失。 镜像 (RAID1) 是一种更有可能出现的情况。 在这样的阵列中,每条数据至少写入两个磁盘。 虽然写入必须一致发生,但读取却不需要; 因此,智能设计的 RAID 控制器确实通过在使用多个执行器时实施独立读取来提高性能。 RAID1 在一个驱动器发生故障时提供冗余的好处,同时还通过两个独立的读取机制提供改进的性能。 RAID01 在两组 RAID0 阵列之间提供冗余 - 如果一个阵列发生故障,数据将保留在另一个阵列上。 RAID10 镜像两个驱动器上的数据,然后将生成的阵列与另一个阵列条带化。 RAID01 和 RAID10 都通过两个写入和最多四个读取机制来增强性能。 Mylex 控制器提供 RAID01 和 RAID10,而 Promise 单元包含 RAID10。 |
正如人们所预料的那样,对一对镜像阵列 (RAID10) 进行条带化可提供更大的性能优势。 在这里,适度的 S150 TX4 实际上在相对较轻的 4 个未完成请求的负载下跳出了一个显着的早期领先优势。 到负载达到 16 时,情况基本平衡; 到 64 岁时,S150 TX4 的温和改进导致它有些落后。 在 RAID10 配置中,TX4200 在 16 和 64 之间并没有表现出相同的奇数下降。相反,它按预期扩展。
单用户性能虽然 提出了相反的证据,过度热心的营销以及普遍缺乏知识的结合导致了 RAID 在运行单用户工作站的高级用户中的扩散。 虽然对 RAID1 提供的冗余可能存在相当大的争论,但 RAID0 提供的传输速率的提高和高 I/O 随机访问性能根本不会使大多数非服务器用途受益。 同样,尽管最新的 Raptor 提供了出色的单用户性能,但 Western Digital 一直在努力将 TCQ 功能整合到驱动器中,这并不是为了扩大其在单用户竞争中的领先优势,而是为了确保 Raptor 将其主张作为一种可行的替代方案传统上基于 SCSI 的服务器世界。 |
即便如此,我们意识到全世界的许多读者一直在热切地等待 Raptor 与合适的 TCQ 控制器配对的结果。 存储评论的 桌面驱动器标记 提供了一个无与伦比的机会来评估 RAID 阵列在涉及非服务器、单用户应用程序时有多大的不同。 在这里,我们将了解 RAID、TCQ、SCSI 和 SATA 对性能的影响。 下面显示的 RAID0 结果具有 64 KB 条带大小。
在 SCSI 方面,Adaptec AHA-29160 和 Mylex AcceleRaid 170 交换了位置。 虽然 29160 证明了自己在单驱动器、多用户场景中的卓越性能,但 AcceleRaid 全面提供了更好的单用户分数。 但是请注意,即使受到 TCQ 操作的阻碍,Raptor 在四项单用户测试中的三项中仍设法保持领先于 Cheetah。 Western Digital 在设计出色的单用户预读和回写缓冲区策略方面的经验继续大放异彩。
让我们继续研究 RAID 控制器如何随着驱动器数量的增加在每个访问模式中扩展。
升级到三个驱动器表明回报显着减少。 移动到四个磁盘实际上会导致分数下降。 虽然有些人可能会争辩说测试台 32 位、33 MHz PCI 总线限制了通过条带化实现的收益,但读者应该记住,尤其是在这些 I/O 级别上, 这些限制并不重要. 无论驱动器数量如何,S150 TX4 更简单、流线型的操作使其比其他两个控制器具有相当大的性能优势。
单用户镜像
在所有其他访问模式中,三个控制器在这里和那里表现出非常轻微的变化,没有明显的趋势可辨。 请注意,非 TCQ S150 TX4 再次在所有镜像组合中提供最佳性能。
结论从上面提供的大量数据中,我们可以得出几个结论: 1. SATA TCQ 和 SATA RAID 有潜力为服务器市场带来与 SCSI TCQ 和 SCSI RAID 一样大的优势。 Promise FastTrak TX4200 和 Mylex AcceleRaid 170 分别是 SATA 和 SCSI 接口的入门级 RAID 控制器。 事实上,前者只不过是 Promise 当前的 FastTrak S150 TX4 控制器,添加了 SATA TCQ(和 NCQ)功能。 |
与其他主要硬盘播放器不同,Western Digital 没有成熟的基于 SCSI 的产品线来保护。 因此,该公司通过以与更具成本意识的 ATA 接口相关的价格提供 SCSI 风格的机制和功能来寻求竞争优势。 在撰写本文时与 StorageReview 发起人进行的快速检查 超微 73 GB Cheetah 10K.6 的价格为每个 339 美元,Raptor WD740GD 的价格为每个 219 美元,AcceleRaid 170 的价格为 379 美元。 今年 4200 月发布时,Promise TX150 的价格将与它要取代的 S4 TX159 的价格持平。 它在 HyperMicro 的售价为 XNUMX 美元。
因此,出现以下定价(不包括电缆和附件):
虽然 WD 提供了一种可以与基于 SCSI 的解决方案的速度和可扩展性相媲美的解决方案,但还必须牢记基础设施和可靠性的关键因素。 与 TCQ 本身一样,与 SCSI 硬件的成熟和寿命相比,SATA 的支持硬件(如背板、一体化解决方案等)仍处于起步阶段。 另请记住,虽然 Western Digital 声称拥有企业级 1.2 万小时的 MTTF 规格并为 Raptors 提供 5 年保修,但与希捷的 Cheetah 系列等成熟解决方案相比,该产品线仍然是新的并且相对未经证实。 最后,请记住,上面列出的价格仅代表存储子系统的成本——在考虑主板、CPU 和 RAM 时将服务器硬件的总成本考虑在内可以显着缩小差异。
说到底,SATA进军中低端服务器市场的潜力是有的。 性能肯定是有的。 如果 Raptor 的可靠性证明与竞争对手相当,并且如果基础设施/支持硬件浮出水面,WD 将有一个可行的竞争者。
2. 命令队列旨在协助多用户情况,而不是单用户设置。 随着 Intel 的 9xx 芯片组的最新发布,各地的权威人士和爱好者都宣称命令队列是桌面的下一件大事。 错误的。 正如 FastTrak S150 TX4 和 TX4200 之间的差异所证明的(除后者添加的 TCQ 功能外,其他方面相同),命令队列引入了显着的开销,无法在高度本地化、深度较低的实例中以性能为代价,甚至最重的单用户多任务生成。 事实上,越来越明显的是,TCQ 在 SCSI 领域的成熟和全面实施是机械性能优越的 SCSI 驱动器与 ATA 设备相比失败的主要原因之一。 考虑从上面介绍的四种单用户访问模式、一到四个驱动器 RAID24 阵列和 RAID0/1 镜像阵列产生的 10 种组合中, 非 TCQ S150 TX4 在 每周 一个案例 大 边. TCQ 仅适用于服务器,就像下面提到的技术一样。
3. RAID 对多用户应用程序的帮助远远超过它对单用户方案的帮助。 高级用户社区的热情与迎合此类人群的公司的营销手段相结合,导致了一种极其错误的信念,即跨两个或多个驱动器条带化数据可为大多数非服务器用途带来显着的性能优势。 这与事实相去甚远! 非服务器使用,即使在繁重的多任务处理情况下,也会产生深度较低、高度本地化的访问模式,其中预读和回写策略占主导地位。 理论告诉那些愿意倾听的人,条带化不会产生显着的性能优势。 前一段时间, 受控的实证检验 支持理论建议。 疑虑仍然存在——不合理的是,许多人认为如果阵列基于 SATA 或 SCSI 接口,结果会有所不同。 如上所示,结果是一样的。 节省您的时间、金钱和数据——为服务器保留 RAID!
我们还远远没有结束! Pacific Digital Corp. 和 Highpoint Technologies 的竞争性 SATA TCQ 产品目前已上市,而 Silicon Image 的芯片组尚未集成到出货产品中。 我们将继续与其他控制器制造商合作,为读者带来与各种产品配对的 Raptor TCQ 结果。 SATA NCQ也刚刚进入黄金时段。 一如既往,StorageReview 将在那里。