rdma网卡linux命令

fiy 其他 529

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    RDMA(Remote Direct Memory Access,远程直接内存访问)是一种高性能、低延迟的网络通信技术,它可以绕过操作系统内核,直接在应用程序和网络适配器之间进行数据传输,从而减少了数据传输的延迟和CPU开销。在RDMA网络中,网卡上的RDMA引擎提供了一组命令行工具,用于配置和管理RDMA网络适配器。在Linux系统中,可以使用以下命令来进行RDMA网卡的管理:

    1. ibstatus:该命令用于显示RDMA适配器的状态信息,包括适配器的名称、状态、速率等信息。
    示例:
    “`shell
    $ ibstatus
    “`

    2. ibv_devices:该命令用于列出系统中可用的RDMA适配器,并显示其名称、类型、GUID等信息。
    示例:
    “`shell
    $ ibv_devices
    “`

    3. ibv_devinfo:该命令用于显示指定RDMA适配器的详细信息,包括其Port、LID、PHYS_STATE等信息。
    示例:
    “`shell
    $ ibv_devinfo -d
    “`

    4. iblinkinfo:该命令用于显示RDMA网络中的设备之间的连接信息,包括设备的名称、端口号、状态等信息。
    示例:
    “`shell
    $ iblinkinfo
    “`

    5. ibv_rc_pingpong:该命令用于测试RDMA适配器之间的RDMA通信性能,可以用于检测RDMA适配器的功能是否正常。
    示例:
    “`shell
    $ ibv_rc_pingpong -d -g -p “`

    6. ibv_devreset:该命令用于重置指定的RDMA适配器。

    7. ibv_devices_reset:该命令用于重置所有可用的RDMA适配器。

    除了以上这些命令,还可以使用一些其他的RDMA管理工具,如opensm、ibping等。这些工具提供了更多的功能和配置选项,可以根据实际需求选择适合的工具来进行RDMA网卡的管理。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    RDMA(Remote Direct Memory Access)是一种高性能的网络传输技术,可以通过绕过操作系统内核,直接在两个远程计算机之间进行数据传输。如果需要在Linux系统中使用RDMA网卡,可以使用以下命令进行配置和管理:

    1. `ibstat`:用于显示网卡和端口的状态信息。此命令将显示关于网卡的名称、状态、端口号、速度和链路层状态等信息。

    2. `ibportstate`:用于显示特定端口的状态信息。可以使用此命令检查RDMA网卡的链路状态和支持的传输速度。

    3. `ibhosts`:显示与本地主机连接的所有远程主机的信息。该命令将显示每个远程主机的名称、GUID(全局唯一标识符)和端口。

    4. `ibstat -p `:显示指定端口的详细状态信息。可以使用此命令获取有关特定端口的更详细信息,包括链路状态、传输速度和硬件特性等。

    5. `ibdiagnet`:此命令用于运行RDMA网络的自诊断测试。可以使用此命令检查RDMA网络的连通性和性能。

    以上是一些常用的命令来管理和配置RDMA网卡,这些命令可以帮助用户监视和调整RDMA网络的状态,并进行一些自我诊断测试。在使用这些命令之前,请确保已经安装了RDMA驱动程序和相关的软件包。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    RDMA(远程直接内存访问)是一种高性能的网络通信技术,可以直接从主机内存中读取和写入数据,减少了CPU的开销,提升了数据传输的效率。下面介绍一些在Linux系统上使用RDMA网卡的常用命令。

    1. 显示和控制RDMA设备
    使用`ibv_devices`命令可以显示系统中安装的RDMA设备:
    “`
    $ ibv_devices
    “`
    可以看到类似下面的输出:
    “`
    device node GUID
    —— —————-
    mlx4_0 0002c90300375487
    “`
    这里显示了一个RDMA设备mlx4_0和对应的节点GUID。

    2. 查询RDMA设备的属性
    使用`ibv_devinfo`命令可以查询RDMA设备的属性和状态:
    “`
    $ ibv_devinfo -d <设备名称>
    “`
    例如:
    “`
    $ ibv_devinfo -d mlx4_0
    “`
    可以看到设备的详细信息,包括设备名称、节点GUID、LID、状态、端口等。

    3. 查询和设置RDMA端口属性
    使用`ibportstate`命令可以查询指定RDMA设备端口的状态:
    “`
    $ ibportstate -d <设备名称> -p <端口号>
    “`
    例如:
    “`
    $ ibportstate -d mlx4_0 -p 1
    “`
    可以看到端口的状态,包括速度、宽度、LID等。

    使用`ibportstate`命令还可以设置RDMA设备端口的状态:
    “`
    $ ibportstate -d <设备名称> -p <端口号> -s <状态>
    “`
    其中,`<状态>`可以是down、init、armed等,用于禁用或启用RDMA端口。

    4. 创建和删除RDMA设备的关联
    使用`ibv_rc_pingpong`命令可以创建两个RDMA设备之间的关联,并测试其通信性能:
    “`
    $ ibv_rc_pingpong -d <本地设备名称> -g <本地设备的GUID> -g <远程设备的GUID> -p <本地设备的端口号> -P <远程设备的端口号>
    “`
    例如:
    “`
    $ ibv_rc_pingpong -d mlx4_0 -g 0002c90300375487 -g 0002c90300375744 -p 1 -P 1
    “`
    上述命令将本地设备mlx4_0的端口1与远程设备的端口1关联起来,并进行pingpong测试。

    使用`ibv_rc_pingpong`命令还可以通过`-c`参数指定测试的次数,默认是1000次。

    使用`ibv_rc_pingpong`命令可以评估RDMA设备之间的通信性能,包括延迟和带宽。测试结果将显示在命令行中。

    5. 配置和管理RDMA网络
    使用`ib_addr`命令可以查询和配置RDMA设备的网络地址信息:
    “`
    $ ib_addr
    “`
    可以看到类似下面的输出:
    “`
    ca:mlx4_0
    port:1 state:ACTIVE
    ..:..:..:..:..:.. lid:10 sl:0x1:4
    ..:..:..:..:..:.. lid:15 sl:0x1:4
    ca:mlx4_0
    port:2 state:ACTIVE
    ..:..:..:..:..:.. lid:20 sl:0x1:4
    ..:..:..:..:..:.. lid:25 sl:0x1:4
    “`
    这里显示了两个RDMA设备和对应的网络地址信息,包括设备名称、端口号、状态、LID等。

    使用`ib_addr`命令还可以设置RDMA设备的网络地址信息:
    “`
    $ ib_addr set -p <端口号> -g <设备名称>
    “`
    例如:
    “`
    $ ib_addr set -p 1 -g 00:11:22:33:44:55 mlx4_0
    “`
    上述命令将RDMA设备mlx4_0的端口1的MAC地址设置为00:11:22:33:44:55。

    综上所述,这些命令可以在Linux系统上管理和配置RDMA网卡设备,查询设备属性、端口状态和网络地址信息,并通过pingpong测试评估通信性能。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部