一种基于包括多核处理器的架构的并行规约方法及系统与流程

文档序号:37638507发布日期:2024-04-18 17:57阅读:8来源:国知局
一种基于包括多核处理器的架构的并行规约方法及系统与流程

本发明属于计算机,具体涉及一种基于包括多核处理器的架构的并行规约方法及系统。


背景技术:

1、并行规约算法也就是并行规约求和,主要是将大量数据聚合为一个值,然后向指定端或者用户进行展示,一般在gpu、dcu等包括全局内存、共享内存和多核处理器的架构中进行并行规约求和的操作,但是并行规约求和的处理速度不仅依赖于该架构中各硬件结构的性能,更取决于处理时依赖的并行规约程序能否有效利用架构中的硬件性能。

2、传统方案中的并行规约方法只是利用包括多核处理器的架构在处理并行计算上的优势,指令调度较为简单,未更好的发挥该架构的性能优势。

3、因此,如何提高包括多核处理器的架构在进行并行规约求和时的处理速度,更好的发挥该架构的性能,是本领域技术人员有待解决的技术问题。


技术实现思路

1、本发明的目的是为了解决现有技术中在进行并行规约求和时,未能更好的发挥出包括多核处理器的架构的性能,浪费了该架构的性能资源,以及进行并行规约求和的处理速度较慢的技术问题。

2、为实现上述技术目的,一方面,本发明提供了一种基于包括多核处理器的架构的并行规约方法,所述包括多核处理器的架构中还包括全局内存和共享内存,该方法包括:

3、读取所述全局内存中的所有数据元素,并按照预设相邻数量将相邻的数据元素进行累加后存储至所述共享内存中;

4、根据所述预设相邻数量将每个流式多处理器中的线程块缩减;

5、通过缩减后的线程块将所述共享内存中的累加后的数据元素进行规约求和。

6、进一步地,所述根据所述预设相邻数量修改每个流式多处理器中线程块的数量,具体包括:

7、获取所述线程块的原始大小;

8、将1和所述预设相邻数量的比值作为缩减值;

9、根据所述缩减值和原始大小将所述线程块缩减。

10、进一步地,所述方法还包括根据所述缩减值将所述线程块所占用的共享内存进行缩减。

11、进一步地,所述通过缩减后的线程块将所述共享内存中的累加数据元素进行规约求和,在进行规约求和时,所述线程块通过同步函数控制所述线程块内部所有的线程同步运行。

12、进一步地,所述通过缩减后的线程块将所述共享内存中的累加数据元素进行规约求和,在进行规约求和时,当所述线程块中规约到预设数量的线程时,将该预设数量的线程进行锁步执行。

13、进一步地,所述方法还包括当有读取和或写回指令时,调度未工作的线程束进行读取和或写回。

14、另一方面,本发明还提供了一种基于包括多核处理器的架构的并行规约系统,所述包括多核处理器的架构中还包括全局内存和共享内存,该系统包括:

15、累加模块,用于读取所述全局内存中的所有数据元素,并按照预设相邻数量将相邻的数据元素进行累加后存储至所述共享内存中;

16、缩减模块,用于根据所述预设相邻数量将每个流式多处理器中的线程块缩减;

17、求和模块,用于通过缩减后的线程块将所述共享内存中的累加后的数据元素进行规约求和。

18、进一步地,所述缩减模块,具体用于:

19、获取所述线程块的原始大小;

20、将1和所述预设相邻数量的比值作为缩减值;

21、根据所述缩减值和原始大小将所述线程块缩减。

22、本发明提供的一种包括多核处理器的架构的并行规约方法及系统,与现有技术相比,本方法先读取所述全局内存中的所有数据元素,并按照预设相邻数量将相邻的数据元素进行累加后存储至所述共享内存中;然后根据所述预设相邻数量将每个流式多处理器中的线程块缩减;最后通过缩减后的线程块将所述共享内存中的累加后的数据元素进行规约求和。通过增多流式多处理器上可以同时并行处理的线程块数,有效提高了包括多核处理器的架构在进行并行规约求和时的处理速度。



技术特征:

1.一种基于包括多核处理器的架构的并行规约方法,其特征在于,所述包括多核处理器的架构中还包括全局内存和共享内存,该方法包括:

2.如权利要求1所述的基于包括多核处理器的架构的并行规约方法,其特征在于,所述根据所述预设相邻数量修改每个流式多处理器中线程块的数量,具体包括:

3.如权利要求2所述的基于包括多核处理器的架构的并行规约方法,其特征在于,所述方法还包括根据所述缩减值将所述线程块所占用的共享内存进行缩减。

4.如权利要求1所述的基于包括多核处理器的架构的并行规约方法,其特征在于,所述通过缩减后的线程块将所述共享内存中的累加数据元素进行规约求和,在进行规约求和时,所述线程块通过同步函数控制所述线程块内部所有的线程同步运行。

5.如权利要求4所述的基于包括多核处理器的架构的并行规约方法,其特征在于,所述通过缩减后的线程块将所述共享内存中的累加数据元素进行规约求和,在进行规约求和时,当所述线程块中规约到预设数量的线程时,将该预设数量的线程进行锁步执行。

6.如权利要求1所述的基于包括多核处理器的架构的并行规约方法,其特征在于,所述方法还包括当有读取和或写回指令时,调度未工作的线程束进行读取和或写回。

7.一种基于包括多核处理器的架构的并行规约系统,其特征在于,所述包括多核处理器的架构中还包括全局内存和共享内存,该系统包括:

8.如权利要求7所述的基于包括多核处理器的架构的并行规约系统,其特征在于,所述缩减模块,具体用于:


技术总结
本发明公开了一种基于包括多核处理器的架构的并行规约方法及系统,该方法包括:本方法先读取所述全局内存中的所有数据元素,并按照预设相邻数量将相邻的数据元素进行累加后存储至所述共享内存中;然后根据所述预设相邻数量将每个流式多处理器中的线程块缩减;最后通过缩减后的线程块将所述共享内存中的累加后的数据元素进行规约求和。通过增多流式多处理器上可以同时并行处理的线程块数,有效提高了包括多核处理器的架构在进行并行规约求和时的处理速度。

技术研发人员:高伟,韩林,田会娟,柴赟达,徐金龙,陈亚浩
受保护的技术使用者:高伟
技术研发日:
技术公布日:2024/4/17
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1