【RDMA】infiniband提升Redis性能|UC和RC时延比较|RC和UD性能比较

news/2024/11/8 5:45:43/

目录

infiniband应用到Redis之后的提升效果

WAN上InfiniBand传输服务的实验分析

RC和UD性能比较


UC和RC的区别

(https://www.mellanox.com/related-docs/prod_software/RDMA_Aware_Programming_user_manual.pdf)

RDMA 架构与实践 | https://houmin.cc/posts/454a90d3/

Transport Layer

传输层负责 Packet 的按序传输、根据 MTU 分段和很多传输层的服务(reliable connection, reliable datagram, unreliable connection, unreliable datagram, raw datagram)。InfiniBand 的传输层提供了一个巨大的提升,因为所有的函数都是在硬件中实现的。

InfiniBand 支持的服务

按照连接和可靠两个标准,可以划分出下图四种不同的传输模式:

  • 可靠连接(RC)一个QP只和另一个QP相连,消息通过一个QP的发送队列可靠地传输到另一个QP的接收队列。数据包按序交付,RC连接很类似于TCP连接。
  • 不可靠连接(UC)一个QP只和另一个QP相连,连接是不可靠的,所以数据包可能有丢失。传输层出错的消息不会进行重传,错误处理必须由高层的协议来进行。
  • 不可靠数据报(UD)一个 QP 可以和其它任意的 UD QP 进行数据传输和单包数据的接收。不保证按序性和交付性。交付的数据包可能被接收端丢弃。支持多播消息(一对多),UD连接很类似于UDP连接。

每种模式中可用的操作如下表所示,目前的RDMA硬件提供一种数据报传输:不可靠的数据报(UD),并且不支持memory verbs。

2.2.3 Unreliable Datagram (UD)

QP可以向任何其他UD-QP发送或从任何其他UD-QP接收单分组消息。

Ordering and delivery 不受保证,交付的数据包可能会被接收方丢弃。

支持多播消息(一对多)。

UD连接与UDP连接非常相似。

infiniband应用到Redis之后的提升效果

国防科技大学论文:

连接:http://ir.nsfc.gov.cn/paperDownload/ZD2959605.pdf

原文:http://ir.nsfc.gov.cn/paperDownload/ZD2959605.pdf

测试环境:

x86-64

2.10GHz Intel Xeon E5-2620L 6-core processors, featuring 32KB for L1 instruction and data caches, 256KB L2 and 15MB L3 cache.

16GB.

Mellanox MT27500 ConnectX-3 40 GbpsInfiniBand HCA

Red Hat Enterprise Linux Server 6 ,kernel 2.6.32.

测试工具:

InfiniBand verbs performance test tool

如:ib_send_lat, ib_read_lat, ib_write_lat

测试结果:

Inlined模式下,小于256个字节的小消息可以inline在WR中,以避免RDMA NIC通过DMAread提取小消息。这种方法可以有效地避免DMA操作从而减少延迟。

图1表明:

当消息size 小于256 bytes时,inlined 的SEND/RECV 可以明显的降低时延

不用 inlined 的SEND/RECV 操作在UD 传输时也可以轻微降低时延,但效果不明显。

图2表明,与SEND / RECV操作相似,在传输小消息时,使用inlined的RDMA write在RC传输和UC传输上具有较低的延迟。

图3表明,inlined的RDMA write 在UC传输的时延比RC传输的时延低。

而图4表明,非inlined的RDMA write在UC传输时不比RC传输具有更好的性能。

WAN上InfiniBand传输服务的实验分析 (RC|UC|WRITE|READ|SEND)

橡树岭国家实验室(美)测试结果

https://www.cs.fsu.edu/~yuw/pubs/2008-NAS-Yu.pdf

RC和UD性能比较

《Scalable Network Communication using Unreliable RDMA》Scalable Network Communication using Unreliable RDMA. (Conference) | OSTI.GOV

《最小化RDMA的通信的延迟》

https://tdk.bme.hu/VIK/DownloadPaper/sdf9


http://www.ppmy.cn/news/806717.html

相关文章

OneAuth 3月发布: Cloud UD 特性介绍

我们正在加速迈入云原生时代,AD作为2000年的产物,曾经辉煌的王者,正在变得陈旧。 01 AD并不是一个完美的方案 在过去所有应用和办公本地化的场景下,AD扮演者无与伦比的作用 负责登记内部所有的电脑、用户、群组 管理网络内的所有…

SAP QM 取消UD方法

SAP QM 取消UD方法 一、业务场景 1、 适用业务 通常检验批作完检验结果录入后,最后一步就是做UD判断,这一步的内容主要包括两方面:选定UD代码,表示检验将作如何的判定,如A表示接受,R表示拒绝,A1表示让步接受…;另外就是做库存转移,就是将检验状态的…

万能启动的最后的传说:UD三分区法部署教程!UD加UEFI!

2014年11月23日 UD三分区法全面教程,ud加efi,文字初稿 万能启动的最后的传说:UD三分区法部署教程!UD加UEFI! 特别提示:UD推荐用fbinstool20140513版部署fba文件,如不玩分区表项法则用世界末日版…

什么是UED

期间也有很多朋友问我,“UED 是干什么的”、“你竟然不写 PHP,去写 Javascript 了?”,等等问题 -- 的确不幸的是,作为“传统程序员”的我,之前对于前端开发的理解,都会笼统的认为那是“美工”的…

KF UD分解之UD分解基础篇【1】

在进行KF UD分解的时候,状态向量的方差-协方差阵P是用UD形式表示的,UD分解是其基础,而此篇文章的目的是能减少大家在进行UD分解的学习时间,如果能起到抛砖引玉的作用就再好不过了。 一、本章学习目的有三: 首先&#x…

PDK中的underdrive(UD)和overdrive(OD)管子与常用管子的区别是什么?

工艺库里有overdrive to 3.3V和underdrive to 2.5v的管子,但被告知和一般3.3V/2.5v的mos管又不一样,区别在哪里? 1.8V device和2.5V device都是指mosfet 耐压,这是两种完全不同的device,gate oxide, implant, 有无halo…

SAP中质检判定UD配置原理

质检中需要对收货产生的检验批进行质检和判定。如下图所示,在系统中通常使用QA11事务进行检验批结果判定。本文主要从系统应用配置层面了解使用决策的工作配置原理。仅从本公司应用角度出发,在应用环境上有一局限性。供参考! 收货时产生验检批…

什么是“UD”什么是fbinst启动盘制作?

1、UD概念 UD,是时空论坛bean前辈独创的一种特殊分区,这种特殊分区需要使用fbinst.exe来创建,可创建于U盘、存储卡等设备中。UD区具有隐藏属性,且只有fbinst.exe和grldr可以访问,这使得UD区具有天然的防毒特性。在如今…