一种众核结构的大规模数据并行计算方法.pdf

上传人:Y94****206 文档编号:970131 上传时间:2018-03-22 格式:PDF 页数:6 大小:420.19KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910020725.6

申请日:

2009.04.21

公开号:

CN101556534A

公开日:

2009.10.14

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 9/38公开日:20091014|||实质审查的生效|||公开

IPC分类号:

G06F9/38; G06F9/46

主分类号:

G06F9/38

申请人:

浪潮电子信息产业股份有限公司

发明人:

胡雷钧; 王恩东; 吕文静; 王渭巍; 王守昊

地址:

250014山东省济南市历下区山大路224号

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

本发明提供一种利用同构众核的并行处理芯片进行大规模数据并行处理的计算方法,该方法是利用同构众核架构的并行处理器进行大规模无逻辑关系数据的并行计算处理。应用程序中各模块顺序运行在同构众核微处理器上,其中每个被重复多次执行、每次处理不同数据的子模块,被分离成为具有很多不同线程执行在众核上的函数。每个函数对应的众多线程通过一定的规则组织为线程组,这些线程组是对此函数派生出的众多线程的批处理,同一函数派生的所有线程都可以访问众核微处理器上的全局共享存储空间,各线程对线程组共享存储空间及全局共享存储空间的访问,包含对其上数据的读取及运算结果的写入,每个函数对应的众多线程同时处理不同的数据,以此达到高度的并行化。

权利要求书

1.  一种众核结构的大规模数据并行计算方法,其特征在于,计算步骤是:
1)应用程序中各模块按顺序在同构众核微处理器上运行,其中每个被重复多次执行、每次处理不同数据的子模块被分离成“众多线程”,由“众多线程”构成执行在众核上的函数,并进行计算;
2)每个函数对应的“众多线程”通过规则组织为线程组,每个线程组都是由函数派生出“众多线程”的批处理;
3)由函数派生出的“众多线程”在执行过程中,访问众核微处理器上的由线程私有存储空间、线程组共享存储空间和众核微处理器全局共享存储空间组成的三级存储空间中的数据;
4)各“众多线程”对众核微处理器上三级存储空间的访问,包含对数据的读取及运算结果的写入,每个函数对应的“众多线程”在众核微处理器上同时执行相同的指令和处理不同的数据,以此实现大规模数据的并行计算。

2.
  如权利要求1所述的众核结构的大规模数据并行计算方法,其特征在于,在众核微处理器上的每个“众多线程”对应的函数作为一个由线程组组成的批处理线程来执行。

3.
  如权利要求1所述的众核结构的大规模数据并行计算方法,其特征在于,由函数派生出的众多线程在执行过程中访问三级存储器空间的数据,线程私有存储空间是分配给每个线程的存储空间,此存储空间只有该线程能够进行访问,并与该线程具有相同的生命周期;每个线程组都允许被分配一块线程组共享存储空间,线程组共享存储空间供组内的线程进行访问,不允许其他线程组的线程访问,并且此组内共享存储空间与该线程组具有相同的生命周期;而同一函数派生的所有线程都能访问众核微处理器上的全局共享存储空间。

说明书

一种众核结构的大规模数据并行计算方法
技术领域
本发明涉及高性能计算方面大规模数据在众核处理器架构上的并行计算方法,更具体的说,涉及利用拥有众核处理器架构的设备进行大规模的无逻辑关系数据的并行计算处理方法。
背景技术
随着半导体工艺技术的飞速进步和体系结构的不断发展,加之对更高的计算性能的商业需求以及科研需求,使得处理器功能、微处理器架构以及多核、众核设计技术不断创新。众核微处理器内部包含若干个处理器,提供了比单核更强大的处理能力和更高的并行性。
在众核微处理器中,处理器核常用共享存储的的方法,来实现共享数据的交换。目前,众核微处理器的共享存储方法根据共享的存储层次不同可以分为:共享一级Cache、共享二级Cache和共享主存储器等三种。这些共享存储方法的特点是:整个存储空间统一编址,众核微处理器内含的各个处理器核对共享存储空间的访问具有同样的优先级。
因为以上特点,众核处理器在进行大规模数据处理时,由于其内含的各个处理器核对共享存储空间的访问具有同样的优先级,发生访存的冲突可能性大,会导致访存的延迟增加;并因为存储空间的统一编址,在没有使用根据共享存储法设计的并行编译器时,编译出来的程序有可能会发生地址冲突。
在密集型科学计算领域,最突出的特点是数据量大、计算操作的重复性强,在一般架构的众核处理器上实现的并行计算方法,并行度不高,数据的读写往往会滞延整个计算速度,因此亟需在众核处理器上寻找一种能减小数据传输延迟,进一步增加数据处理的并行度的并行计算方法。
发明内容
本发明要解决的技术问题是设计一种共享数据的传输延迟小,增大数据处理的并行度的并行计算方法,通过本发明的方法以减少众核微处理器中各个处理器对共享存储的访问冲突,充分发挥微处理器中各个处理器核的处理能力。
计算步骤是:
1)应用程序中各模块按顺序在同构众核微处理器上运行,其中每个被重复多次执行、每次处理不同数据的子模块被分离成“众多线程”,由“众多线程”构成执行在众核上的函数进行计算;也就是说,一些子模块被分离成很多线程构成的函数。但应用程序中各模块顺序运行时,不是所有的模块都被分解成“众多线程”,只有其中被重复多次执行、每次处理不同数据的子模块才会被分离。
2)每个函数对应的“众多线程”通过规则组织为线程组,每个线程组都是由函数派生出“众多线程”的批处理;
3)由函数派生出的“众多线程”在执行过程中,访问众核微处理器上的由线程私有存储空间、线程组共享存储空间和众核微处理器全局共享存储空间组成的三级存储空间中的数据;
4)各“众多线程”对众核微处理器上三级存储空间的访问,包含对数据的读取及运算结果的写入,每个函数对应的“众多线程”在众核微处理器上同时执行相同的指令和处理不同的数据,以此实现大规模数据的并行计算。
在众核微处理器上的每个“众多线程”对应的函数作为一个由线程组组成的批处理线程来执行。
由函数派生出的众多线程在执行过程中访问三级存储器空间的数据,线程私有存储空间是分配给每个线程的存储空间,此存储空间只有该线程能够进行访问,并与该线程具有相同的生命周期;每个线程组都允许被分配一块线程组共享存储空间,线程组共享存储空间供组内的线程进行访问,不允许其他线程组的线程访问,并且此组内共享存储空间与该线程组具有相同的生命周期;而同一函数派生的所有线程都能访问众核微处理器上的全局共享存储空间。
本发明的有益效果是:此方法应用在大规模无逻辑关系数据的并行处理上,由于数据规模巨大,串行执行同类运算需要重复很长时间,利用众核微处理器庞大的处理器数量,可以很大程度上同时进行大规模数据的并行计算。大量数据彼此间是互相独立的,计算出来的结果也互相独立,因此在计算时众核间不需要互相通信或互相等待彼此的计算结果,具有很高的计算效率,达到加速完成该类应用的目的。
附图说明
附图1为众核微处理器架构图;
附图2为并行计算方法的结构流程图。
具体实施方式
参照附图对本发明的众核结构的大规模数据并行计算方法作以下详细的说明。
本发明的同构众核结构的大规模数据并行计算方法,是应用程序中各模块按顺序运行在同构众核微处理器上,其中每个被重复多次执行、每次处理不同数据的子模块,被分离成为具有很多不同线程执行在众核上的函数。每个函数对应的众多线程通过一定的规则组织为线程组,这些线程组是对此函数派生出的众多线程的批处理。在众核微处理器上,每个多线程函数作为一个由线程组组成的批处理线程来执行,每个此类函数对应的众多线程上同时处理不同的数据,以此实现大规模数据的并行处理。
由函数派生出的众多线程在执行过程中可以访问多个存储空间的数据,具体划分为三级存储空间:线程私有存储空间,线程组共享存储空间和众核微处理器全局共享存储空间。其中,每个线程都被分配一块只有自己能够访问的存储空间,并且该存储空间与其所属线程具有相同的生命周期;每个线程组都被分配一块组内共享存储空间,组内共享存储空间可供组内的线程进行访问,不允许其他线程组的线程访问,并且组内共享存储空间与线程组具有相同的生命周期;同一函数派生的所有线程都可以访问众核微处理器上的全局共享存储空间。各线程对线程组共享存储空间及全局共享存储空间的访问,包含对其上数据的读取及线程运算结果的写入。
附图1为本发明采用的众核微处理器架构。众核中有所有线程共享的动态随机存储器(DRAM),及由应用程序为各线程组和各线程临时分配的Cache空间。
附图2为采用本发明并行计算方法的结构流程图。应用程序中各模块顺序运行在同构众核微处理器上,将其中每个被重复多次执行、每次处理不同数据的子模块,分离成为具有很多不同线程执行在众核上的函数。每个函数对应的众多线程通过一定的规则组织为线程组,这些线程组是对此函数派生出的众多线程的批处理。由应用程序将众多线程分发到各个多核上,每个核心上将顺序执行其上的线程,由于任务分解,每个线程上的计算会很快完成,以此通过庞大的众核数量及快速的多线程运算来达到高度并行化的效果。
并行众核处理器通过动态随机存储器交换计算数据,众核处理器上的多级Cache存储空间通过应用程序动态的分配给每个函数派生出的各线程组及组内线程,用作线程组共享存储空间和线程私有存储空间,在计算完毕后,将存储空间收回,等待为下个函数派生出的线程重新分配。每个函数派生出的众多线程上同时执行相同的指令,并运行不同的数据,各线程之间在计算时并不互相通信,只完成自身的计算任务,是典型的单指令流多数据流并行计算结构。
本发明所使用处理数据的众核并行处理芯片可以是中央处理器(CPU)或是图形处理器(GPU)。
“众多线程”是两个以上线程的简称。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。

一种众核结构的大规模数据并行计算方法.pdf_第1页
第1页 / 共6页
一种众核结构的大规模数据并行计算方法.pdf_第2页
第2页 / 共6页
一种众核结构的大规模数据并行计算方法.pdf_第3页
第3页 / 共6页
点击查看更多>>
资源描述

《一种众核结构的大规模数据并行计算方法.pdf》由会员分享,可在线阅读,更多相关《一种众核结构的大规模数据并行计算方法.pdf(6页珍藏版)》请在专利查询网上搜索。

本发明提供一种利用同构众核的并行处理芯片进行大规模数据并行处理的计算方法,该方法是利用同构众核架构的并行处理器进行大规模无逻辑关系数据的并行计算处理。应用程序中各模块顺序运行在同构众核微处理器上,其中每个被重复多次执行、每次处理不同数据的子模块,被分离成为具有很多不同线程执行在众核上的函数。每个函数对应的众多线程通过一定的规则组织为线程组,这些线程组是对此函数派生出的众多线程的批处理,同一函数派生。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1