Infiniband 寻址 - 主机名到 IB 地址(无需 IBoIP)

2024-02-25

我刚刚开始熟悉 infiniband,我想了解可用于解决 infiniband 节点的方法。

基于代码的示例来自:RDMA 使用 IB 动词进行读写 http://thegeekinthecorner.wordpress.com/2010/09/28/rdma-read-and-write-with-ib-verbs/我可以使用 IPoIB 按 IP 或主机名寻址各个节点。

另一种方法是直接使用端口 GUID 地址。但看起来您必须查找这些内容,并且更类似于以太网 MAC 寻址。

然后是 LID 地址,由结构管理器分配的 16 位本地地址。如何在运行时使用和确定 LID 地址?例如,我运行 ibaddr 并获取 GID fe80::1a:4bff:ff0c:34e5 LID start 0x6 end 0x6

基本上,如果您不使用 IPoIB,如何将主机名转换为地址或类似名称?是否有主机文件或类似文件?


您列出的各种寻址方法之间存在基本区别:

  1. 用纯 IB 动词称呼
  2. 以某种抽象级别进行寻址

当数据包被“注入”到 IB 结构时,它仅通过 LID 进行路由,LID 是数据包本地路由标头的一部分。 LID 是本地 ID,16 位,由 OpenSM 分配(还有 GID 和全局路由头的情况,但让我们把这种情况放在一边 - 它不会让解释变得更容易,而且你显然不需要这个观点)。

这意味着,如果您使用纯 IB 动词编写应用程序,则需要通过 LID 来寻址端点。 您可以使用 ibv_query_port() 获取本地端口的 LID - 它是端口属性字段的一部分。

但您不必自己完成所有脏活 - 您可以使用 librdmacm(RDMA 连接管理器)等抽象库来创建端点之间的连接(“端点”我指的是 RC QP),然后使用纯动词来创建端点之间的连接。实际上发送/接收您的数据。

基本上,如果您不使用 IPoIB,如何将主机名转换为 地址或类似地址?是否有主机文件或类似文件?

