[发明专利]一种基于Mapreduce的多GPU协同计算方法有效

专利信息
申请号: 201210102834.4 申请日: 2012-04-10
公开(公告)号: CN102662639A 公开(公告)日: 2012-09-12
发明(设计)人: 吕相文;袁家斌;曾青华 申请(专利权)人: 南京航空航天大学
主分类号: G06F9/38 分类号: G06F9/38
代理公司: 南京经纬专利商标代理有限公司 32200 代理人: 艾中兰
地址: 210016 江*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开一种基于Mapreduce的多GPU协同计算方法,属计算机软件应用领域。对应于一般的GPU高性能计算和MapReduce并行计算的单层并行架构,本发明的编程模型采用双层的GPU和MapReduce并行架构,通过云计算并行计算的MapReduce编程模型,结合GPU+CPU异构体系结构的特征,而且帮助开发人员简化编程模型和复用已有的并行代码,减少编程的复杂度,并兼具一定的系统容灾能力,减少设备依赖性。本发明能在云计算平台或者一般的分布式计算系统中,使用GPU+MapReduce双重并行模型,实现多块GPU卡上的MapReduce任务并行处理。
搜索关键词: 一种 基于 mapreduce gpu 协同 计算方法
【主权项】:
一种基于Mapreduce的多GPU协同计算方法,其特征在于包括以下几个步骤:1)首先,客户端向管理阶段传递任务请求;2)然后,管理阶段中的命名节点NameNode负责管理文件系统的命名空间、计算阶段集群配置信息、存储块的位置信息;工作追踪器JobTracker负责对计算任务进行启动和调度,并且实现跟踪任务的执行情况和计算阶段的状态;3)在计算阶段中:①数据节点DataNode接收到来自命名节点NameNode的读写请求后,调用CPU,对海量数据进行读取扫描,再水平划分,分成M个固定大小的数据子集splits片段,M为自然数,其大小根据计算系统中计算节点的个数以及数据划分结果所决定;②空闲CPU的任务追踪器TaskTracker向工作追踪器JobTracker请求任务并得到响应之后,对M个数据子集split进行格式化,进一步分解成一批键/值对;③空闲GPU的任务追踪器TaskTracke向工作追踪器JobTracker请求任务并得到响应之后,对输入的每一个数据子集split,创建一个Map任务,将对应split中的每个记录对作为输入并进行扫描,并将其针对GPU上运行特定算法进行格式化,使用GPU的CUDA库实现一个局部组合器Combiner,产生并输出中间键/值对;④利用分区函数hash(key)mod R将Map函数产生的中间键/值对分成R个不同的分区,这里的R为一个小于M的自然数,接着GPU将中间结果按照key2进行相关排序,并将key2值相同的value2数据聚合在一起形成一个新列表,形成对, list(value2)为由相同key2值的value2所组成的数组,再将这些键/值对分成R个不同的分区,将每个分区分配到指定的Reduce任务;⑤被分配了Reduce任务的工作站调用空闲的CPU,启动CPU的任务追踪器TaskTracker去读取Map函数提交的数据,在遍历排序后的中间数据后,CPU的任务追踪器TaskTracker将每一个分区传递给空闲的GPU的任务追踪器TaskTracker,由其进行格式化,使用GPU并行技术做相应处理操作,得到Reduce任务的多个输出结果,启动合并操作获得最终的输出值;⑥GPU的任务追踪器TaskTracker将最终结果交给CPU调用部分。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

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

本文链接:http://www.vipzhuanli.com/patent/201210102834.4/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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