[发明专利]在运行时对堆数据进行池分配的方法有效

专利信息
申请号: 200910243917.3 申请日: 2009-12-25
公开(公告)号: CN101763308A 公开(公告)日: 2010-06-30
发明(设计)人: 王振江;武成岗 申请(专利权)人: 中国科学院计算技术研究所
主分类号: G06F12/02 分类号: G06F12/02
代理公司: 北京泛华伟业知识产权代理有限公司 11280 代理人: 王勇
地址: 100190 北*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 运行 数据 进行 分配 方法
【说明书】:

技术领域

发明涉及内存分配领域,特别涉及在运行时对堆数据进行池分配的 方法。

背景技术

随着处理器技术的快速发展,处理器速度和存储系统之间的速度差已 经越来越大。存储系统的速度正成为计算机整体运行速度进一步提高的瓶 颈。为了提高存储系统的速度,现有技术中提出了多种方法,其中的提高 数据的局部性的方法可以在不增加带宽需求的情况下提高存储系统的性 能,因而得到了广泛的应用。

堆(heap)是程序内存空间中的一块区域,程序运行时动态需要的内 存是从堆中进行分配的。例如C程序通过malloc和calloc等系统函数从堆 中申请内存,用free函数将申请的内存释放回堆中;C++程序通过new操 作申请,通过delete操作释放;Java程序也通过new操作申请,但是通过 垃圾收集器(Garbage Collector,GC)来自动释放不再使用的内存。在很 多程序中,堆数据占据了总数据的很大一部分,因此对堆数据进行数据布 局,对于提高数据的局部性,进而提高存储系统的性能具有很重要的意义。

以参考文献1“X.Huang,S.M.Blackburn,K.S.McKinley,J.E.B.Moss, Z.Wang,and P.Cheng.The garbage collection advantage,improving program locality.In Conference on Object Oriented Programming Systems Languages and Applications,pages 69-80,2004”为代表的很多现有的堆数据布局方法 的实现依赖于垃圾收集器(Garbage Collector,GC),由于GC可以在运行 时移动对象并更新它的相关引用,因此它可以根据需要动态进行数据布局 的工作。然而很多程序在运行时得不到GC的支持,此时由于别名的存在 将不能保证更新被移动数据的所有相关引用,所以在这种情况下移动一个 数据对象可能会引起程序错误。因此,为了避免程序出错,在分配数据时 就应当考虑数据的局部性,并把它们从合适的位置分配。池分配(Pool Allocation)是数据分配的一种方法,池分配是把所有堆数据对象分成不同 的组,分配堆数据对象时从所在组的“内存池”(Memory Pool,一段连续 的内存空间)里分配,以提高组内的数据对象的局部性。参考文献2“C. Lattner and V.Adve.Automatic pool allocation:Improving performance by controlling data structure layout in the heap.In Conference on Programming Language Design and Implementation,pages 129-142,2005”所公开的一种 现有的池分配方法是在编译器中使用启发式方法识别属于同一个数据结 构(如链表的所有节点,树的所有节点等)的堆数据对象,然后把它们从 同一个内存池里分配。这种方法依赖于程序源代码和特定的编译器。

参考文献3“S.Rubin,R.Bodik,and T.M.Chilimbi.An efficient profile analysis framework for data-layout optimizations.In Annual Symposium on Principles of Programming Languages,pages 140-153,2002”所公开的另外 一种事先训练的方法可以获得频繁的访存模式等信息,为各种优化(包括 池分配)提供依据。这种方法需要一次或多次专门的运行来进行训练,而 且训练也需要寻找有代表性的输入集。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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