你不能,而且没有:( 如果您经过较早的帖子 http://thegeekinthecorner.wordpress.com/2010/08/13/building-an-rdma-capable-application-with-ib-verbs-part-1-basics/在您链接到的博客上,您发现您需要:

  • 确定队列对的地址。
  • 将地址传送给其他节点(通过某种带外机制)。

这里的关键项目是“带外”。 例如,MPI 通过 SSH 交换所有这些地址(顺便说一句,SSH 也可以在 IPoIB 上运行),一旦交换了此信息并且所有 QP 都已连接,数据就开始通过这些 RC QP 流动。

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

Infiniband 寻址 - 主机名到 IB 地址(无需 IBoIP) 的相关文章

随机推荐

  • Mercurial中如何重复合并分支

    我们在工作中使用 Mercurial 我希望有一个类似于我使用 SVN 的设置 Trunk Tags 生产 Branches 由于 Mercurial 本身支持分支 因此我知道如何创建命名分支 但我找不到任何有关如何重复合并 Trunk 与
  • 如何在 recyclerView 向下滚动时折叠后隐藏工具栏

    如何在recyclerView向下滚动时折叠后隐藏工具栏 在recyclerView向上滚动时显示工具栏 并在列表末尾展开CollapsingToolbarLayout 现在 CollapsingToolbarLayout 只是折叠 工具栏
  • 如何从类路径加载属性文件? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions getResourceAsStrea
  • 在 django 中使用 Pre_delete 信号

    在我的应用程序中 我想跟踪所有正在删除的问题 所以我在我的模型文件中创建了一个类 表 class Deleted models Model question models IntegerField null True blank True
  • MySQL:从 sql 脚本文件在事务内执行 LOAD 语句

    我想从一些 csv 文件加载我的表格 我希望所有数据导入都是事务绑定的 即 如果任何数据导入中发生错误 其他表中加载的所有记录也会回滚 load 语句是从如下所示的 sql 文件执行的 SET AUTOCOMMIT 0 START TRAN
  • 带分类器的 Ivy 检索

    我有以下内容ivy xml
  • 如何给AutoHotkey脚本添加管理员权限?

    我将其编译为可执行文件 但要打开它 我必须右键单击并按 以管理员身份运行 我希望它每次运行时都请求管理员权限 但该怎么做呢 我不能这样做 因为当我将其复制到第二台计算机时它不起作用 尝试将其添加到自动执行部分 脚本顶部 If the scr
  • Ruby(猴子修补数组)

    我在猴子修补数组类时遇到问题 这项作业有8 specs被满足 我只会向您提供我遇到问题的部分的 RSpec 和书面要求 因为其他一切似乎都通过了 以下是 Array Class Monkey 补丁的书面要求 写一个新的new map的实例上
  • Flex 布局混合行和列

    我可以使用这个布局float容易地 但很难处理弹性盒 css a background red float left width 30 height 100px b c background green overflow hidden he
  • Asp.Net MVC + CSLA + DDD 可能吗

    前几天 我被要求审查一个基于 ASP NET MVC CSLA DDD 域驱动设计 的系统 该系统的第一个版本是基于ASP NET MVC CSLA 第二个版本是在此基础上添加了 DDD 原因是 嗯 我不知道是什么 当我查看两种不同架构的图
  • Anaconda Navigator 无法创建新环境

    我在工作中需要使用Python 今天刚刚安装了Anaconda Navigator 我可以毫无问题地打开 Navigator GUI 我可以打开 创建新环境 提示 我填写详细信息并点击 确定 导航器在基本 根 选项卡下为我请求的环境创建一个
  • 由于 gcc 编译器版本不受支持,Caffe 编译失败

    我挣扎着Caffe http caffe berkeleyvision org 汇编 不幸的是我没能编译它 Steps http caffe berkeleyvision org installation html cmake compil
  • 单击后防止 JButton repaint()

    我有一个按钮 我想在点击后更改背景 我的问题是按钮自动呼叫paintComponent 如何防止这种情况发生 我预计点击按钮后按钮将是蓝色的 但它仍然是红色的 package test import java awt Color impor
  • 使用 TI-MSP430 的 DSP 的 C/C++ 库或示例代码

    我正在开发一个小型 dsp 项目 进行音频处理 例如 奈奎斯特速率采样 过采样和欠采样 重建 该项目是使用我的板实时嵌入的 我当前使用的板 芯片是德州仪器 TI 的 msp430 系列 MSP430F5438 实验板http focus t
  • 获取目录时出现 System.UnauthorizedAccessException

    我对 C 非常陌生 所以我一直在从事一个小型宠物项目 我创建了一个小程序 用于将目录的大小与给定的大小进行比较 如果该目录相同或更大 则会记录该目录的路径 long size Convert ToInt32 Size 1024 1024 s
  • 来自 JSON 对象的动态 UI

    我正在尝试找到一种将动态 JSON 对象转换为有效 HTML 网页的方法 这个想法是能够将需要显示的内容从物联网设备推送到云端 并让用户能够输入和保存配置 json 看起来像这样 loginConfiguration username st
  • Groovy 的隐藏功能?

    Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案或互动 看起来 Groovy 在这个线程中被遗忘了 所以我只会向 Groovy 问同样的问题 尝试限制
  • 有没有办法让客户端脚本也从 Ara 框架中的代理/集群服务自动加载?

    首先 基于 SSR 的 MFE 的一个很棒的框架 我正在尝试 Ara Svelte Micro App1 Vue Micro App 2 Nuxt JS Appshell 如中所述https ara framework github io
  • C 字符串:简单问题

    我在下面初始化了三个变量 char c1 Hello char c2 H e l l o 0 char c3 Hello 我知道 c1 和 c2 是相同的 并且它们都是字符串 因为它们以 0 结尾 然而 c3与c1和c2不同 这是因为 c3
  • Infiniband 寻址 - 主机名到 IB 地址(无需 IBoIP)

    我刚刚开始熟悉 infiniband 我想了解可用于解决 infiniband 节点的方法 基于代码的示例来自 RDMA 使用 IB 动词进行读写 http thegeekinthecorner wordpress com 2010 09