[发明专利]适用于纯用户态远端直接内存访问的优化方法有效
申请号: | 202110786480.9 | 申请日: | 2021-07-12 |
公开(公告)号: | CN113448897B | 公开(公告)日: | 2022-09-06 |
发明(设计)人: | 陈榕;吴静琦;陈海波;臧斌宇 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F13/28 | 分类号: | G06F13/28;G06F16/25 |
代理公司: | 上海汉声知识产权代理有限公司 31236 | 代理人: | 胡晶 |
地址: | 200240 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 适用于 用户 远端 直接 内存 访问 优化 方法 | ||
1.一种适用于纯用户态远端直接内存访问的数组优化方法,其特征在于,包括如下步骤:
数据读写步骤:客户端根据数据结构索引,期望读写指定数据;
索引计算步骤:客户端数据结构库计算获得索引对应的数据结构内存指针;
内存指针判断步骤:判断当前内存指针是否为上次访问的内存指针,如果判断结果为是,则执行偏移量计算步骤;如果判断结果为否,则执行数据写回步骤;
数据写回步骤:通过RDMA写请求将上次访问的内存指针在本地内存中的数据,写回远端服务器内存中;
空间释放步骤:释放上次访问的内存指针在本地的内存空间,为当前内存指针分配本地内存空间;
新指针判断步骤:判断当前内存指针是否为全新指针,如果是新指针,执行偏移量计算步骤;如果不是,执行远端数据写入步骤;
远端数据写入步骤:通过RDMA读请求将当前内存指针的远端数据写入本地内存;
偏移量计算步骤:根据数据结构索引,进一步计算在当前内存指针中的偏移量,对该地址数据进行读写。
2.根据权利要求1所述的适用于纯用户态远端直接内存访问的数组优化方法,其特征在于,数据读写步骤中,数组访问索引由上层应用调用本数据结构库接口时传入的参数。
3.根据权利要求1所述的适用于纯用户态远端直接内存访问的数组优化方法,其特征在于,索引计算步骤中,数据结构库用索引对单个内存指针指向区域大小取余数,可获得对应的内存指针。
4.根据权利要求1所述的适用于纯用户态远端直接内存访问的数组优化方法,其特征在于,内存指针判断步骤中,数据结构库中记录了上次访问的内存指针。
5.根据权利要求1所述的适用于纯用户态远端直接内存访问的数组优化方法,其特征在于,数据写回步骤中,上次访问的内存指针分别存储了服务器远端内存地址和本地内存地址,根据这两个地址和数据结构限定的内存指针指向区域大小,构造RDMA写请求。
6.根据权利要求1所述的适用于纯用户态远端直接内存访问的数组优化方法,其特征在于,空间释放步骤中,根据上次访问的内存指针中本地内存地址来释放本地内存,根据数据结构限定的内存指针指向区域大小计算获得当前内存指针所需内存大小。
7.根据权利要求1所述的适用于纯用户态远端直接内存访问的数组优化方法,其特征在于,新指针判断步骤中,新指针为数据结构扩容时产生的本地新内存指针。
8.根据权利要求1所述的适用于纯用户态远端直接内存访问的数组优化方法,其特征在于,远端数据写入步骤中,当前访问的内存指针存储了服务器远端内存地址,加上空间释放步骤中分配的本地内存空间,构造RDMA读请求。
9.根据权利要求1所述的适用于纯用户态远端直接内存访问的数组优化方法,其特征在于,偏移量计算步骤中,数据结构库用索引对单个内存指针指向区域大小取模,计算出在当前内存指针中的偏移量。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110786480.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种利用结晶水自释放制备纳米钛酸盐的方法
- 下一篇:一种组合式烤箱