CN106484519B - 异步线程重组方法及基于该方法的simt处理器 - Google Patents
异步线程重组方法及基于该方法的simt处理器 Download PDFInfo
- Publication number
- CN106484519B CN106484519B CN201610889217.1A CN201610889217A CN106484519B CN 106484519 B CN106484519 B CN 106484519B CN 201610889217 A CN201610889217 A CN 201610889217A CN 106484519 B CN106484519 B CN 106484519B
- Authority
- CN
- China
- Prior art keywords
- sets
- threads
- thread
- recombination
- slot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Advance Control (AREA)
Abstract
本发明公开了一种异步线程重组方法及基于该方法的SIMT处理器,通过在不同线程组之间异步交换线程,消除线程组内的任务差异性,从而避免SIMD阵列中处理单元的闲置,提高GPU的性能。该方法在SIMT处理器中增加了两个功能单元:重组缓冲区、线程组槽。该方法借助重组缓冲区异步生成重组方案,使用线程组槽存储重组方案。与现有的线程重组方法相比,该异步方法不会带来线程组同步操作产生的SIMD流水线停顿,可使SIMT处理器取得更高性能。
Description
技术领域
本发明涉及到计算机架构领域,提供了一种异步线程重组方法及基于该方法的SIMT处理器。
背景技术
SIMT(Single Instruction Multiple Thread)是并行计算中的一种常见执行模型。SIMT处理器中包含一个或多个SIMD(Single Instruction Multiple Data)阵列。每个SIMD阵列由大量结构相同的处理单元组成。在同一时钟周期内,SIMD阵列内的所有处理单元处理不同的数据,但必须执行相同的指令。这是SIMD执行方式的限制。在SIMT处理器上执行的并行程序包含大量线程,这些线程被划分为若干线程组交替执行。在每个时钟周期,SIMT处理器中的调度器选择一个线程组,将其安排到空闲的SIMD阵列上执行。SIMD阵列中的每个处理单元负责执行该线程组中的一个线程。
当同一线程组内的线程所处理的任务存在差异时,SIMD阵列内的处理单元无法全部同时工作,导致SIMT处理器的处理能力不能得到最大利用。任务差异性包括但不限于:执行条件指令时判断结果的差异、执行访存指令时访存地址的差异、任务总执行时间的差异。以条件指令判断结果的差异为例,线程组内的线程根据判断结果的不同而执行不同的指令。由于SIMD执行方式的限制,判断结果为真的线程对应的处理单元和判断结果为假的线程对应的处理单元因执行不同的指令而无法同时工作。SIMD阵列需要先执行判断结果为真的线程,再执行判断结果为假的线程。在此过程中,SIMD阵列中总存在部分处理单元闲置,其处理能力不能得到最大利用。当线程组内的线程存在访存地址差异和任务总执行时间之间的差异时,也会出现类似的问题。
解决上述问题的一种可行思路是线程重组。当SIMT处理器执行到存在任务差异性的指令时,线程重组在不同线程组之间交换线程,将不存在任务差异性的线程安排在同一线程组。这样,在执行这些线程组时SIMD阵列中的所有处理单元可以同时工作。然而,现有的线程重组技术在交换线程前要求线程组之间进行同步。仅当所有线程组均执行到待线程重组的指令后,线程重组才能开始交换线程。在SIMT处理器上,同步操作会带来SIMD阵列的额外停顿,存在不可忽视的性能开销。
发明内容
发明目的:针对上述现有技术存在的问题和不足,本发明的目的是提供一种异步线程重组方法及基于该方法的SIMT处理器,在不进行线程组同步的情况下,通过线程重组消除线程组内任务差异性,从而避免SIMD阵列中处理单元的闲置,使SIMT处理器的处理能力得到更充分利用。
技术方案:为实现上述发明目的,本发明采用的技术方案为一种异步线程重组方法,用于SIMT处理器,该SIMT处理器包含:存储有当前SIMT处理器上执行的线程组的线程组池、负责在每个时钟周期从线程组池中选取一个就绪的线程组将其分配到一个空闲的SIMD阵列上执行一条指令的调度器、一个或多个负责执行线程组指令的SIMD阵列、用于存储线程组以及与该线程组相对应信息的线程组槽和用于生成线程重组方案的重组缓冲区;
其中,该线程重组方案为线程重组后每个线程组中包含的线程;
其中,该重组缓冲区由若干重组队列组成;该重组队列存储的信息有位于重组队列中的线程对应的指令PC值、位于重组队列中的线程的任务属性和任务属性相同的线程;
其中,该线程组槽包含存储当前时刻线程组中包含的线程和存储相应线程组的锁定状态;
具体的,该方法包括以下工作流程:
a)通过该调度器选取一个线程组槽未被锁定的线程组;
b)判断该线程组是否存在任务差异性,若该线程组不存在任务差异性,则将直接其分配到SIMD阵列执行;反之,设置该线程组对应的线程组槽的锁定标志以锁定该线程组槽,将该线程组槽中的线程按任务属性分组,任务属性相同的线程加入重组缓冲区中形成重组队列,该新加入的线程的指令PC值和任务属性与先前位于该重组队列的线程的指令PC值和任务属性相一致;
c1)依次检查在步骤b)中被添加线程的重组队列,若当重组队列中的线程数满足一个或多个线程组所能容纳的线程数时,依次从重组队列中移除数量为线程组线程数的倍数的线程打包成一个待写入线程组;
c2)处理步骤c1)中的待写入线程组,将其写入至已被锁定的线程组槽内,该被移入线程的线程组槽对应的线程组的指令PC值与相应的被移除线程的重组队列的指令PC值相同,重复步骤b),并解锁该线程组槽;
d)重复步骤a)~步骤c)直至SIMT处理器上的程序执行完成。
进一步的,在步骤c2)和步骤d)之间还包括步骤c3):查找在重组缓冲区中被滞留的线程,若不存在,则执行步骤a);若存在,由滞留时间长至短依次从重组缓冲区中移出数量为线程组线程数的倍数的线程打包成一个待写入线程组,执行步骤c2)。
进一步的,处于解锁状态的线程组槽对应的线程组才会被分配到SIMD阵列执行。
进一步的,在重组缓冲区中等待的过程中,线程组之间为异步状态,线程组被异步加入重组缓冲区或被异步移出重组缓冲区写入线程组槽。
本发明还公开了一种基于异步线程重组方法的SIMT处理器,该SIMT处理器至少包含:存储有当前SIMT处理器上执行的线程组的线程组池、负责在每个时钟周期从线程组池中选取一个就绪的线程组将其分配到一个空闲的SIMD阵列上执行一条指令的调度器、一个或多个负责执行线程组的指令的SIMD阵列、用于存储线程组以及与该线程组相对应信息的线程组槽和用于生成线程重组方案的重组缓冲区;该线程重组方案为线程重组后每个线程组中包含的线程。
进一步的,重组缓冲区由若干重组队列组成;该重组队列存储的信息有位于重组队列中的线程对应的指令PC值、位于重组队列中的线程的任务属性和任务属性相同的线程。
进一步的,位于重组缓冲区的线程组之间为异步状态。
进一步的,线程组槽包含存储当前时刻线程组中包含的线程和存储相应线程组的锁定状态。
有益效果:本发明提出的SIMT处理器上的异步线程重组方法可以在不进行线程组同步的情况下,通过在不同线程组之间异步交换线程来消除线程组内任务差异性,从而避免SIMD阵列中处理单元的闲置,使SIMT处理器的处理能力得到更充分利用。与现有的线程重组方法相比,该异步方法不会带来线程组同步操作产生的SIMD流水线停顿,不存在额外的性能开销,可使SIMT处理器取得更高性能。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明的实施例中所假设的基准SIMT处理器的结构框图;
图2为基于本发明的异步线程重组方法的SIMT处理器的结构框图;
图3为本发明的异步线程重组方法的工作流程图;
图4以访存地址差异性为例,为本发明的异步线程重组方法在差异性时的工作原理演示图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
图1为本发明的实施例中所假设的基准SIMT处理器的结构框图。SIMT处理器至少包含:线程组池、调度器、一个或多个SIMD阵列。线程组池中存储有当前SIMT处理器上执行的线程组。调度器负责在每个时钟周期从线程组池中选取一个就绪的线程组,将其分配到一个空闲的SIMD阵列上执行一条指令。SIMD阵列负责执行线程组的指令。
图2为基于本发明的异步线程重组方法的SIMT处理器的结构框图。本发明的异步线程重组方法在SIMT处理器中新增了线程组槽和重组缓冲区。
本实施例中假设SIMT处理器上共有N个线程组并行执行,相应地,SIMT处理器中新增N个线程组槽,该线程组槽包括头部和后续部分,该线程组槽头部为相应线程组的锁定标志,记录该线程组是否被锁定;该线程组槽的后续部分存储线程重组方案,即线程重组实施后每个新线程组中包含的线程,每个线程用一个线程编号标识。
重组缓冲区由一系列重组队列组成,每个重组队列存储如下信息:该重组队列中的线程对应的指令PC值、该重组队列中的线程的任务属性、任务属性不存在差异性的若干线程。
图3为本发明的异步线程重组方法的详细工作流程图。此实施例中假设每个线程组中的线程数为W。
第1步,从线程组池中选取一个线程组,这一工作由SIMT处理器中的调度器完成。
第2步,读取该线程组对应的线程组槽的锁定标志,以检查该线程组槽是否被锁定。若被锁定,则转至第1步。
第3步,检查该线程组将执行的指令是否可能带来任务差异性;若否,转第11步。
第4步,设置该线程组对应的线程组槽中的锁定标志,以锁定该线程组槽。
第5步,将该线程组对应的线程组槽中的线程按任务属性分组,将任务属性相同的线程加入到重组缓冲区中形成指令PC值、任务属性均相同的重组队列。该步骤中,可能有一个或多个重组队列被添加线程。
第6步,依次检查在第5步中被添加线程的重组队列,找出累积线程数目不小于W的重组队列;如果不存在这样的重组队列,转第9步。
第7步,依次处理第6步中找到的重组队列,将重组队列中的前W个线程移出打包成一个待写入线程组。
第8步,处理所有的待写入线程组,对于每个待写入线程组,将其写入一个满足以下两项条件的线程组槽内:(1)该线程组槽已被锁定,(2)该线程组槽对应的线程组即将执行的指令PC值与待写入线程组中的线程对应的PC值相同;将上述线程组槽内的线程分配到SIMD阵列执行,并清除该线程组槽中的锁定标志,以解锁该线程组槽,接着,转至第1步。
第9步,查找在重组缓冲区中停留时间过长的线程;如果不存在这样的线程,转至第1步。
第10步,将第9步找出的线程中停留时间最长的W个线程移出重组队列并打包成一个待写入线程组,接着转至第8步。
第11步,直接将调度器在第1步选取的线程组对应的线程组槽中的线程分配到SIMD阵列执行,接着转至第1步。
图4为本发明的异步线程重组方法在消除访存地址差异性时的工作原理演示图。此实施例中假定所执行的程序包含一条可能导致任务差异性的Load指令,PC值为32;还包含两条不可能导致任务差异性的Add指令,PC值分别为64、96。此实施例中还假定SIMT处理器上共有3个线程组,每个线程组中所能容纳的线程数为4。
图4中四幅子图分别对应t0至t3四个时刻,每幅子图的上半部分为线程组槽的状态,从左向右分别对应第一线程组1、第二线程组2和第三线程组3;下半部分为重组队列的状态,该实施例中线程重组用于消除访存地址的差异性,因此重组队列存储的任务属性即访存地址,线程组中的线程亦按照访存地址分组进入重组队列。
时刻t0,第三线程组3被分配到SIMD阵列上执行PC值为64的第一条Add指令,而另两个线程组尚未开始执行。
时刻t1,第一线程组1的PC值为32的Load指令被发射,由于Load指令可能带来任务差异性,线程组1所在的线程组槽被锁定。随后,第一线程组1的线程按照访存地址分组进入重组缓冲区中PC值匹配且对应访存地址0x00和0x80的重组队列中。
时刻t2,第二线程组2中的PC值为32的Load指令被发射,对应的线程组槽同样被锁定,该线程组槽内的线程按照访存地址分组进入重组缓冲区中PC值匹配且对应访存地址0x80和0x100的重组队列,至此,重组队列0x80已凑满一个线程组。
因此,在时刻t3,上述已凑满一个线程组的重组队列被清空,其中的线程5,6,3,4被写入第一个线程组槽,并分配到SIMD阵列执行,该线程组槽被解锁。
上述过程中以下两点需要注意:第一,由于线程组槽的锁定机制,线程3,4从时刻t1进入重组缓冲区到时刻t3离开缓冲区,PC值一直保持不变,相比之下,执行PC值为96的第2条Add指令而未被锁定的第三线程组槽3中线程9~12的PC值在此期间由64变化为96。第二,线程5,6和3,4原先分别来自两个执行步调不同的线程组,但线程组槽的锁定机制保证这四个任务属性相同的线程在被写入到第一线程组槽1时PC值相同。
最后应说明的是:以上该仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种异步线程重组方法,用于SIMT处理器,其特征在于:所述SIMT处理器包含:
线程组池:存储SIMT处理器当前执行的线程组、
调度器:负责在每个时钟周期从线程组池中选取一个就绪的线程组并将其分配到一个空闲的SIMD阵列上执行一条指令、
一个或多个SIMD阵列:负责执行线程组指令、
线程组槽:用于存储线程组,以及与所述线程组一一相对应的线程组信息、
以及重组缓冲区:用于生成线程重组方案;
其中,所述线程重组方案为线程重组后每个线程组包含的线程;
其中,所述重组缓冲区由若干重组队列组成;所述重组队列存储的信息包括重组队列中的线程对应的指令PC值、重组队列中的线程的任务属性、以及任务属性相同的线程;
其中,所述线程组槽存储当前时刻线程组中包含的线程且线程组槽的锁定标志体现线程组的锁定状态;
所述方法包括以下工作流程:
a)通过所述调度器选取一个线程组槽未被锁定的线程组;
b)判断所述线程组是否存在任务差异性,若所述线程组不存在任务差异性,则将直接其分配到SIMD阵列执行;反之,设置所述线程组对应的线程组槽的锁定标志为锁定状态,将所述线程组槽中的线程按任务属性分组,任务属性相同的线程加入重组缓冲区中形成重组队列,所述新加入的线程的指令PC值和任务属性与先前位于所述重组队列的线程的指令PC值和任务属性相一致;
c1)依次检查在步骤b)中被添加线程的重组队列,若当重组队列中的线程数满足一个或多个线程组所能容纳的线程数时,依次从重组队列中移除数量为线程组线程数的倍数的线程,打包成一个待写入线程组;
c2)处理步骤c1)中的待写入线程组,将其写入至已被锁定的线程组槽内,所述被移入线程的线程组槽对应的线程组的指令PC值与相应的被移除线程的重组队列的指令PC值相同,重复步骤b),并解锁所述线程组槽;
d)重复步骤a)~步骤c2)直至SIMT处理器上的程序执行完成。
2.根据权利要求1所述的一种异步线程重组方法,其特征在于:在步骤c2)和步骤d)之间还包括步骤c3):查找在重组缓冲区中被滞留的线程,若不存在,则执行步骤a);若存在,由滞留时间长至短依次从重组缓冲区中移出数量为线程组线程数的倍数的线程,打包成一个待写入线程组,执行步骤c2)。
3.根据权利要求1所述的一种异步线程重组方法,其特征在于:处于解锁状态的线程组槽对应的线程组才会被分配到SIMD阵列执行。
4.根据权利要求1所述的一种异步线程重组方法,其特征在于:在重组缓冲区中等待的过程中,线程组之间为异步状态,线程组被异步加入重组缓冲区或被异步移出重组缓冲区写入线程组槽。
5.基于权利要求1所述的一种异步线程重组方法的SIMT处理器,所述SIMT处理器至少包含:
线程组池:存储SIMT处理器当前执行的线程组、
调度器:负责在每个时钟周期从线程组池中选取一个就绪的线程组并将其分配到一个空闲的SIMD阵列上执行一条指令、
一个或多个SIMD阵列:负责执行线程组指令;
其特征在于:还包括
用于存储线程组以及与所述线程组一一相对应信息的线程组槽、
以及用于生成线程重组方案的重组缓冲区;所述线程重组方案为线程重组后每个线程组包含的线程。
6.根据权利要求5所述的SIMT处理器,其特征在于:所述重组缓冲区由若干重组队列组成;所述重组队列存储的信息有位于重组队列中的线程对应的指令PC值、位于重组队列中的线程的任务属性和任务属性相同的线程。
7.根据权利要求6所述的SIMT处理器,其特征在于:位于重组缓冲区的线程组之间为异步状态。
8.根据权利要求5所述的SIMT处理器,其特征在于:所述线程组槽存储当前时刻线程组中包含的线程和存储相应线程组的锁定状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610889217.1A CN106484519B (zh) | 2016-10-11 | 2016-10-11 | 异步线程重组方法及基于该方法的simt处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610889217.1A CN106484519B (zh) | 2016-10-11 | 2016-10-11 | 异步线程重组方法及基于该方法的simt处理器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106484519A CN106484519A (zh) | 2017-03-08 |
CN106484519B true CN106484519B (zh) | 2019-11-08 |
Family
ID=58270528
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610889217.1A Active CN106484519B (zh) | 2016-10-11 | 2016-10-11 | 异步线程重组方法及基于该方法的simt处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106484519B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131008B (zh) * | 2020-09-28 | 2024-04-19 | 芯瞳半导体技术(山东)有限公司 | 一种调度线程束warp的方法、处理器及计算机存储介质 |
CN113284038B (zh) * | 2021-03-05 | 2022-10-18 | 上海壁仞智能科技有限公司 | 用于执行计算的方法、计算设备、计算***和存储介质 |
CN113176911B (zh) * | 2021-04-29 | 2024-07-12 | 上海阵量智能科技有限公司 | 一种配置方法、数据处理方法、芯片和电子设备 |
CN114595070B (zh) * | 2022-05-10 | 2022-08-12 | 上海登临科技有限公司 | 一种处理器、多线程合并方法及电子设备 |
CN117009054B (zh) * | 2023-07-27 | 2024-06-28 | 北京登临科技有限公司 | 一种simt装置、线程组动态构建方法及处理器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101923491A (zh) * | 2010-08-11 | 2010-12-22 | 上海交通大学 | 多核环境下线程组地址空间调度和切换线程的方法 |
CN102012803A (zh) * | 2010-11-25 | 2011-04-13 | 中国人民解放军国防科学技术大学 | 支持多宽度simd和多粒度simt的可配置矩阵寄存器单元 |
CN104346223A (zh) * | 2013-07-31 | 2015-02-11 | 想象力科技有限公司 | 基于类型的优先化指令 |
CN105210040A (zh) * | 2013-03-15 | 2015-12-30 | 索夫特机械公司 | 用于执行分组成块的多线程指令的方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9672043B2 (en) * | 2014-05-12 | 2017-06-06 | International Business Machines Corporation | Processing of multiple instruction streams in a parallel slice processor |
US9665372B2 (en) * | 2014-05-12 | 2017-05-30 | International Business Machines Corporation | Parallel slice processor with dynamic instruction stream mapping |
-
2016
- 2016-10-11 CN CN201610889217.1A patent/CN106484519B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101923491A (zh) * | 2010-08-11 | 2010-12-22 | 上海交通大学 | 多核环境下线程组地址空间调度和切换线程的方法 |
CN102012803A (zh) * | 2010-11-25 | 2011-04-13 | 中国人民解放军国防科学技术大学 | 支持多宽度simd和多粒度simt的可配置矩阵寄存器单元 |
CN105210040A (zh) * | 2013-03-15 | 2015-12-30 | 索夫特机械公司 | 用于执行分组成块的多线程指令的方法 |
CN104346223A (zh) * | 2013-07-31 | 2015-02-11 | 想象力科技有限公司 | 基于类型的优先化指令 |
Non-Patent Citations (1)
Title |
---|
一种CPU+GPU的多核异构平台设计方案;底涛;《计算机与网络》;20160226;第90页-93页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106484519A (zh) | 2017-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106484519B (zh) | 异步线程重组方法及基于该方法的simt处理器 | |
JP5733860B2 (ja) | 依存問題の効率的並列計算 | |
JP2019079528A5 (zh) | ||
JP2003044296A5 (zh) | ||
CN105893126A (zh) | 一种任务调度方法及装置 | |
CN109791492B (zh) | 流水线相关树查询优化器和调度器 | |
CN105653204A (zh) | 一种基于磁盘的分布式图计算方法 | |
JP2003263331A (ja) | マルチプロセッサシステム | |
CN102662889A (zh) | 中断处理方法、中断控制器及处理器 | |
CN104834505A (zh) | 一种多核多线程环境下numa感知的同步方法 | |
CN110297661A (zh) | 基于amp构架dsp操作***的并行计算方法、***及介质 | |
CN108762810B (zh) | 一种基于并行微引擎的网络报文头处理器 | |
CN107329822A (zh) | 面向多源多核***的基于超任务网的多核调度方法 | |
US5297239A (en) | Compile type knowledge processing tool, a high-speed inference method therefor and a system using the tool | |
CN109656868B (zh) | 一种cpu与gpu之间的内存数据转移方法 | |
Caggianese et al. | GPU accelerated multi-agent path planning based on grid space decomposition | |
CN110134506A (zh) | 基于处理器内核动态的实时动态关键路径多核调度方法 | |
CN111475205B (zh) | 一种基于数据流解耦合的粗粒度可重构阵列结构设计方法 | |
CN102520916A (zh) | 在mvp处理器中消除纹理延迟和寄存器管理的方法 | |
CN114116015B (zh) | 用于管理硬件命令队列的方法及*** | |
Zheng et al. | Evaluating dag scheduling algorithms for maximum parallelism | |
ES2726806T3 (es) | Programador de trabajos para sistema electromecánico de análisis biológicos | |
CN104424123A (zh) | 一种无锁数据缓冲区及其使用方法 | |
CN101957777B (zh) | 一种数据处理流程的调度方法 | |
JP2752902B2 (ja) | ベクトル処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20190424 Address after: 215123 Linquan Street 399, Dushu Lake Higher Education District, Suzhou Industrial Park, Jiangsu Province Applicant after: Suzhou Institute, Southeast University Address before: 210088 No. 6 Dongda Road, Taishan New Village, Pukou District, Nanjing City, Jiangsu Province Applicant before: Southeast University |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |