brpc icon indicating copy to clipboard operation
brpc copied to clipboard

是否有计划支持 RDMA SRQ模式

Open lh2debug opened this issue 1 month ago • 0 comments

Is your feature request related to a problem?

在分布式系统中,bRPC 的 RDMA 实现使用每个 QP 独立 RQ 的模式,导致内存消耗随连接数线性增长。例如,应用的服务节点同时触发 RDMA 内存池扩容时,有可能因为内存不足而扩容失败。

Describe the solution you'd like

在 bRPC 中添加对 RDMA SRQ 模式的支持。通过全局共享 RQ,让多个 QP 复用接收缓冲区,减少预分配内存占用。关键改动包括:

  • 全局初始化 SRQ 资源。
  • QP 创建时绑定 SRQ。
  • 修改接收处理逻辑,支持共享缓冲区管理和动态分配。
  • 添加配置开关,允许用户选择模式。

Describe alternatives you've considered

  • 调整现有参数(如增大 rdma_memory_pool_initial_size_mb),但无法根本解决问题,且可能浪费内存。
  • 启用 RDMA ODP,但并非所有网卡支持,且不解决 RQ 预分配问题。

Additional context/screenshots

lh2debug avatar Nov 22 '25 02:11 lh2debug