当前位置: 首页 > 专利查询>英特尔公司专利>正文

分层线程调度制造技术

技术编号:31228548 阅读:15 留言:0更新日期:2021-12-08 09:40
本发明专利技术标题为“分层线程调度”。本文所述示例涉及图形处理设备,其包括存储器装置以及耦合到存储器装置的图形处理单元(GPU),GPU可被配置成:执行指令线程;确定信号屏障是否与指令线程相关联;对于与指令线程相关联的信号屏障,确定信号屏障是否被清除;以及基于信号屏障被清除,允许与信号屏障标识符相关联的任何等待指令线程开始执行,但不允许不与信号屏障标识符相关联的任何等待线程开始执行。在一些示例中,信号屏障包含信号屏障标识符。在一些示例中,信号屏障标识符是多个值之一。在一些示例中,网关被用于接收信号屏障标识符的指示并且基于与信号屏障相关联的清除条件被满足来选择性地清除与信号屏障标识符相关联的等待指令线程的信号屏障。待指令线程的信号屏障。待指令线程的信号屏障。

【技术实现步骤摘要】
分层线程调度

技术介绍

[0001]分层并行性(parallelism)是用于在中央处理单元(CPU)上执行应用的流行模型。例如,OpenMP应用编程接口版本1.0和向上支持C、C + +和Fortran中的多平台共享存储器并行编程。OpenMP应用编程接口定义了用于在计算平台上开发并行应用的接口。OpenMP提供引导(lead)线程来执行,并且然后分支到多个工作器线程,使得线程然后在计算环境中并发地运行。诸如IBM、Nvidia和AMD之类的各种供应商通过使用软件状态机来支持分层并行性。
附图说明
[0002]图1是根据实施例的处理系统的框图。
[0003]图2A

2D示出了由本文所述的实施例提供的计算系统和图形处理器。
[0004]图3A

3C示出了由本文所述的实施例提供的附加图形处理器和计算加速器架构的框图。
[0005]图4是根据一些实施例的图形处理器的图形处理引擎的框图。
[0006]图5A

