命令执行方法、装置、图形处理器、电子设备及存储介质制造方法及图纸

技术编号:37711052 阅读:12 留言:0更新日期:2023-06-02 00:03
本发明专利技术实施例提供了一种命令执行方法、装置、图形处理器、电子设备及存储介质,涉及电子技术领域。其中,命令执行方法,应用于图形处理器,包括:构建若干命令执行队列,每个所述命令执行队列中包括若干命令;读取任一所述命令执行队列内的命令作为目标命令,判断所述目标命令是否为队列切换命令;若所述目标命令为所述队列切换命令,读取并执行其它命令执行队列中的命令。与现有技术相比,本发明专利技术实施例所提供的命令执行方法、装置、图形处理器、电子设备及存储介质能够有效的提升对GPU芯片的运算能力的利用率。的利用率。的利用率。

【技术实现步骤摘要】
命令执行方法、装置、图形处理器、电子设备及存储介质


[0001]本专利技术涉及电子
,具体而言,涉及一种命令执行方法、装置、图形处理器、电子设备及存储介质。

技术介绍

[0002]随着图形处理器(graphics processing unit,GPU)的通用化趋势,GPU内部的专用逻辑运算单元的种类不断增加,从最初的通用运算单元,特殊函数单元,再到高性能运算单元,张量运算单元等,都是为了让专门的单元做专门的运算,达到效率最优。
[0003]一个包括GPU芯片和中央处理器的系统,通常由中央处理器通过发送命令序列将需要执行的计算任务发送给GPU芯片,GPU芯片将收到的命令序列经过解析,然后将命令分发给GPU芯片中的不同功能模块执行。现有的做法是中央处理器将生成的命令放在命令序列中,然后由GPU芯片顺序执行。
[0004]然而,如果命令序列中的命令有先后依赖关系,比如序列中有命令A,C,命令A和C是2个不同计算的任务,并且C的执行依赖于A的执行结果,所以C必须等到A执行结束后才能执行,所以在命令A和C之间插入了等待命令,等待A执行结束。这时由于GPU芯片中仅运行有命令A,如果A的计算量不够大,不能完全利用GPU芯片的算力,那么整个GPU芯片的一部分算力就会处于空闲状态,降低了对GPU芯片的运算能力的利用率。

技术实现思路

