centos linux 安装RDMA Soft-RoCE

2023-11-17

RoCE既可以通过硬件实现,也可以通过软件实现。 Soft-RoCE 是 RDMA 传输的软件实现。

什么是Soft-RoCE

softRoCE的目标是在所有支持以太网的设备上都可以部署RDMA传输,可以使不具备RoCE能力的硬件和支持RoCE的硬件间进行基于IB语义的交流。

大白话就是模拟RDMA的软件栈,使得在没有RDMA网卡的环境上,也可以运行基于RDMA写的传输程序。

但是因为RDMA网卡的一大特色之一就是,传输的动作是网卡上的芯片处理的,普通网卡没有这样的硬件,所以只是实现了0拷贝,而没有真正的RDMA网卡的CPU减负功效。

更多关于Soft-RoCE,见:http://t.csdn.cn/SuM9m

http://t.csdn.cn/fD7iy

604 * 821

安装 (内核应当高于4.11)

红帽系统

Soft-RoCE 作为 upstream kernel 4.8(或更高版本)的一部分发布。

 从 Red Hat Enterprise Linux 7.4 开始,Soft-RoCE 驱动程序已合并到内核中。用户空间驱动程序也合并到 rdma-core 包中。 Soft-RoCE 也称为 RXE。要启动、停止和配置 RXE,请使用 rxe_cfg 脚本。要查看 rxe_cfg 的选项,请输入 rxe_cfg help。

所以红帽系统的可以直接去配置,教程:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-configuring_soft-_roce

其他系统可以通过安装 Mellanox的OFED 获得Soft-RoCE

可以使用 Mellanox OFED 4.0 或上游驱动程序。如果安装 MLNX_OFED 4.0,您将自动获取 Soft-RoCE 内核模块和用户空间库。 (rdma_rxe模块在mellanox驱动包的kmod-mlnx-ofa_kernel 这个rpm包里面)

chatGPT的教程

要在CentOS上安装Soft-RoCE(RDMA over Ethernet),请按照以下步骤进行操作:

1. 检查内核版本
   在终端中运行以下命令,检查内核版本是否支持Soft-RoCE:
   ```
   uname -r
   ```

   如果内核版本低于4.11,您需要先升级内核。您可以使用`yum`命令安装最新的内核版本。

2. 安装依赖软件包
   在终端中运行以下命令,安装软件包以满足Soft-RoCE的依赖关系:
   ```
   sudo yum install rdma libibverbs libibverbs-utils librdmacm librdmacm-utils
   ```

3. 加载内核模块
   在终端中运行以下命令,加载相关的内核模块:
   ```
   sudo modprobe rdma_rxe
   sudo modprobe ib_core
   sudo modprobe ib_cm
   ```

4. 配置Soft-RoCE
   在终端中运行以下命令,编辑RoCE的配置文件:
   ```
   sudo vi /etc/rdma/rdma.conf
   ```

   将以下行添加到配置文件中:
   ```
   # Enable RoCE
   RDMA_LOAD=yes
   ```

   保存并关闭文件。

5. 启动Soft-RoCE服务
   在终端中运行以下命令,启动Soft-RoCE服务:
   ```
   sudo systemctl start rdma
   ```

   如果您希望Soft-RoCE在系统引导时自动启动,还可以运行以下命令:
   ```
   sudo systemctl enable rdma
   ```

6. 验证Soft-RoCE状态
   运行以下命令,验证Soft-RoCE的状态:
   ```
   sudo rxe_cfg
   ```

   如果Soft-RoCE已成功配置和启动,您将看到适配器和端口的详细信息。

恭喜您,现在已成功在CentOS上安装Soft-RoCE。您可以使用Soft-RoCE进行RDMA over Ethernet通信了。请确保您的网络硬件和驱动程序支持RoCE。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