5B示出了根据本文所述的实施例包括图形处理器核中所采用的处理元件的阵列的线程执行逻辑。
[0007]图6示出了根据实施例的附加执行单元。
[0008]图7是示出根据一些实施例的图形处理器指令格式的框图。
[0009]图8是图形处理器的另一实施例的框图。
[0010]图9A是示出根据一些实施例的图形处理器命令格式的框图。
[0011]图9B是示出根据实施例的图形处理器命令序列的框图。
[0012]图10示出了根据一些实施例的数据处理系统的示例性图形软件架构。
[0013]图11A是示出了根据实施例可以用于制造集成电路以执行操作的IP核开发系统的框图。
[0014]图11B示出了根据本文所述的一些实施例的集成电路封装组装件的截面侧视图。
[0015]图11C示出了包括连接至衬底的硬件逻辑小芯片(chiplet)的多个单元的封装组装件。
[0016]图11D示出了根据实施例的包括可互换小芯片的封装组装件。
[0017]图12、图13A和图13B示出了根据本文所述的各种实施例可以使用一个或多个IP核来制作的示例性集成电路和相关联的图形处理器。
[0018]图14描绘了多个线程团队的执行的示例。
[0019]图15描绘了从单个引导线程到多个工作器线程的转化的示例。
[0020]图16描绘了使用多个屏障(barrier)的示例。
[0021]图17描绘了使用屏障网关的示例。
[0022]图18描绘了可利用多个信号屏障标识符的值的矩阵上进行多线程执行的示例。
[0023]图19描绘了示例系统。
[0024]图20描绘了示例过程。
[0025]图21描绘了示例过程。
具体实施方式
[0026]在以下描述中,出于解释的目的,阐述了许多特定细节以便提供对以下描述的本专利技术的实施例的透彻理解。然而,本领域技术人员将明白,可以在没有这些特定细节中的一些细节的情况下实施本专利技术的实施例。在其他实例中,以框图形式示出了公知的结构和装置,以避免使本专利技术的实施例的基本原理模糊。
[0027]各种实施例提供用于编译应用分层并行性并且包含具有一个或多个信号屏障标识符的一个或多个信号屏障的代码段的一部分。在一些实施例中,信号屏障可识别线程是数据的生产者还是消费者,或者数据的生产者和数据的消费者两者,以及生产者或消费者的数量。在一些实施例中,信号屏障可指示生产者线程与一个或多个等待消费者线程之间共享存储器的级别。信号屏障可指示在清除信号屏障之后将跳转到的指令队列中的指令指针位置。各种实施例可使用硬件实现的网关来确定是否将针对一个或多个线程清除与特定信号屏障标识符相关联的信号屏障,并且允许这样一个或多个线程的执行。
[0028]系统概述图1是根据实施例的处理系统100的框图。系统100可用于单处理器台式计算机系统、多处理器工作站系统或具有大量处理器102或处理器核107的服务器系统中。在一个实施例中,系统100是并入在供移动、手持式或嵌入式装置中(诸如在具有与局域网或广域网的有线或无线连接性的物联网(IoT)装置内)使用的片上系统(SoC)集成电路内的处理平台。
[0029]在一个实施例中,系统100可包含以下各项、与以下各项耦合或者被集成在以下各项内:基于服务器的游戏平台;游戏控制台,包含游戏和媒体控制台、移动游戏控制台、手持式游戏控制台或在线游戏控制台。在一些实施例中,系统100是以下各项的一部分:移动电话、智能电话、平板计算装置或诸如具有低内部存储容量的膝上型计算机之类的移动因特网连接的装置。处理系统100还可包括以下各项、与以下各项耦合或者被集成在以下各项内:可穿戴装置,诸如智能手表可穿戴装置;智能眼镜或服装,其利用增强现实(AR)或虚拟现实(VR)特征来被增强以提供视觉、音频或触觉输出,从而补充现实世界视觉、音频或触觉体验或者以其他方式提供文本、音频、图形、视频、全息图像或视频、或者触觉反馈;其他增强现实(AR)装置;或者其他虚拟现实(VR)装置。在一些实施例中,处理系统100包括电视或机顶盒装置,或者是电视或机顶盒装置的一部分。在一个实施例中,系统100可包含以下各项、与以下各项耦合或者被集成在以下各项内:自驾驶交通工具,诸如公共汽车、牵引车拖车、汽车、摩托车或电动自行车、飞机或滑翔机(或其任何组合)。自驾驶交通工具可使用系统100来处理在交通工具周围感测到的环境。
[0030]在一些实施例中,一个或多个处理器102各自包括一个或多个处理器核107以处理指令,所述指令在被执行时,执行用于系统或用户软件的操作。在一些实施例中,一个或多个处理器核107中的至少一个处理器核被配置成处理特定指令集109。在一些实施例中,指令集109可促进复杂指令集计算(CISC)、精简指令集计算(RISC)或经由超长指令字(VLIW)的计算。一个或多个处理器核107可处理不同指令集109,所述指令集109可包括用于促进对
其他指令集的仿真的指令。处理器核107还可包括其他处理装置,诸如数字信号处理器(DSP)。
[0031]在一些实施例中,处理器102包含高速缓存存储器104。取决于架构,处理器102可具有单个内部高速缓存或多个级别的内部高速缓存。在一些实施例中,在处理器102的各种组件之间共享高速缓存存储器。在一些实施例中,处理器102还使用外部高速缓存(例如,3级(L3)高速缓存或末级高速缓存(LLC))(未示出),其可使用已知高速缓存一致性技术在处理器核107之间被共享。寄存器堆106可另外被包含在处理器102中,并且可包括用于存储不同类型的数据的不同类型的寄存器(例如,整数寄存器、浮点寄存器、状态寄存器和指令指针寄存器)。一些寄存器可以是通用寄存器,而其他寄存器可特定于处理器102的设计。
[0032]在一些实施例中,一个或多个处理器102与一个或多个接口总线110耦合,以在处理器102与系统1本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1. 一种图形处理设备,包括:存储器装置;以及耦合到所述存储器装置的图形处理单元(GPU),所述GPU被配置成:执行指令线程;确定信号屏障是否与所述指令线程相关联,其中,所述信号屏障包含信号屏障标识符,其中,所述信号屏障标识符是多个值中的一个;对于与所述指令线程相关联的信号屏障,确定所述信号屏障是否被清除;以及基于所述信号屏障被清除,允许与所述信号屏障标识符相关联的任何等待指令线程开始执行,但不允许不与所述信号屏障标识符相关联的任何等待线程开始执行。2.根据权利要求1所述的图形处理设备,包括:网关,用于接收信号屏障标识符的指示,并且基于与所述信号屏障相关联的清除条件被满足来选择性地清除与所述信号屏障标识符相关联的等待指令线程的信号屏障。3.根据权利要求2所述的图形处理设备,其中,所述清除条件包括以下中的一个或多个:被完成的生产者线程的数量或被完成的消费者线程的数量。4.根据权利要求2所述的图形处理设备,其中,所述网关基于所述等待指令线程的所述信号屏障的清除来允许调度所述等待指令线程的执行。5.根据权利要求1所述的图形处理设备,其中,所述信号屏障标识符能够识别线程工作组的多个信号屏障。6.根据权利要求1所述的图形处理设备,其中,所述信号屏障包括以下中的一个或多个:经受所述信号屏障的生产者线程的数量、经受所述信号屏障的消费者线程的数量、所述信号屏障是应用于消费者还是生产者类型线程、存储器共享方案或者指向指令队列的指令指针。7.根据权利要求6所述的图形处理设备,其中,所述存储器共享方案用于指示是否允许等待线程访问由所述指令线程写入的存储器区域。8.根据权利要求6所述的图形处理设备,其中,所述指令指针用于识别所述指令队列中将由所述等待指令线程执行的下一指令。9.根据权利要求1所述的图形处理设备,其中,所述GPU被配置成使用所述信号屏障来执行分层并行线程执行。10.根据权利要求1所述的图形处理设备,包括中央处理单元(CPU),用于生成包括由所述指令线程执行的指令、所述信号屏障和第二指令的经编译指令以供所述等待指令线程执行。11.根据权利要求1所述的图形处理设备,包括以下中的一个或多个:显示器,用于显示使用所述指令线程生成的内容;网络接口,用于接收要处理的内容;以及存储装置,用于存储使用所述指令线程生成的内容。12.一种非暂时性计算机可读介质,包括其上存储的指令,所述指令如果由一个或多个处理器执行则使所述一个或多个处理器:执行驱动程序以:将命令转译成处理器可执行指令;以及基于包括分层并行顺序的指令的代码段,提供支持工作组的多个屏障标识符的信号屏
障,其中,所述信号屏障与从多个标识符中选择的信号屏障标识符相关联。13. 根据权利要求12所述的计算机可读介质,其中,所述命令与以下中的一个或多个兼容:FORTRAN、C、C++、OpenMP、ANL、SPEC ACCEL OMP Op...

【专利技术属性】
技术研发人员:江宏S
申请(专利权)人:英特尔公司
类型:发明
国别省市:

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

1