[发明专利]一种内存数据的读写处理方法和装置有效
申请号: | 201310376301.X | 申请日: | 2013-08-26 |
公开(公告)号: | CN104424105B | 公开(公告)日: | 2017-08-25 |
发明(设计)人: | 董建波;张立新;侯锐;李晔 | 申请(专利权)人: | 华为技术有限公司;中国科学院计算技术研究所 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 北京中博世达专利商标代理有限公司11274 | 代理人: | 申健 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 数据 读写 处理 方法 装置 | ||
技术领域
本发明涉及计算机系统技术领域,尤其涉及一种内存数据的读写处理方法和装置。
背景技术
在多节点计算机系统中,本地和远程节点之间的数据交互效率直接影响整个系统的性能。远程直接内存访问(Remote Direct Memory Access,RDMA)是将内存数据从一个系统快速移动到远程系统存储器中,而不对操作系统造成任何影响,例如在没有CPU干预的情况下,将一个节点的内存数据直接传送到另一个节点的物理内存中,进而降低了数据传输对处理部件的影响,提升系统的性能。
在RDMA的读写操作中,内存与Cache(高速缓冲存储器)之间的数据交换粒度为一个Cache Line,大小为64Bytes(字节)或者128Bytes,如果将每一个Cache Line的数据打包成一个请求数据包发送出去,这种小规模的数据传递存在一定程度的链路带宽浪费,例如PCIE(Peripheral Component Interface Express,快捷外设互联标准)的数据包头可能具有16Bytes,而如果Payload(有效载荷)长度为16Bytes,则链路带宽的利用率仅有50%,因此多个数据量较小的远程数据访存操作会浪费较多的开销在数据请求包上,导致传输效率低下。
发明内容
本发明的实施例提供一种内存数据的读写处理方法和装置,提高了链路的利用效率。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明提供了一种内存数据的读写处理方法,包括:
获取各个待发送请求包,所述待发送请求包包括:读请求包,和/或写请求包;
解析所述各个待发送请求包的目的节点标识,并判断所述各个待发送请求包的目的节点标识是否相同;
将所述具有相同目的节点标识的至少两个待发送请求包分别作为子请求包,打包为一个合并请求包,所述合并请求包中包括公共包头和至少两个子请求包,所述公共包头中包含合并包标识、子请求包个数标识和源节点标识,所述合并包标识用于指示所述请求包为所述至少两个子请求包组合的合并包,所述子请求包个数标识用于指示所述合并请求包携带的子请求包的个数,所述子请求包包含子请求包包头和子请求信息;
将所述合并请求包发送给所述目的节点标识对应的目的节点,所述合并请求包用于指示所述目的节点对所述目的节点的内存数据进行读和/或写操作。
在第一方面的第一种可能的实现方式中,所述打包为一个合并请求包包括:
将所述合并包标识置为预定值,所述预定值指示所述请求包为所述至少两个子请求包组合的合并包;
获取子请求包的个数,将所述个数写入所述子请求包个数标识中。
结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述解析所述各个待发送请求包的目的节点标识,并判断所述各个待发送请求包的目的节点标识是否相同包括:
获取各个待发送请求包中携带的目的节点标识;
判断所述各个待发送请求包的目的节点标识是否相同;
所述打包为一个合并请求包包括:
提取所述子请求包中的目的节点标识,并将所述目的节点标识置于所述合并请求包的公共包头中。
结合第一方面或第一方面的第一种可能的实现方式,在第三种可能的实现方式中,所述解析所述各个待发送请求包的目的节点标识,并判断所述各个待发送请求包的目的节点标识是否相同包括:
获取各个待发送请求包中携带的目的节点内存地址;
根据所述目的节点内存地址,在地址归属表中查找所述目的节点内存地址归属的目的节点标识,所述地址归属表为目的节点内存地址与目的节点标识的对应关系表;
判断所述各个待发送请求包的目的节点标识是否相同。
结合第一方面的第二种可能的实现方式或第三种可能的实现方式,在第四种可能的实现方式中,所述子请求包包括写请求子包和/或读请求子包,写请求子包包头中包括识别所述写请求子包的写请求标识,所述写请求子包中的写请求信息包括待写入所述目的节点的数据以及待写入的所述目的节点内存地址,读请求子包包头中包括识别所述读请求子包的读请求标识,所述读请求子包中的读请求信息包括待读取数据所处的所述目的节点内存地址,所述方法还包括:
接收所述目的节点发送的写请求响应消息,所述写请求响应消息中包含写请求成功的所述写请求子包对应的写请求标识;和/或,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;中国科学院计算技术研究所,未经华为技术有限公司;中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310376301.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电子设备及内存划分方法
- 下一篇:一种兼容性测试方法及系统
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置