[发明专利]获取任务完成通知的方法、装置及直接访问内存的方法在审

专利信息
申请号: 202211035562.0 申请日: 2022-08-26
公开(公告)号: CN115470014A 公开(公告)日: 2022-12-13
发明(设计)人: 王芳;冯丹;施展;陈思新;帅晓雨;安行 申请(专利权)人: 山东海量信息技术研究院;华中科技大学
主分类号: G06F9/54 分类号: G06F9/54;G06F9/48;G06F13/28
代理公司: 华中科技大学专利中心 42201 代理人: 夏倩;李智
地址: 250101 山东省济南*** 国省代码: 山东;37
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 获取 任务 完成 通知 方法 装置 直接 访问 内存
【说明书】:

发明公开了获取任务完成通知的方法、装置及直接访问内存的方法,属于计算机网络通信领域,包括:在系统启动时,设置两个过往计数记录,均初始化为计数上限最大值;在完成队列中有新的任务完成通知产生时,执行轮询步骤,包括:(S1)计算过往计数记录均值作为count_limit;(S2)设置计数器counter的值为0;(S3)对完成队列进行轮询,若有任务完成通知,则转入(S4);否则,转入(S5);(S4)批量获取任务完成通知后,转入(S2);(S5)将计数器counter的值加1后,判断是否满足countercount_limit,若是,则转入(S3);否则,退出轮询模式,并结束轮询步骤;根据负载对过往计数记录进行动态调整。本发明能够在不消耗过多CPU资源的情况下快速获取任务完成通知。

技术领域

本发明属于计算机网络通信领域,更具体地,涉及获取任务完成通知的方法、装置及直接访问内存的方法。

背景技术

远程直接内存访问(Remote Direct Memory Access,RDMA)技术是一种新型内存访问技术,可以实现从一台计算机的内存到另一台计算机内存的直接内存访问。

在传统的TCP/IP传输流程中,CPU需要将数据在用户空间和内核空间之间进行拷贝,数据包的封装解析同样需要CPU的全程参与,在数据量大的情形下,CPU使用率较高。相比传统的TCP/IP网络,RDMA具有三大优点:(1)旁路内核:I/O流程可绕过内核,即在用户态就可以把数据准备好并通知硬件发送和接收,避免了系统调用和上下文切换开销;(2)零拷贝:由于TCP/IP协议栈的天生缺陷,消息发送接收过程需要在用户空间和内核空间来回复制数据,而RDMA则不需要;(3)CPU卸载:可以在远端节点CPU不参与的情况下对内存进行读写,实际是将报文的封装和解析都交给了RDMA网卡完成。相比于TCP/IP,RDMA具有低延迟、高带宽等优点,因此在数据中心得到了广泛应用。

RDMA相比TCP/IP的优点之一便是CPU卸载,在传输过程中不需要远端CPU参与,但这仅限于使用RDMA READ/WRITE时,在其它环节还是需要CPU进行处理。

在RDMA资源初始化时需要CPU进行一系列操作,包括获取RDMA设备列表、打开RDMA设备、分配保护域、注册内存、创建完成队列和创建队列对等。相应的,进行资源销毁时也需要CPU调用相关接口执行功能。这部分CPU资源只在系统初始化和关闭时被使用,不影响传输流程且不能被省略。

在进行数据传输时,需要CPU将传输任务封装为RDMA工作请求(Work Request,WR)传递给RDMA网卡,如果使用RDMA SEND/RECV进行数据传输,还需要准备一批RECV WR传递到接收队列(Recv Queue,RQ)中。除了工作请求的传输,任务完成通知(Work Completion,WC)的处理同样需要CPU参与。当一个完成队列元素(Completion Queue Element,CQE)产生,CPU需要从完成队列(Completion Queue,CQ)中获取任务完成通知,然后对任务完成通知进行处理。处理完一个任务完成通知才算是一次传输任务真正完成。WR和WC的处理必须需要CPU的参与,而检查CQ中是否有新的CQE产生方式不同,对CPU占用率也不同。最基本的检查CQ中是否有新的CQE产生的方式有两种,即中断方式和轮询方式。

中断获取CQE的方式需要使用Epoll/Select/Kqueue等多路复用机制监听完成队列CQ绑定的完成通道(Completion Channel,CC)。当CQ中有新的CQE产生时,完成通道CC的文件描述符会产生可读事件,通过中断告知CPU,CQE获取线程被唤醒然后调用ibv_poll_cq()接口获取CQE。这种方式不需要线程时刻检查CQ中是否有CQE产生,不占据CPU资源,但是需要唤醒线程,因此延迟较高。

轮询获取CQE的方式会不断轮询CQ而不会陷入休眠。当CQ中有完成事件产生时,轮询线程依次获取并处理完成事件。这种获取CQE的方式虽然没有线程唤醒开销,延迟低、反应快,但是获取CQE线程会霸占CPU核心,长期的空转会浪费CPU资源。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东海量信息技术研究院;华中科技大学,未经山东海量信息技术研究院;华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202211035562.0/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top