电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

【2017年整理】存储系统性能 - 带宽计算

9页
  • 卖家[上传人]:豆浆
  • 文档编号:1003166
  • 上传时间:2017-05-25
  • 文档格式:DOC
  • 文档大小:283.50KB
  • / 9 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、介绍遇到过很多同行、客户问我:“xxx 存储系统究竟最大支持多少【IOPS】?”,这真不好说,因为手里确实没有测试数据。更何况,IOPS 与 i/o size、random/sequential、read/write ratio、App threading-model、response time baseline 等诸多因素相关,这些因素组合起来便可以描述一种类型的 I/O,我们称之为【I/O profile】。不同的因素组合得到的 IOPS 都不一样,通常我们看到的【标称 IOPS】都是在某一个固定组合下测得的,拿到你自己的生产环境中,未必能达到标称值。这也是为什么要做前期的 performance analysis/sizing 的缘故。直到有人这样问我:“xxx 存储系统究竟最大支持多少【带宽】?我愣了下,仔细想想,硬件性能极限就摆在那,基于 bandwidth = Frequency * bit-width,而且很多需要的数据都是公开的,东拼西凑应该可以算出个大概。我并不是 Performance 专家,从未做过 Performance Consulting/Sizing 方面

      2、的工作,最多也只是做过性能方面的分析/排错,所以这篇文章的准确性多半存在不靠谱的地方,读者斟酌着看吧。更多信息在读文章之前,建议先看一下如下计算公式和名词。计算公式: Real-world result = nominal * 70% - 我所标称的数据都是*70%( 性能计算:Little Law & Utilization Law)以尽可能接近实际数据,但如果另外提供了由资料获得的更为准确的数据,则以其为准。 Bandwidth = frequency * bit-width QPI 带宽:假设 QPI 频率=2.8 Ghz 2 bits/Hz (double data rate) 20 (QPI link width) (64/80) (data bits/flit bits) 2 (unidirectional send and receive operating simultaneously) 8 (bits/byte)= 22.4 GB/s术语: Westmere - Intel CPU 微架构的名称 GB/s - 每秒传输的 byte 数量 Gb/s - 每秒传输的 bi

      3、t 数量 GHz - 依据具体操作而言,可以是单位时间内运算的次数、单位时间内传输的次数(也可以是 GT/s) 1byte = 8bits IOH - I/O Hub,处于传统北桥的位置,是一颗桥接芯片。 QPI - QuickPathInterconnect,Intel 前端总线(FSB)的替代者,可以认为是AMD Hypertransport 的竞争对手 MCH - Memory Controller Hub,内置于 CPU 中的内存控制器,与 CPU 直接通信,无需走系统总线 PCI Express(Peripheral Component InteconnectExpress, PCIe) - 一种计算机扩展总线(Expansion bus),实现外围设备与计算机系统内部硬件(包括 CPU 和 RAM)之间的数据传输。 Overprovisioning - 比如 48*1Gbps access port 交换机,通常只有 4*1Gbps uplink,那么 overprovisioning 比 = 12:1 PCI-E 2.0 每条 lane 的理论带宽是 500MB/s X5

      4、8 相当于传统的北桥,只不过不再带有内存控制器,Code name = Tylersburg Lane - 一条 lane 由一对发送/接收差分线(differential line) 组成,共 4 根线,全双工双向字节传输。一个 PCIe slot 可以有 1-32 条 lane,以 x 前缀标识,通常最大是 x16。 Interconnect - PCIe 设备通过一条逻辑连接(interconnect)进行通信,该连接也称为Link。两个 PCIe 设备之间的 link 是一条点到点的通道,用于收发 PCI 请求。从物理层面看,一个 link 由一条或多条 Lane 组成。低速设备使用 single-lane link,高速设备使用更宽的 16-lane link。相关术语: address/data/control line 资源共享 -资源仲裁 时钟方案(Clock Scheme ) Serial BusPCI-E Capacity:Per lane (each direction): v1.x: 250 MB/s (2.5 GT/s) v2.x: 500 MB/s (5 G

      5、T/s) v3.0: 1 GB/s (8 GT/s) v4.0: 2 GB/s (16 GT/s)16 lane slot (each direction): v1.x: 4 GB/s (40 GT/s) v2.x: 8 GB/s (80 GT/s) v3.0: 16 GB/s (128 GT/s)性能是【端到端】的,中间任何一个环节都有自己的性能极限,它并不像一根均匀水管,端到端性能一致。存储系统显然是不均衡的 -overprovisioning。我将以中端存储系统为例,高端存储过于复杂,硬件结构可能都是私有的,而中端系统相对简单,就以一种双控制器、SAS后端、x86 架构的存储系统为例。为了方便名称引用,我们就称他为 Mr.Block_SAN 吧。控制器上看得见摸得着,又可以让我们算一算的东西也就是 CPU、内存、I/O 模块,不过我今天会带上一些极为重要但却容易忽略的组件。先上一张简图(字难看了点,见谅),这是极为简化的计算机系统构成,许多中端存储控制器也就这么回事儿。 CPU - 假设控制器采用 Intel Xeon-5600 系列处理器(Westmere Microarchi

      6、ecture ),例如Xeon 5660,支持 DDR3-1333。CPU Bandwidth = 2.8GHz * 64bits / 8 =22.4 GB/s。内存 Mr.Block_SAN 系统通过 DMA (Direct Memory Access) 直接在 Front End,内存以及Back end 之间传输数据。因此需要知道内存是否提供了足够的带宽。3* DDR3,1333MHz 带宽=29GB/s(通常内存带宽都是足够的),那么 bit width 应该是 64bits。Westmere 集成了内存控制器,因此极大的降低了 CPU 与内存通信的延迟。Mr.Block_SAN 采用【X58 IOH】替代原始的北桥芯片,X58 chipset 提供 36 lane PCIe2.0 = 17.578GB/s bandwidth(后面会有更多解释)。I/O模块 (SLIC )- SLIC 是很多人关心的,因为它直接收 /发送 I/O。需要注意的是一个SLIC 所能提供的带宽并不等于其所有端口带宽之和,还要看控制芯片和总线带宽。以 SAS SLIC 为例,一个 SAS SLIC 可

      7、能由两个 SAS Controller 组成,假设每个 SAS Controller 带宽大约 2200MB/s realworld,一个 SAS port = 4 * 6Gbps /8 * 70% =2100MB/s;一个 SAS Controller 控制 2*SAS port,可见单个 SAS Controller 无法处理两个同时满负荷运转的 SAS port(2200MB/s Overprovisioning!整个 SAS SLIC 又是通过【x8 PCI-E 2.0】 外围总线与【IOH】连接。x8 PCIe bandwidth = 8 * 500MB/s * 70% = 2800MB/s。如果两个 SAS Controller 满负荷运作的话,即 4400MB/s 2800MB/s,此时 x8 PCIe 总线是个瓶颈 - Overprovisioning!其实还可以计算后端磁盘的带宽和,假设一个 Bus 最多能连 250 块盘,若是 SAS 15K RPM则提供大约 12MB/s 的带宽(非顺序随机 64KB,读写未知),12 * 250 = 3000MB/s 2100M

      8、B/s - Overprovisioning!Tip:一个 SAS Controller 控制两个 SAS Port,所以如果只需要用到两根 bus,可以错开连接端口,从而使的得两个 SAS Controller 都能得到利用。同理,对任何类型的 SLIC,只要能够获得其端口速率、控制器带宽、 PCIe 带宽,即可知道瓶颈的位置。我选择算后端带宽的原因在于,前端你可以把容量设计的很大,但问题是流量过来【后端】能否吃下来?Cache Full 导致的 Flush 后端能否挡住?对后端带宽是个考验,所以以SAS 为例或许可以让读者联想到更多。PCI-Express PCIe 是著名的外围设备总线,用于连接高带宽设备与 CPU 通信,比如存储系统的 I/O 模块。X58 提供了 36 lane PCIe 2.0,因此 36*500/1024 = 17.578125GB/s 带宽。QPI & IOH QPI 通道带宽可以通过计算公式获得,我从手中资料直接获得的结果是 19-24GB/s(运行在不同频率下的值)。IOH 芯片总线频率是 12.8GB/s (List of Intel chipse

      9、ts 这里获得,但不确定总线频率是否就是指 IOH 本身的运行频率) Overprovisioning!OK,算完了,能回答 Mr.Block_SAN 最大能提供多少带宽了吗?看下来 CPU、RAM、QPI的带宽都上 20GB/s,留给前后端的 PCIe 总线总共也只有 18GB/s 不到,即便这样也已经overload 了 IOH(12GB/s )。所以看来整个系统的瓶颈在 IOH,只有 12GB/s。当然,你还得算一下 Mr.Block_SAN 是否支持足够多的外围设备(eg. I/O 模块)来完全填充这 12GB/s,如果本身就不支持那么多外围设备,那 IOH 也算不上是瓶颈了。另外,我看到已经有网友提出我的计算存在 8b/10b 编码换算错误,由于个人对硬件系统编码尚未透彻研究,理解这部分的读者可以自己对相应组件再乘以 80%(我记得应该是)去掉编码转换的开销。这篇文章更多的是一种举例式的说明,其中的数字和组件存在假设的情况。大家在计算的时候,可以参考这个思路将自己系统的参数和组件套用上去,从而计算出自己系统的带宽瓶颈。 注意 下图有点旧了,我把 PCIe 36 Lane 框成了 MAX Bandwidth,因为那个时候以为 IOH应该有足够的带宽,但后来发现可能不是这样,但图已经被我擦了,所以就不改了。参考 EMC 中文技术社区 List of Intel chipsets Intel QuickPath Interconnect Direct Media Interface List of Intel Xeon microprocessors Westmere (microarchitecture) Intel Tick-Tock Intel QuickPath Architecture Unified Storage 性能官方文档

      《【2017年整理】存储系统性能 - 带宽计算》由会员豆浆分享,可在线阅读,更多相关《【2017年整理】存储系统性能 - 带宽计算》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
     
    收藏店铺
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.