centos linux 安装RDMA Soft-RoCE 的相关文章

  • ubuntu:升级软件(cmake)-版本消歧(本地编译)[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我的机器上安装了 cmake 2 8 0 来自 ubuntu 软件包 二进制文件放置在 usr bin cmake 中 我需要将 cmake 版本至少
  • 在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403

    我使用的是 Linux Elementary OS 并在 opt 中安装了 lampp My CSS and JS won t load When I inspect my page through browser The console
  • 在脚本内使用不带密码的 sudo

    由于某种原因 我需要作为用户在没有 sudo 的情况下运行脚本 script sh 该脚本需要 root 权限才能工作 我认为将 sudo 放入 script sh 中是唯一的解决方案 让我们举个例子 script sh bin sh su
  • 如何使用 GOPATH 的 Samba 服务器位置?

    我正在尝试将 GOPATH 设置为共享网络文件夹 当我进入 export GOPATH smb path to shared folder I get go GOPATH entry is relative must be absolute
  • CoAP数据包的大小是多少?

    我是这项技术的新手 有人可以帮助我了解一些疑问吗 Q 1 CoAP数据包的大小是多少 我知道有 4 字节固定标头 但是包括标头 选项和负载在内的最大大小限制是多少 Q 2 有像MQTT那样的Keep Alive的概念吗 它在UDP上工作 它
  • Linux 上的用户空间能否实现本机代码的抢占式多任务处理?

    我想知道是否可以在 Linux 用户空间的单个进程中实现本机代码的抢占式多任务处理 也就是说 从外部暂停一些正在运行的本机代码 保存上下文 交换到不同的上下文 然后恢复执行 所有这些都由用户空间精心安排 但使用可能进入内核的调用 我认为这可
  • Linux:如何设置进程的时区?

    我需要设置在 Linux 机器上启动的各个进程的时区 我尝试设置TZ变量 在本地上下文中 但它不起作用 有没有一种方法可以使用与系统日期不同的系统日期从命令行运行应用程序 这可能听起来很愚蠢 但我需要一种sandbox系统日期将被更改的地方
  • 进程退出后 POSIX 名称信号量不会释放

    我正在尝试使用 POSIX 命名信号量进行跨进程同步 我注意到进程死亡或退出后 信号量仍然被系统打开 在进程 打开它 死亡或退出后是否有办法使其关闭 释放 早期的讨论在这里 当将信号量递减至零的进程崩溃时 如何恢复信号量 https sta
  • 监视目录的更改

    很像一个类似的问题 https stackoverflow com questions 112276 directory modification monitoring 我正在尝试监视 Linux 机器上的目录以添加新文件 并希望在这些新文
  • 子目录中的头文件(例如 gtk/gtk.h 与 gtk-2.0/gtk/gtk.h)

    我正在尝试使用 GTK 构建一个 hello world 其中包括以下行 include
  • C++ Boost ASIO 简单的周期性定时器?

    我想要一个非常简单的周期性计时器每 50 毫秒调用我的代码 我可以创建一个始终休眠 50 毫秒的线程 但这很痛苦 我可以开始研究用于制作计时器的 Linux API 但它不可移植 I d like使用升压 我只是不确定这是否可能 boost
  • 如何构建任务“gems:install”

    我正在将 Rails 应用程序部署到 Linux 服务器 并且缺少一些 rake 任务 包括 rake gems install 和 rake db 我正在运行来自 GEM 的 Rails 2 3 4 为什么是这样 我该如何解决 我可以以某
  • 如何查询X11显示分辨率?

    这似乎是一个简单的问题 但我找不到答案 如何查询 通过 X11 存在哪些监视器及其分辨率 查看显示宏 http tronche com gui x xlib display display macros html and 屏幕宏 http
  • PyQt5 - 无法使用 QVideoWidget 播放视频

    from PyQt5 QtWidgets import from PyQt5 QtMultimedia import from PyQt5 QtMultimediaWidgets import from PyQt5 QtCore impor
  • 捕获实时流量时如何开启纳秒精度?

    如何告诉 libpcap v1 6 2 将纳秒值存储在struct pcap pkthdr ts tv usec 而不是微秒值 捕获实时数据包时 Note This question is similar to How to enable
  • 为什么C Clock()返回0

    我有这样的事情 clock t start end start clock something else end clock printf nClock cycles are d d n start end 我总是得到输出 时钟周期是 0
  • 在 unix 中编译 dhrystone 时出错

    我是使用基准测试和 makefile 的新手 我已经从下面的链接下载了 Dhrystone 基准测试 我正在尝试编译它 但我遇到了奇怪的错误 我尝试解决它 但没有成功 有人可以帮助我运行 dhrystone 基准测试吗 以下是我尝试编译的两
  • 无法在 Perl 中找到 DBI.pm 模块

    我使用的是 CentOS 并且已经安装了 Perl 5 20 并且默认情况下存在 Perl 5 10 我正在使用 Perl 5 20 版本来执行 Perl 代码 我尝试使用 DBI 模块并收到此错误 root localhost perl
  • Awk - 计算两个文件之间的每个唯一值和匹配值

    我有两个文件 首先 我尝试获取第 4 列中每个唯一字段的计数 然后匹配第二个文件的第二列中的唯一字段值 File1 第 4 列的每个唯一值和 File2 第 2 列包含我需要在两个文件之间匹配的值 所以本质上 我试图 gt 如果 file2
  • 限制 Imagemagick 使用的空间和内存

    我在 Rails 应用程序上使用 Imagemagick 使用 rmagick 但我的服务器 Ubuntu 不是很大 当我启动转换进程时 Imagemagick 占据了我的服务器 30GB HDD 的所有位置 内存 我想限制内存和 tmp

随机推荐