【3.1 以太网RDMA优化--网卡缓存资源维度】

3.1 以太网RDMA优化--网卡缓存资源维度

RDMA是允许本端直接访问远端内存以提供低CPU开销、低延迟和高带宽的网络传输,非常适合当前AI的数据中心应用及云存储等交互系统的需求;目前工业和学术上的研究工作都是对以太网RDMA进行改进和优化,来充分发挥性能优势;主要从存储资源、可靠传输,应用相关3个方面来介绍对RDMA网卡的性能优化和功能增强;

3.1 面向存储资源上的优化

RDMA的特性要求需要网卡进行缓存QPC,MTT等元数据信息,预先注册MR等来支持网卡接收应用程序下发的RDMA操作和进行直接内存访问等;因此在存储空间的使用策略和注册访问机制是否高效等直接影响系统的整体性能。即对网卡上的缓存资源的优化;

3.1 网卡缓存资源

对于需要跑在多台机器之上的大规模分布式应用程序,即往往需要使用大量并发连接进行频繁的网络通信;但RDMA网卡上的缓存容量很有限,比如Mellanox ConnectX-5片上缓存容量为2MB,因此只能支持有限数量的QP连接,当活跃QP连接数量超过网卡缓存容量时,会由cache miss而需要在主机内存和网卡之间进行通信数据传输,从而带来性能带宽等就会显著下降;

针对这个问题:由于网卡上有限缓存资源导致的活跃QP数量上升而导致性能急剧下降的问题;目前的优化工作主要是:渐少网卡缓存信息、增加网卡cacha hit和减少可靠连接数这三个维度;其实本质上还是针对专门的应用场景来进行专门优化的;

3.1.1 减少网卡缓存信息

  • 减少网卡缓存信息:. 通过扩展报文头、上送主机内存、转移至远端等方式减少网卡存储的元数据信息.
    针对网卡上的通用数据结构和选择重传相关的数据结构:对于通用数据结构,SRNIC 采用全部存储(对 QPC)或部分缓存(对 MTT)的方式减少缓存未命中率,并设计 SQ 调度器,对预取但未使用的WQE 通过丢弃而非缓存的策略实现无 WQE 缓存的SQ 调度. 对于选择重传相关的数据结构,SRNIC 通过报文头扩展消除了未完成请求表和重排缓冲区;通过上送主机内存消除了位图部分,并将乱序报文的元数据信息送入软件重传模块进一步处理. SRNIC使用 4.4MB 缓存可支持 10 000 条 QP 连接,但其片上缓存需求与 QP 连接数仍呈线性关系,且上载软件重传的方式在丢包率较高时会引入较大 CPU 开销.

3.1.2 增加网卡缓存命中率

  • 增加网卡缓存命中率:通过高效的缓存管理、预取、连接调度等增加缓存命中率即减少缓存未未命中对性能的影响;
    在网卡中存储全部QPC的方式在避免出现QPC缓存未命中的情况影响该性能,、网卡中存储全部 QPC 的方式虽可以避免出现 QPC 缓存未命中的情况影响网卡性能,但也使得网卡可支持连接数受网卡 QPC 存储容量的限制,采用在网卡中部分缓存 QPC 的方式以支持更多连接数(可达 15 000). 对于使用 QPC 缓存带来的头阻塞问题(缓存未命中会阻塞对后续 QPC 访问请求的处理),csRNA 设计 QPC 调度器和管理模块实现非阻塞连接调度. 由调度器首先调度准备好的连接,由管理模块维护 QPC 缓存和处理 QPC 访问请求,并在缓存未命中时一方面暂存该请求并发起 DMA操作获取相应 QPC,另一方面直接处理后续命中的访问请求. 为避免语义错误,QPC 管理模块还解决不同 QPC 请求间的依赖关系以保证同一QP连接上的顺序处理。

3.1.3 减少可靠连接数

通过使用UD、连接共享等方式避免或减少建立可靠连接数,从而减少网卡需缓存的连接状态信息.

  • 使用UD而非RC传输方式可避免建立1对1的 QP连接;
  • 使 用 动 态 连 接 共 享(dynamically connectedtransport, DCT)、扩展可靠连接 (extended reliable connection,XRC)、跨进程/线程的连接共享等方式减少连接数;

【ref】

1.以太网RDMA网卡综述

相关推荐
ShiXZ2136 小时前
Redis 常用指令全集:redis-cli 实战速查手册
数据库·redis·缓存
Yang96118 小时前
光缆故障快速排查实操技巧,鼎讯信通 Smart-S3 OTDR 一线使用心得
网络
LDZKKJ9 小时前
OpenAI模型“越狱“入侵Hugging Face——AI安全史上的至暗时刻
网络·人工智能·安全
xqqxqxxq10 小时前
Java Socket 多人聊天室(私聊+群聊)技术笔记(V4版本)
java·网络·笔记
泡沫冰@11 小时前
上章节中文件的讲解
前端·网络·nginx
海域云-罗鹏13 小时前
分支访问总部ERP卡顿?如何部署SD-WAN组网解决方案
服务器·网络·安全
Shell运维手记14 小时前
ARP 协议超详细讲解(适合网工考试 / 运维理解)
运维·网络·网络协议·智能路由器
优化Henry14 小时前
学习笔记之VoNR语音业务注册流程
网络·笔记·学习·5g·信息与通信
ShineWinsu15 小时前
对于Linux:HTTP中cookie、session的解析
linux·网络·c++·网络协议·http·cookie·session
huainingning16 小时前
华三瘦AP切换为胖AP并配置无线功能
运维·网络·网络协议·tcp/ip