AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1024347
Accepted
Stilez
Stilez
Asked: 2020-07-08 05:02:16 +0800 CST2020-07-08 05:02:16 +0800 CST 2020-07-08 05:02:16 +0800 CST

我的 SAS HDD 阵列可以使用多少 PCI-E 带宽?

  • 772

注意:这个问题是真实的,但要分析它,请注意我已经从设备和总线能力的“理论”起点开始,我承认这通常根本不能代表使用中的带宽利用率。

我有一个 18 x SAS3 混合 8TB 和 10TB 企业驱动器阵列,在 ZFS (FreeBSD) 下配置为 6 组 3 路镜像。目前,它们都挂在单个 24 端口 HBA (9305-24i) 上。

很难知道有多少驱动器在高峰期一起工作,但假设它们都用于读取,我得到以下计算最坏的情况(可能不现实?):

SAS3 单工带宽:(12 gbits/sec) x (8/10 encoding) = 1.2 GB/sec 原始数据最大值
=> 18 x SAS3 峰值最大值:(1.2 x 18) = 21.6 GB/sec
但 PCI-E 3.0 x 8 单工带宽:7.9 GB/秒

因此,乍一看,似乎阵列可能会因需求而受到严重限制,因为链路将阵列 IO 从 21.6 GB/秒降至 7.9 GB/秒:损失了 64% 的 HDD I/ O能力。

另一方面,文件服务器主要由 2 个最终用户使用:文件服务器本身需要以最高速度读取和写入作为其文件处理的一部分,以及通过 10 GbE 链接的任何其他设备,因此即使使用 2 个链路聚合,也不能消耗超过 2 GB/秒的单工。因此,无论如何,它可能无法使用超过 PCI-E 链接速度的一小部分。

(即使我通过 SSH 对服务器本身进行一些文件管理,2 GB/秒仍然是相当不错的速度,我可能不会抱怨。)

此外,无论 SAS 3 理论上可以提供什么,12 gbit = 1.2 GB/秒,即使从其内部缓存中读取最大,企业 HDD 似乎也不太可能利用 SAS 带宽。SSD 是的,但是 HDD 呢?不太可能?数据表中的最大读取速度通常为 200 - 300 GB/秒左右。

因此,我的问题是,鉴于 HBA 可以在 PCI-E 上提供高达近 8 GB/秒的带宽,而最终用户最多可以消耗 2 GB/秒,实际上是否会产生节流效应?

换句话说,考虑到最终用户有 2 GB/秒的聚合连接,理论上磁盘阵列在 PCIE 插槽处从 22 GB/秒限制到 8 GB/秒是否重要?还是 PCI-E 插槽限制仍然是一个问题,因为本地系统有时需要比终端设备带宽建议的更快的 I/O?

如果有限制,我可以将磁盘拆分为 2 个 HBA,但我想知道如何评估是否存在真正的问题,然后再牺牲第二个 PCIE 插槽来提高原始磁盘 IO 的标准。

bandwidth zfs pci-express sas bandwidth-measuring
  • 1 1 个回答
  • 528 Views

1 个回答

  • Voted
  1. Best Answer
    TomTom
    2020-07-08T05:37:23+08:002020-07-08T05:37:23+08:00

    啊,你有没有费心摆脱理论数字?你说得真好...

    峰值时 18 x SAS3 最大值:(1.2 x 18) = 21.6 GB/秒

    是的。现在给我看一个可以提供足够数据以实际饱和它的 SAS3 链接的单个硬盘(您谈论的是 HDD)。提示:缓存不是光盘。

    当您查看硬盘可以处理的真实数据数量时,您的论点就会失效。

    引用磁盘堆栈的 Max SAS 吞吐量?

    因此,一个 SAS 10K HDD 的 IOPS 约为 140。对于 8KB 块,吞吐量仅为 8 * 140 = 1120 KB/s。

    转动 x18,你最终会得到惊人的 20160kb/秒。舍入 20MB。那是您带宽的 0.1%。

    SAS 足以处理数百张光盘是有原因的。

    现在,当您将 SSD 添加到组合中时,这种情况确实会发生变化,是的,那么您很可能会淘汰 SAS。带一个 SSD。这就是为什么 U.2 外形尺寸实际上使用每个 SSD 的 PCIe 通道,并且有些情况下可以处理其中的 24 个。

    但是,只要您不谈论 SSD,您基本上就忽略了协议层(标准化)的吞吐量绝对无关紧要的事实,因为您的终端设备甚至无法接近开始饱和。

    由于您的带宽限制,您不会产生节流效果 - 您之所以会产生一个限制效果,是因为您基本上有一条高速公路供一些孤独的卡车使用。

    • 8

相关问题

  • 如何根据延迟和带宽确定最快的内存?

  • 如何在 Web 托管突发 MBPS 带宽与。固定的用户连接数?

  • 网络磁带恢复比磁盘到磁盘复制更快

  • 知道解析速度测试结果的方法吗?

  • BT Wholesale Ethernet 作为带宽选项的真实体验

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve