System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于SMT和SIMT相结合的并发性能提升方法及系统技术方案_技高网

基于SMT和SIMT相结合的并发性能提升方法及系统技术方案

技术编号:40129503 阅读:11 留言:0更新日期:2024-01-23 21:54
本发明专利技术提供了一种基于SMT和SIMT相结合的并发性能提升方法及系统,将所有线程分成多个线程组,每个线程组内包括多个线程;每个线程组内的所有线程使用同一个PC寄存器,每个PC寄存器对应使用多个ALU单元。本发明专利技术的有益效果是:本发明专利技术通过使用SMT和SIMT相结合的方式来提升微架构的设计,优化结构,增强灵活性,进而解决了现有PC寄存器资源浪费,扩展灵活性差,不利于提升性能的技术缺陷。

【技术实现步骤摘要】

本专利技术涉及计算机,尤其涉及基于smt和simt相结合的并发性能提升方法及系统。


技术介绍

1、当前mvp微架构中使用smt(simultaneously multiple thread)模式来运行多线程。

2、使用smt模式运行多线程的技术方案存在一定的缺陷:(1)同时并发的每个线程都独占一个pc寄存器,存在资源浪费;(2)在需要扩展线程数量的时候不够灵活,且不能与现有通用计算编程模型中的线程组概念相匹配。

3、现有技术方案如图1所示,每个线程有独立pc寄存器。pc寄存器跟线程和alu单元是一对一的关系。在需要扩展微架构的时候不得不同时增加pc的数量,而在绝大多数情况下pc的值是一样。


技术实现思路

1、本专利技术提供了一种基于smt和simt相结合的并发性能提升方法,其特征在于,包括如下步骤:

2、分组步骤:将所有线程分成多个线程组,每个线程组内包括多个线程;

3、处理步骤:每个线程组内的所有线程使用同一个pc寄存器,每个pc寄存器对应使用多个alu。

4、作为本专利技术的进一步改进,在处理步骤中,当多个线程复用同一个pc寄存器时,以串行的方式,使一部分线程先运行一个分支,然后另一部分线程再运行另一个分支。

5、作为本专利技术的进一步改进,pc寄存器设有多个栈帧,每条栈帧存放有线程运行信息。

6、作为本专利技术的进一步改进,每条栈帧保存对应分支的pc值,合并同步运行的pc值以及标志线程运行的mask。

7、作为本专利技术的进一步改进,用bit位标示线程,1表示运行,0表示不运行。

8、本专利技术还提供了一种基于smt和simt相结合的并发性能提升系统,包括:

9、分组模块:用于将所有线程分成多个线程组,每个线程组内包括多个线程;

10、处理模块:用于每个线程组内的所有线程使用同一个pc寄存器,每个pc寄存器对应使用多个alu。

11、作为本专利技术的进一步改进,在处理模块中,当多个线程复用同一个pc寄存器时,以串行的方式,使一部分线程先运行一个分支,然后另一部分线程再运行另一个分支。

12、作为本专利技术的进一步改进,pc寄存器设有多个栈帧,每条栈帧存放有线程运行信息。

13、作为本专利技术的进一步改进,每条栈帧保存对应分支的pc值,合并同步运行的pc值以及标志线程运行的mask。

14、作为本专利技术的进一步改进,用bit位标示线程,1表示运行,0表示不运行。

15、本专利技术的有益效果是:本专利技术通过使用smt和simt相结合的方式来提升微架构的设计,优化结构,增强灵活性,进而解决了现有pc寄存器资源浪费,扩展灵活性差,不利于提升性能的技术缺陷。

本文档来自技高网...

【技术保护点】

1.一种基于SMT和SIMT相结合的并发性能提升方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的并发性能提升方法,其特征在于:在处理步骤中,当多个线程复用同一个PC寄存器时,以串行的方式,使一部分线程先运行一个分支,然后另一部分线程再运行另一个分支。

3.根据权利要求2所述的并发性能提升方法,其特征在于:PC寄存器设有多个栈帧,每条栈帧存放有线程运行信息。

4.根据权利要求3所述的并发性能提升方法,其特征在于:每条栈帧保存对应分支的PC值,合并同步运行的PC值以及标志线程运行的mask。

5.根据权利要求4所述的并发性能提升方法,其特征在于:用bit位标示线程,1表示运行,0表示不运行。

6.一种基于SMT和SIMT相结合的并发性能提升系统,其特征在于,包括:分组模块:用于将所有线程分成多个线程组,每个线程组内包括多个线程;处理模块:用于每个线程组内的所有线程使用同一个PC寄存器,每个PC寄存器对应使用多个ALU。

7.根据权利要求6所述的并发性能提升系统,其特征在于:在处理模块中,当多个线程复用同一个PC寄存器时,以串行的方式,使一部分线程先运行一个分支,然后另一部分线程再运行另一个分支。

8.根据权利要求7所述的并发性能提升系统,其特征在于:PC寄存器设有多个栈帧,每条栈帧存放有线程运行信息。

9.根据权利要求8所述的并发性能提升系统,其特征在于:每条栈帧保存对应分支的PC值,合并同步运行的PC值以及标志线程运行的mask。

10.根据权利要求9所述的并发性能提升系统,其特征在于:用bit位标示线程,1表示运行,0表示不运行。

...

【技术特征摘要】

1.一种基于smt和simt相结合的并发性能提升方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的并发性能提升方法,其特征在于:在处理步骤中,当多个线程复用同一个pc寄存器时,以串行的方式,使一部分线程先运行一个分支,然后另一部分线程再运行另一个分支。

3.根据权利要求2所述的并发性能提升方法,其特征在于:pc寄存器设有多个栈帧,每条栈帧存放有线程运行信息。

4.根据权利要求3所述的并发性能提升方法,其特征在于:每条栈帧保存对应分支的pc值,合并同步运行的pc值以及标志线程运行的mask。

5.根据权利要求4所述的并发性能提升方法,其特征在于:用bit位标示线程,1表示运行,0表示不运行。

6.一种基于smt和simt相结合的并发性能提升系统,其特征在于,包括...

【专利技术属性】
技术研发人员:刘永刚荣耀程李刚竭祥侯鸿杰
申请(专利权)人:深圳中微电科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1