摘要:本发明公开了一种GPU上基于内存统一管理的MapReduce实现方法,包括:初始化GPU的块大小为Bs,每个块中的线程数目N,输入数据量大小M;在全局内存上为GPU的每个块分配一个中间数据缓冲区,同时分配一个全局结果缓冲区;对p%的输入数据进行预处理,在中间数据缓冲区中收集map任务计算结果和归约频率信息;根据键值对的归约频率,对中间结果进行排序,保存键值对索引信息到排序结果缓冲区sort_index[]中;初始化GPU每个块对应的中间数据缓冲区为零,在共享内存中建立内存分配区sm_pool[];设置内存分配标记数组mem_flag[]。本发明在每个GPU块的中间数据缓冲区中,对全局内存和共享内存资源进行统一管理,减少了内存资源开销,避免了分开管理导致的键值对对重复查找和map任务重复计算开销。
- 专利类型发明专利
- 申请人华中科技大学;
- 发明人金海;郑然;刘凯;章勤;冯晓文;
- 地址430074 湖北省武汉市洪山区珞喻路1037号
- 申请号CN201310710435.0
- 申请时间2013年12月20日
- 申请公布号CN103714009B
- 申请公布时间2016年07月27日
- 分类号G06F12/02(2006.01)I;G06F17/30(2006.01)I;