首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Linux上等待infiniband接收完成的最佳方式是什么?

在Linux上等待infiniband接收完成的最佳方式是什么?
EN

Stack Overflow用户
提问于 2014-03-18 02:21:15
回答 1查看 157关注 0票数 2

我们正在移植Isis2 (isis2.codeplex.com),以便更好地使用Infiniband动词并运行我们的代码。然而,IB是面向异步接收模型的,在该模型中,您发布一组接收缓冲区,然后,当接收完成时,您将处理接收的数据。

轮询速度很慢:如果我使用阻塞等待,比如2ms,那么在看到IB数据之前,我可能会延迟2ms。因此,这是一个解决方案,但一个糟糕的解决方案。我真正想要的是一种等到IB完成记录完成,然后让我的线程立即唤醒的方法(在Windows上,这很容易……在Linux上,这并不是那么自然)。有人知道这是怎么做的吗?在使用谓词时,没有任何IB文件描述符,因此显然不能使用select()

EN

回答 1

Stack Overflow用户

发布于 2014-03-18 02:42:36

没关系;我们刚刚意识到他们为此提供了一种方法(ibv_reg_notify_cq)。我们会试一试。不是世界上记录最好的API...

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22462271

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档