[发明专利]用于数据流式计算的内存管理系统及其方法有效
申请号: | 201910030534.1 | 申请日: | 2017-05-05 |
公开(公告)号: | CN109460302B | 公开(公告)日: | 2020-01-21 |
发明(设计)人: | 戴文渊;杨强;陈雨强;焦英翔;石光川;涂威威 | 申请(专利权)人: | 第四范式(北京)技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/52;G06F12/02 |
代理公司: | 11286 北京铭硕知识产权代理有限公司 | 代理人: | 曾世骁;于翔 |
地址: | 100085 北京市海淀区上*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据流 内存 内存管理系统 内存回收装置 托管装置 操作系统 托管 内存分配装置 效率问题 回收 独立性 申请 结尾 释放 响应 保留 分配 | ||
提供了一种用于数据流式计算的内存管理系统及其方法。所述内存管理系统包括:内存回收装置,用于从数据流式计算的结尾回收原本应被释放给操作系统的内存;内存托管装置,用于托管由内存回收装置回收的内存;以及内存分配装置,用于响应于来自数据流式计算的开端的申请,向数据流式计算的开端分配由内存托管装置托管的内存。通过所述系统及方法,不仅克服了实际向操作系统申请内存的效率问题,而且保留了数据流式计算部分的相对独立性。
本申请是申请日为2017年5月5日、申请号为201710311937.4、题为“用于数据流式计算的内存管理系统及其方法”的专利申请的分案申请。
技术领域
本发明的示例性实施例总体说来涉及数据计算领域,更具体地说,涉及一种用于数据流式计算的内存管理系统以及利用所述内存管理系统来管理内存的方法。
背景技术
随着数据量增多,数据流式计算被广泛应用到各个计算系统当中。一般来说,处理非常大规模数据的算法并不会涉及很复杂的计算操作,不然数据量乘计算量之后是一个无法在常规时间内得到结果的任务。当计算操作并不太复杂时,数据的读写、网络延迟等便会成为数据流式计算的效率瓶颈。
图1示出现有技术中由操作系统在数据流式计算过程中管理内存分配的示例。具体说来,图1所示的系统包括数据流式计算装置200和系统内存管理装置300。这里,数据流式计算装置200用于执行数据流式计算,而系统内存管理装置300可由操作系统中负责内存管理的部分来充当。
具体说来,数据流式计算装置200需要在数据流式计算的开端向系统内存装置300申请内存分配,并在数据流式计算的结尾释放掉相应的内存。
然而,随着各种耗时被不断的优化,数据的读写当中内存申请释放的时间占比变得越来越大,逐渐成为数据流式计算的新效率瓶颈。这个瓶颈出现的原因是在数据流式计算装置200以多线程来执行计算的情况下,系统内存管理装置300仍按照单线程来管理系统内存的申请和释放,而当在多线程下频繁地申请释放内存时,管理系统内存的互斥锁便成为了很大的效率瓶颈。
目前出现了一些技术方案来解决多线程环境下的内存申请和释放问题,例如,公开号为CN104881324A的中国专利申请《一种多线程下的内存管理方法》通过实现一种多线程内存池来避免访问系统内存的单一互斥锁,通过并行的方法实现加速,该方案需要考虑的应用情况较多,实现逻辑复杂,特别是涉及底层的系统逻辑很难保证正确性和通用性。此外,在数据流式计算背景下,即便使用了多线程内存池,在计算框架申请和释放内存时,内存池还是做了实际的内存申请和释放操作,效率方面仍有不足。
发明内容
本发明的示例性实施例旨在克服现有流式计算中内存分配的效率瓶颈问题。
根据本发明的示例性实施例,提供一种用于数据流式计算的内存管理系统,包括:内存回收装置,用于从数据流式计算的结尾回收原本应被释放给操作系统的内存;内存托管装置,用于托管由内存回收装置回收的内存;以及内存分配装置,用于响应于来自数据流式计算的开端的申请,向数据流式计算的开端分配由内存托管装置托管的内存。
可选地,在所述内存管理系统中,内存分配装置在内存托管装置托管的内存之中不存在适于分配的可用内存时,向数据流式计算的开端分配从操作系统申请到的内存或向数据流式计算的开端发送用于指示其直接向操作系统申请内存的指示信号。
可选地,在所述内存管理系统中,内存回收装置通过回收在数据流式计算的结尾得到的对象来回收内存。
可选地,在所述内存管理系统中,内存托管装置包括一个或多个内存池,其中,每个内存池包含一个或多个由针对相同类型的对象的容器组成的容器队列。
可选地,在所述内存管理系统中,每个容器具有一个互斥锁。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于第四范式(北京)技术有限公司,未经第四范式(北京)技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910030534.1/2.html,转载请声明来源钻瓜专利网。