NVMe over Fabrics with SPDK with iRDMA总结 - 2

2023-12-10 23:30
文章标签 总结 nvme fabrics spdk irdma

本文主要是介绍NVMe over Fabrics with SPDK with iRDMA总结 - 2,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

4.0 Configure and Test RDMA (All Servers) 配置并测试 RDMA(所有服务器)

4.1          Install Intel LAN Driver, RDMA Driver, and Related Dependencies安装英特尔 LAN 驱动程序、RDMA 驱动程序和相关依赖软件

Download the latest Linux driver package from Intel for the Device Under Test (DUT) and follow the installation procedure outlined in the included RDMA irdma README file to install the LAN driver, dependencies, and RDMA driver. 从英特尔为被测设备 (DUT) 下载最新的 Linux 驱动程序软件包,并按照随附的 RDMA irdma README 文件中概述的安装步骤安装 LAN 驱动程序、依赖软件和 RDMA 驱动程序。

Notes:提示

  • Intel® Ethernet 800 Series supports both RoCEv2 and iWARP RDMA technologies. Refer to the irdma README file for instructions on how to select which technology on driver load. 英特尔®以太网 800 系列支持 RoCEv2 和 iWARP RDMA 技术。有关如何在加载驱动程序时选择技术的说明,请参阅 irdma README 文件。
  • Intel® Ethernet Connection X722/Intel® Ethernet Network Adapter X722 supports only iWARP RDMA. 英特尔®以太网连接 X722/英特尔®以太网网络适配器 X722 仅支持 iWARP RDMA。

4.2 Upgrade NVM to Latest Image on NIC升级网卡上的NVM

Download the latest NVM upgrade package from Intel for the DUT and follow the included documentation to perform the upgrade. 从英特尔为 DUT 下载最新的 NVM 升级包,并按照随附的文档执行升级。

4.3 Disable SELinux and Firewall禁用 SELinux 和防火墙

When running performance testing, disabling the firewall and Security-Enhanced Linux (SELinux) is recommended for highest performance. 运行性能测试时,建议禁用防火墙和安全增强型 Linux (SELinux),以获得最高性能。

  1. Disable the firewall:禁用防火墙

systemctl stop firewalld systemctl mask firewalld

  1. Disable SELinux by editing the following file and changing enforcing to disabled (requires reboot): 编辑以下文件并将 enforcing 更改为 disabled(需要重启),从而禁用 SELinux:

vi /etc/selinux/conf

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

# enforcing - SELinux security policy is enforced.

# permissive - SELinux prints warnings instead of enforcing.

# disabled - No SELinux policy is loaded.

SELINUX=disabled

# SELINUXTYPE= can take one of three two values:

# targeted - Targeted processes are protected,

# minimum - Modification of targeted policy. Only selected processes are protected.

# mls - Multi Level Security protection. SELINUXTYPE=targeted

4.4 Enable Flow Control启用流量控制

It is recommended to enable Link-Level Flow Control (LFC) or Priority Flow Control (PFC) for RDMA performance testing for best performance. LFC is provided here as a reference for simplicity. 建议在 RDMA 性能测试中启用链路级流量控制 (LFC) 或优先级流量控制 (PFC),以获得最佳性能。为简单起见,此处提供 LFC 作为参考。

  1. Enable flow control on the adapter using the ethtool -A command: 使用 ethtool -A 命令在适配器上启用流量控制:

ethtool -A <ethx> rx on tx on

  1. Confirm the setting with the ethtool -a command: 使用 ethtool -a 命令确认设置:

ethtool -a <ethx>

You should see the following output: 输出结果如下

Pause parameters for <ethx>:

Autonegotiate: off

RX: on

TX: on

