[发明专利]一种基于小内存处理大规模数据的并行程序开发方法在审
申请号: | 201510013613.3 | 申请日: | 2015-01-12 |
公开(公告)号: | CN104572106A | 公开(公告)日: | 2015-04-29 |
发明(设计)人: | 高永虎;张清;张广勇;沈铂 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/38 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于小内存处理大规模数据的并行程序开发方法,包括以下步骤:在内存和外存开辟数据空间,并划分成若干数据块,将任务数据读入到划分的外存数据块中;设置读线程、计算线程、写线程;将外存作为内存的缓存来存储暂时不用计算的数据。将整个计算数据划分为合适的小数据块,存放到外存中。只有当需要计算到该数据块时才将其调度到内存中,实现了数据的动态调度,满足了小内存处理大数据的要求。该一种基于小内存处理大规模数据的并行程序开发方法与现有技术相比,充分利用外存的大容量的特点,动态调度计算数据给计算核心,达到计算的负载均衡,同时通信与计算异步执行,提高系统整体的性能,满足小内存处理大数据的要求。 | ||
搜索关键词: | 一种 基于 内存 处理 大规模 数据 并行 程序 开发 方法 | ||
【主权项】:
一种基于小内存处理大规模数据的并行程序开发方法,其特征在于,其具体实现过程为:在内存和外存开辟数据空间,并划分成若干数据块,将任务数据读入到划分的外存数据块中,计算与I/O线程操作不同的内存数据块与外存数据块交互,使得计算该数据块所需时间与I/O的时间相等;设置读线程、计算线程、写线程,主线程根据CPU的计算核心数量启动计算线程和I/O线程,主线程初始化队列和各个缓存区,然后启动上述各个线程;当需要计算划分到外存中的数据块时,读线程从内存中获取空的数据块缓冲区,然后将外存数据块中的数据读入到内存中;计算线程从内存中获取已经读入的数据块,再从内存中获取一个空的数据块缓存区,计算结果存入到空的数据块缓冲区中,将源数据的数据块缓存区清空;写线程获取计算线程计算完成后目的数据块缓存区中数据,将此数据写到外存中的缓冲区中,输出完毕后将目的数据块缓存区清空。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510013613.3/,转载请声明来源钻瓜专利网。
- 上一篇:一种业务表单配置的方法和装置
- 下一篇:一种移动终端页面图表的更新方法和装置