配置向量运算系统中的协作线程束的装置和方法制造方法及图纸

技术编号:34770651 阅读:23 留言:0更新日期:2022-08-31 19:31
本发明专利技术涉及一种配置向量运算系统中的协作线程束的装置和方法,其中的装置包含:通用寄存器;算术逻辑单元;线程束指令调度器以及多个各线程束资源寄存器。线程束指令调度器依据程序核中的线程束分配指令让多个线程束中的每一个包含所述程序核中的一部分相对独立指令,依据软件在执行时的配置让多个线程束中的每一个都通过所述算术逻辑单元存取所述通用寄存器中的全部或指定局部的数据,并通过所述算术逻辑单元完成每个上述线程束的运算。本发明专利技术通过如上所述的能够让软件动态调整和配置通用寄存器给不同线程束的组件,可更广泛地适应不同的应用,例如大数据、人工智能的运算等。等。等。

【技术实现步骤摘要】
配置向量运算系统中的协作线程束的装置和方法
[0001]本申请是申请日为2020年10月21日,申请号为202011131448.9,专利技术名称为“配置向量运算系统中的协作线程束的装置和方法”的中国专利技术专利申请的分案申请。


[0002]本专利技术涉及向量运算装置,尤指一种配置向量运算系统中的协作线程束的装置和方法。

技术介绍

[0003]向量计算机是一种配备了专门的向量指令,用于提高向量处理速度的计算机。向量计算机能够同时处理多个线程束(Warp)的数据计算,因此,向量计算机就处理线程束的数据而言,比标量计算机快得多。然而,多个线程束存取通用寄存器文件(General

Purpose Register File,GPR File)可能发生冲突,因此,本专利技术提出一种配置向量运算系统中的协作线程束的装置的方法。

技术实现思路

[0004]有鉴于此,如何减轻或消除上述相关领域的缺陷,实为有待解决的问题。
[0005]本专利技术的实施例涉及一种配置向量运算系统中的协作线程束的装置,包含:通用寄存器;算术逻辑单元;线程束指令调度器以及多个各线程束资源寄存器。线程束指令调度器依据程序核中的线程束分配指令让多个线程束中的每一个包含所述程序核中的一部分相对独立指令,依据软件在执行时的配置让多个线程束中的每个通过所述算术逻辑单元存取所述通用寄存器中的全部或指定局部的数据,并通过所述算术逻辑单元完成每个上述线程束的运算。每个所述各线程束资源寄存器关联于一个所述线程束,并且存储相应于所述关联的线程束的基础地址。其中,所述线程束指令调度器在送出关联于一个所述线程束的指令给所述算术逻辑单元前,依据相应的所述各线程束资源寄存器的内容修改所述指令中的来源地址和目的地地址,用于让所述指令在被所述算术逻辑单元执行时只能够存取所述通用寄存器中的指定局部。
[0006]本专利技术的实施例还涉及一种配置向量运算系统中的协作线程束的方法,包含:依据程序核中的线程束分配指令让多个线程束中的每一个包含所述程序核中的一部分相对独立指令;依据软件在执行时的配置让多个线程束中的每个通过算术逻辑单元存取通用寄存器中的全部或指定局部的数据;以及通过所述算术逻辑单元完成每个上述线程束的运算。其中所述方法还包括:提供相应于每个所述线程束的基础地址;以及在送出关联于一个所述线程束的指令给所述算术逻辑单元前,依据相应的所述基础地址修改所述指令中的来源地址和目的地地址,用于让所述指令在被所述算术逻辑单元执行时只能够存取所述通用寄存器中的指定局部。
[0007]上述实施例的优点之一,通过以上所述的能够让软件动态调整和配置通用寄存器给不同线程束的组件和操作,可更广泛地适应不同的应用,例如大数据、人工智能的运算
等。
[0008]上述实施例的优点之一,通过动态配置程序核中多段的相对独立指令给不同线程束,可避免线程束间互相干扰以提升流水线的使用率。
[0009]本专利技术的其他优点将配合以下的说明和附图进行更详细的解说。
附图说明
[0010]此处所说明的附图用于提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
[0011]图1为依据本专利技术实施例的向量运算系统的框图。
[0012]图2为依据本专利技术实施例的流多处理器的框图。
[0013]图3为一些实施方式的通用寄存器的分割示意图。
[0014]图4为依据本专利技术实施例的搭配各线程束资源寄存器的通用寄存器的动态分割示意图。
[0015]图5为依据本专利技术实施例的流程图,应用于并行地执行任务的协作线程束。
[0016]图6为依据本专利技术实施例的生产者和消费者的协作线程束的示意图。
[0017]图7为依据本专利技术实施例的流程图,应用于执行生产者

消费者式的任务的协作线程束。
[0018]其中,附图中符号的简单说明如下:
[0019]10:电子装置;100:流多处理器;210:算术逻辑单元;220:线程束指令调度器;230:通用寄存器;240:指令缓存;250:屏障寄存器;260、260#0~260#7:各线程束资源寄存器;300#0~300#7:通用寄存器的存储块;Base#0~Base#7:基础位置;S510~S540:方法步骤;610:消费者线程束;621、663:屏障指令;623、661:一系列指令;650:生产者线程束;S710~S770:方法步骤。
具体实施方式
[0020]以下将配合相关附图来说明本专利技术的实施例。在这些附图中,相同的标号表示相同或类似的组件或方法流程。
[0021]必须了解的是,使用于本说明书中的“包含”、“包括”等词,是用于表示存在特定的技术特征、数值、方法步骤、作业处理、组件和/或组件,但并不排除可加上更多的技术特征、数值、方法步骤、作业处理、组件、组件,或以上的任意组合。
[0022]本专利技术中使用如“第一”、“第二”、“第三”等词是用于修饰权利要求中的组件,并非用于表示之间具有优先权顺序,先行关系,或者是一个组件先于另一个组件,或者是执行方法步骤时的时间先后顺序,仅用于区别具有相同名字的组件。
[0023]必须了解的是,当组件描述为“连接”或“耦接”至另一组件时,可以是直接连结、或耦接至其他组件,可能出现中间组件。相反地,当组件描述为“直接连接”或“直接耦接”至另一组件时,其中不存在任何中间组件。用于描述组件之间关系的其他词语也可以类似方式解读,例如“介于”相对于“直接介于”,或者“邻接”相对于“直接邻接”等等。
[0024]参考图1。电子装置10可实施于大型主机、工作站、个人计算机、笔记本计算机(Laptop PC)、平板计算机、移动电话、数字相机、数字摄影机等电子产品之中。电子装置10
可在向量运算系统中设置流多处理器集群(Streaming Multiprocessor Cluster,SMC),包含多个流多处理器(Streaming Multiprocessor,SM)100,不同流多处理器100之间的指令执行可使用信号彼此同步。流多处理器100被编程后可执行各种应用任务,包含但不限于:线性和非线性数据转化、数据库操作、大数据运算、人工智能计算、音频、视频数据的编码、解码、建模操作、图像渲染操作等。每个流多处理器100可同时执行多个线程束(Warps),每个线程束是由一群线程(Group of Threads)组成,而线程是一个使用硬件运行的最小单位,并具有自己的生命周期。线程束可关联于单指令多数据流(Single Instruction Multiple Data,SIMD)指令、单指令多线程(Single Instruction Multiple Thread,SIMT)技术等。不同线程束之间的执行可以是独立的,也可以是顺序性的。线程可代表关联于一条或多条指令的任务。举例来说,每个流多处理器100可同时执行8个线程束,每个线程束包含32个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种配置向量运算系统中的协作线程束的装置,其特征在于,包含:通用寄存器;算术逻辑单元,耦接所述通用寄存器;线程束指令调度器,耦接所述算术逻辑单元,所述线程束指令调度器依据程序核中的线程束分配指令让多个线程束中的每一个包含所述程序核中的一部分相对独立指令,依据软件在执行时的配置让所述多个线程束中的每一个都通过所述算术逻辑单元存取所述通用寄存器中的全部或指定局部的数据,并通过所述算术逻辑单元完成每个上述线程束的运算;以及多个各线程束资源寄存器,其中,每个所述各线程束资源寄存器关联于一个所述线程束,并且存储相应于所述关联的线程束的基础地址,其中,所述线程束指令调度器在送出关联于一个所述线程束的指令给所述算术逻辑单元前,依据相应的所述各线程束资源寄存器的内容修改所述指令中的来源地址和目的地地址,用于让所述指令在被所述算术逻辑单元执行时只能够存取所述通用寄存器中的指定局部。2.如权利要求1所述的配置向量运算系统中的协作线程束的装置,其特征在于,所述装置不预先为每个所述线程束配置关联于所述通用寄存器中的全部或指定局部。3.如权利要求1所述的配置向量运算系统中的协作线程束的装置,其特征在于,所述各线程束资源寄存器的内容由软件设定。4.如权利要求1所述的配置向量运算系统中的协作线程束的装置,其特征在于,所述线程束包含第一线程束和第二线程束,所述线程束指令调度器从指令缓存获取所述第一线程束的屏障指令时,让所述第一线程束进入等待状态,以及所述线程束指令调度器从所述指令缓存获取所述第二线程束的屏障指令时,唤醒所述第一线程束,其中所述第一线程束和所述第二线程束被配置关联于所述通用寄存器中重叠的一块。5.如权利要求4所述的配置向量运算系统中的协作线程束的装置,其特征在于,所述第一线程束为消费者线程束,所述第二线程束为生产者线程束。6.如权利要求1所述的配置向量运算系统中的协作线...

【专利技术属性】
技术研发人员:ꢀ七四专利代理机构
申请(专利权)人:上海壁仞智能科技有限公司
类型:发明
国别省市:

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

1