Note:      When connected to a switch, the switch port must also be configured to enable LFC on both Rx and Tx per port. To enable link-level flow control on the switch, refer to your switch vendor's documentation. Depending on the switch vendor, the technology may be called pause, LLFC, or flow control. 连接到交换机时,交换机端口也必须配置为在每个端口的 Rx 和 Tx 上启用 LFC。要在交换机上启用链路级流量控制,请参阅交换机供应商的文档。根据交换机供应商的不同,该技术可能被称为暂停、LLFC 或流量控制。

4.5  Check RDMA检查 RDMA

  1. Ensure that the RDMA interfaces listed on each server are shown when running the following command: ibv_devices确保在运行以下命令时显示每个服务器上的 RDMA 接口: ibv_devices
  2. Use rping to check for RDMA connectivity between target interface and host interface: 使用 rping 检查目标接口和主机接口之间的 RDMA 连接:
    1. Assign IPs to the RDMA interfaces on Target and Host. 为目标和主机上的 RDMA 接口分配 IP。
    2. On Target, run the following: 在 "目标主机 "上运行以下程序:

rping -sdVa <targetIP>

    1. On Host, run the following: 在客户端主机上运行以下程序:

rping -cdVa

这篇关于NVMe over Fabrics with SPDK with iRDMA总结 - 2的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/478692

相关文章

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

Python实现图片分割的多种方法总结

《Python实现图片分割的多种方法总结》图片分割是图像处理中的一个重要任务,它的目标是将图像划分为多个区域或者对象,本文为大家整理了一些常用的分割方法,大家可以根据需求自行选择... 目录1. 基于传统图像处理的分割方法(1) 使用固定阈值分割图片(2) 自适应阈值分割(3) 使用图像边缘检测分割(4)

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解

java常见报错及解决方案总结

《java常见报错及解决方案总结》:本文主要介绍Java编程中常见错误类型及示例,包括语法错误、空指针异常、数组下标越界、类型转换异常、文件未找到异常、除以零异常、非法线程操作异常、方法未定义异常... 目录1. 语法错误 (Syntax Errors)示例 1:解决方案:2. 空指针异常 (NullPoi

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

Python依赖库的几种离线安装方法总结

《Python依赖库的几种离线安装方法总结》:本文主要介绍如何在Python中使用pip工具进行依赖库的安装和管理,包括如何导出和导入依赖包列表、如何下载和安装单个或多个库包及其依赖,以及如何指定... 目录前言一、如何copy一个python环境二、如何下载一个包及其依赖并安装三、如何导出requirem

Rust格式化输出方式总结

《Rust格式化输出方式总结》Rust提供了强大的格式化输出功能,通过std::fmt模块和相关的宏来实现,主要的输出宏包括println!和format!,它们支持多种格式化占位符,如{}、{:?}... 目录Rust格式化输出方式基本的格式化输出格式化占位符Format 特性总结Rust格式化输出方式

Python中连接不同数据库的方法总结

《Python中连接不同数据库的方法总结》在数据驱动的现代应用开发中,Python凭借其丰富的库和强大的生态系统,成为连接各种数据库的理想编程语言,下面我们就来看看如何使用Python实现连接常用的几... 目录一、连接mysql数据库二、连接PostgreSQL数据库三、连接SQLite数据库四、连接Mo

Git提交代码详细流程及问题总结

《Git提交代码详细流程及问题总结》:本文主要介绍Git的三大分区,分别是工作区、暂存区和版本库,并详细描述了提交、推送、拉取代码和合并分支的流程,文中通过代码介绍的非常详解,需要的朋友可以参考下... 目录1.git 三大分区2.Git提交、推送、拉取代码、合并分支详细流程3.问题总结4.git push

Kubernetes常用命令大全近期总结

《Kubernetes常用命令大全近期总结》Kubernetes是用于大规模部署和管理这些容器的开源软件-在希腊语中,这个词还有“舵手”或“飞行员”的意思,使用Kubernetes(有时被称为“... 目录前言Kubernetes 的工作原理为什么要使用 Kubernetes?Kubernetes常用命令总