[0005]本专利技术的目的在于提供一种命令执行方法、装置、图形处理器、电子设备及存储介质,能够有效的提升对GPU芯片的运算能力的利用率。
[0006]第一方面,本专利技术实施例中提供了一种命令执行方法,应用于图形处理器,包括:构建若干命令执行队列,每个所述命令执行队列中包括若干命令;读取任一所述命令执行队列内的命令作为目标命令,判断所述目标命令是否为队列切换命令;若所述目标命令为所述队列切换命令,读取并执行其它命令执行队列中的命令。
[0007]在一些实施例中,所述判断所述目标命令是否为队列切换命令,包括:判断所述目标命令中是否存在预设标识符;若所述目标命令中存在所述预设标识符,判定所述目标命令为所述队列切换命令。根据预设标识符进行判断的过程较为简单,可以有效的提升判断效率,从而提升任务执行的整体效率。
[0008]在一些实施例中,所述判断所述目标命令是否为队列切换命令,包括:判断所述目标命令与当前时刻正在执行的命令之间是否存在依赖关系;若所述目标命令与当前时刻正在执行的命令之间存在依赖关系,判定所述目标命令为所述队列切换命令。通过对目标命令与当前时刻正在执行的命令之间的依赖关系的判断,可以避免将存在依赖关系的命令已执行完毕的目标命令判定为队列切换命令,从而提升判定结果的准确度。
[0009]在一些实施例中,所述判断所述目标命令与当前时刻正在执行的命令之间是否存在依赖关系,包括:获取所述目标命令的预设依赖关系值和预设存储地址;读取所述预设存
储地址中存储的目标值;判断所述预设依赖关系值和所述目标值是否相同;若所述预设依赖关系值和所述目标值不相同,判定所述目标命令与当前时刻正在执行的命令之间存在依赖关系;若所述预设依赖关系值和所述目标值相同,判定所述目标命令与当前时刻正在执行的命令之间不存在依赖关系。通过对预设存储地址中的目标值与预设依赖关系值进行比较,可以较为准确的判断与目标命令存在依赖关系的另一命令是否已经执行完毕,从而准确的判断目标命令是否为队列切换命令。
[0010]在一些实施例中,所述判断所述目标命令是否为队列切换命令,包括:判断所述目标命令中是否存在预设标识符、且所述目标命令与当前时刻正在执行的命令之间是否存在依赖关系;若所述目标命令中存在所述预设标识符或所述目标命令与当前时刻正在执行的命令之间存在依赖关系,判定所述目标命令为所述队列切换命令;若所述目标命令中不存在所述预设标识符且所述目标命令与当前时刻正在执行的命令之间不存在依赖关系,判定所述目标命令不为所述队列切换命令。通过多种不同判定方法的综合使用,可以有效的提升目标命令是否为队列切换命令的判断结果的准确性,避免漏判或误判。
[0011]在一些实施例中,所述读取任一所述命令执行队列内的命令作为目标命令前,所述方法还包括:设置唯一当前命令执行队列;所述读取任一所述命令执行队列内的命令作为目标命令,包括:读取所述当前命令执行队列内的命令作为所述目标命令。
[0012]在一些实施例中,所述读取并执行其它命令执行队列中的命令前,所述方法还包括:设置所述其它命令执行队列为新的所述当前命令执行队列。通过设置唯一当前执行队列,在当前时刻仅执行当前执行队列中的命令,当当前执行队列中的目标命令为队列切换命令时,重新设置另一个命令执行队列作为新的当前执行队列,读取并执行新的当前执行队列中的命令,可以使得命令的读取和执行过程更加有序的进行,避免在命令执行队列的切换过程中造成命令的执行混乱和执行错误,从整体上提升任务执行结果的准确度。
[0013]第二方面,本专利技术实施例提供了一种命令执行方法,应用于命令执行装置,包括:构建若干命令,根据各个所述命令之间的依赖关系在所述若干命令中构建若干队列切换命令,并将所述若干命令发送至图形处理器;所述队列切换命令用于在被所述图形处理器读取时进行命令执行队列的切换。
[0014]在一些实施例中,所述根据各个所述命令之间的依赖关系在所述若干命令中构建若干队列切换命令,包括:从所述若干命令中获取目标命令,所述目标命令为与任一其它命令之间存在依赖关系的命令;向所述目标命令中插入预设标识符。
[0015]在一些实施例中,所述根据各个所述命令之间的依赖关系在所述若干命令中构建若干队列切换命令,包括:从所述若干命令中获取目标命令,所述目标命令为与任一其它命令之间存在依赖关系的命令;向所述目标命令中插入预设依赖关系值和预设存储地址;向所述目标命令所依赖的命令中插入所述预设存储地址,以控制所述目标命令所依赖的命令在执行完成时将预设依赖关系值写入所述预设存储地址。
[0016]第三方面,本专利技术实施例提供了一种图形处理器,包括:队列构建模块,所述队列构建模块用于构建若干命令执行队列,每个所述命令执行队列中包括若干命令;命令执行模块,所述命令执行模块用于读取任一所述命令执行队列内的命令作为目标命令,并判断所述目标命令是否为队列切换命令;所述命令执行模块还用于在所述目标命令为所述队列切换命令时,读取并执行其它命令执行队列中的命令。
[0017]第四方面,本专利技术实施例提供了一种命令执行装置,包括:命令构建模块,所述命令构建模块用于构建若干命令;切换命令构建模块,所述切换命令构建模块用于根据各个所述命令之间的依赖关系在所述若干命令中构建若干队列切换命令;通信模块,所述通信模块用于将所述若干命令发送至图形处理器。
[0018]第五方面,本专利技术实施例提供了一种电子设备,包括:处理器,与所述至少一个处理器通信连接的第一存储器和图形处理器,与所述图形处理器连接的第二存储器;其中,所述第一存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种命令执行方法,其特征在于,应用于图形处理器,包括:构建若干命令执行队列,每个所述命令执行队列中包括若干命令;读取任一所述命令执行队列内的命令作为目标命令,判断所述目标命令是否为队列切换命令;若所述目标命令为所述队列切换命令,读取并执行其它命令执行队列中的命令。2.根据权利要求1所述的方法,其特征在于,所述判断所述目标命令是否为队列切换命令,包括:判断所述目标命令中是否存在预设标识符;若所述目标命令中存在所述预设标识符,判定所述目标命令为所述队列切换命令。3.根据权利要求1所述的方法,其特征在于,所述判断所述目标命令是否为队列切换命令,包括:判断所述目标命令与当前时刻正在执行的命令之间是否存在依赖关系;若所述目标命令与当前时刻正在执行的命令之间存在依赖关系,判定所述目标命令为所述队列切换命令。4.根据权利要求3所述的方法,其特征在于,所述判断所述目标命令与当前时刻正在执行的命令之间是否存在依赖关系,包括:获取所述目标命令的预设依赖关系值和预设存储地址;读取所述预设存储地址中存储的目标值;判断所述预设依赖关系值和所述目标值是否相同;若所述预设依赖关系值和所述目标值不相同,判定所述目标命令与当前时刻正在执行的命令之间存在依赖关系;若所述预设依赖关系值和所述目标值相同,判定所述目标命令与当前时刻正在执行的命令之间不存在依赖关系。5.根据权利要求1所述的方法,其特征在于,所述判断所述目标命令是否为队列切换命令,包括:判断所述目标命令中是否存在预设标识符、且所述目标命令与当前时刻正在执行的命令之间是否存在依赖关系;若所述目标命令中存在所述预设标识符或所述目标命令与当前时刻正在执行的命令之间存在依赖关系,判定所述目标命令为所述队列切换命令;若所述目标命令中不存在所述预设标识符且所述目标命令与当前时刻正在执行的命令之间不存在依赖关系,判定所述目标命令不为所述队列切换命令。6.根据权利要求1所述的方法,其特征在于,所述读取任一所述命令执行队列内的命令作为目标命令前,所述方法还包括:设置唯一当前命令执行队列;所述读取任一所述命令执行队列内的命令作为目标命令,包括:读取所述当前命令执行队列内的命令作为所述目标命令。7.根据权利要求6所述的方法,其特征在于,所述读取并执行其它命令执行队列中的命令前,所述方法还包括:设置所述其它命令执行队列为新的所述当前命令执行队列。
8.一种命令执行方法,其特征在于,应用于命令执行装...

【专利技术属性】
技术研发人员:杨晓松
申请(专利权)人:上海天数智芯半导体有限公司
类型:发明
国别省市:

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

1