问题标签 [rdma]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux-kernel - 内核程序 RDMA (krping)
我正在使用内核模块在 Infiniband 的内核空间中进行 RDMA 传输(krping.c
链接:git.openfabrics.org Git - ~sgrimberg/krping.git/summary)。我拥有的卡是 Mellanox ConnectX-4(驱动程序:mlx5)、Linux 内核版本:3.13、Ubuntu 12.04 和 Mellanox OFED 3.3。
代码似乎停留在获取mutex_lock
inmlx5_ib_query_qp
函数(在 mlx5_ib.h 中)。它是从krping.c
带有ib_req_notify_cq function
. 我能否获得有关如何解决此错误/死锁的帮助?我在这篇文章中附加了 dmesg 跟踪。
Dmesg 跟踪:
linux - ibv_poll_cq() 和 ib_poll_cq() 的问题
客户端:
服务器端:
客户端写在内核空间,服务端写在用户空间。wc.status 返回 12。这可能是什么问题?
memory - 远程直接内存访问 (RDMA) 中的崩溃场景
我的问题很简单:如果机器的 CPU/OS 发生故障,它的内存是否仍然可以通过远程机器的远程直接内存访问 (RDMA) 使用?
infiniband - SA 查询 Infiniband 中的问题
从ib_sa传递给函数ib_sa_path_rec_get的参数上下文是什么?
infiniband - InfiniBand 中的门铃是什么?
我正在阅读一份文件 ablut InfiniBand,它被称为《<a href="http://gg.qwghq.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0ahUKEwj5pYTRtq7PAhXHGZQKHfSODpcQFggeMAA&url=%68%74% 74%70%3A%2F%2F%69%6E%66%69%6E%69%62%61%6E%64%2E%73%6F%75%72%63%65%66%6F%72% 67%65%2E%6E%65%74%2F%48%57%44%72%69%76%65%72%73%2F%48%43%41%5F%44%44%4B%2F% 56%49%47%5F%53%46%2E%70%64%66&usg=AFQjCNEbpysn29AOR16rHbhFiYHl_qtfUA" rel="nofollow">InfiniBand™ Host Channel Adapter Verb Implementer's Guide》--英特尔在第 6.2.2 章中提到了一个名为“门铃”的概念,我在 IB 规范中没有找到有关此概念的任何信息。我想知道门铃是通知机制还是别的什么?有什么细节吗?谢谢!
infiniband - RDMA 快速内存注册 (FMR)
我正在开发一个广泛使用 RDMA 的系统(在 Mellanox 硬件上),并且希望能够更有效/更快地注册内存区域。
我查看了快速内存注册,我有几个问题:
FMR 会消失吗?从这里 [1] 看来它可能很快就会被删除/替换。
是否有任何使用此功能的用户空间代码?在线讨论这个问题的线程很少,而且主要是在内核模块的上下文中。
任何有用的指针将不胜感激。
infiniband - 使用动词 Memory Windows (ibv_alloc_mw) 时出错
我正在尝试使用内存窗口,并且在调用ibv_alloc_mw(具有两种类型的 MW)时得到EPERM (errno=1 )。
我有 mellanox ConnectX-3 卡和以下 OFED:
看来我的卡应该支持这个功能:
在 Mellanox OFED 中运行rping时出现相同的错误:
Mellanox 甚至支持 ibv_alloc_mw 吗?
编辑:
我可以访问 ConnectX-4 卡并遇到同样的错误。我还可以看到,每当我尝试使用内存窗口选项运行rping时,都会记录一个错误:
infiniband - 什么是 ibv_exp_post_send 和 ibv_exp_post_task 上下文中的生产者索引 (PI)?
我正在尝试使用RDMA Aware Programming User Manual附录 D 中描述的跨通道通信支持。不幸的是,我对某些函数参数的含义有些困惑。
我的问题
ibv_exp_post_send()
和函数分别采用工作请求结构的ibv_exp_post_task()
链表和工作请求结构的集合*。该结构中的 cq_count 和 wqe_count 是什么意思?
第一个工作请求/完成是否总是编号为 1,随后的工作请求/完成是线性增加的?还是有时会重置,例如在 ibv_exp_post_task() 调用之间或在处理某些请求后减少?ibv_exp_post_send 或 ibv_exp_post_task 之间的数字是否一致?
*从技术上讲,一个指向任务链表的指针,每个任务都包含一个工作请求的链表。
c - rdma_create_qp() 错误:无效参数
我是 rdma 编程的新手,目前正在使用 ib 动词和 rdma cma 设置一个简单的客户端/服务器,但已经碰壁了。我的服务器运行并等待连接,但我的客户端从未连接,因为它在 rdma_create_qp() 处失败。我不确定可能需要什么信息来帮助解决这个问题,但我会根据要求编辑所需的信息。(当前出现在我的代码中的相关信息的片段)
rdma - 远程直接内存访问 (RDMA) 中的内存保护
假设我有一个进程,它注册了一块具有 LOCAL WRITE 权限的 RDMA 可访问内存。
另一个(本地)随机进程是否具有对该物理内存的写权限?