当前位置: 首页 > 专利查询>辉达公司专利>正文

执行资源的动态分区制造技术

技术编号:21798663 阅读:40 留言:0更新日期:2019-08-07 10:23
本发明专利技术公开了执行资源的动态分区。本发明专利技术的实施例提供用以向在图形处理单元中的线程组分配执行资源的技术。包括在所述图形处理单元中的计算工作分配器接收来自进程的指示,其指示将启动第一线程组。计算工作分配器确定与所述进程相关联的第一子上下文具有至少一个处理器信用。在一些实施例中,如果TPC中的一个已经获取了充足的空间,即使在没有处理器信用的情况下也可以启动CTA。计算工作分配器标识第一处理器,其包括在多个处理器中并具有的处理负载小于或等于与包括在多个处理器中的其他处理器相关联的处理器负载。计算工作分配器启动所述第一线程组以在所述第一处理器上执行。

Dynamic partitioning of execution resources

【技术实现步骤摘要】
执行资源的动态分区
技术介绍

本专利技术的实施例一般地涉及计算机处理;并且,更具体地说,涉及对执行资源的动态分区。相关技术描述现代图形处理单元(GPU)通常被配置成并行执行大量线程。在这样做时,通常将GPU限制为总是在一个上下文中操作,其中所有线程在相同的上下文下执行。这一限制意味着,在特定时间执行的所有线程共享相同的GPU状态和相同的虚拟地址空间。这种操作模型适用于展现大量并行性的进程,其中该进程可以利用GPU的大部分可用处理资源。然而,许多应用程序执行多个进程,其中每个进程仅表现足够的并行性以利用GPU的一小部分可用处理资源,并且每个进程需要不同的GPU状态和不同的虚拟地址空间。因此,执行多个进程的应用程序经常在GPU上低效运行。为了解决该问题,一些GPU执行模型在单一上下文中操作,其中该上下文具有多个子上下文,并且将每个子上下文指派给不同的进程。在这种方法中,所有子上下文在相同的上下文中操作,但是每个子上下文具有不同的GPU状态和不同的虚拟地址空间。在一个特定实现中,将每个子上下文静态地指派给一个或更多个特定纹理处理集群(TPC),其中每个TPC包括两个或更多个流多处理器(S本文档来自技高网...

【技术保护点】
1.一种用于将执行资源分配给图形处理单元中的线程组的计算机实现的方法,所述方法包括:从进程接收将启动第一线程组的指示;确定与所述进程相关联的第一子上下文具有至少一个处理器信用;标识包括在多个处理器中的第一处理器,所述第一处理器具有的处理负载等于或小于与包括在所述多个处理器中的所有其他处理器相关联的处理器负载;启动所述第一线程组以在所述第一处理器上执行。

【技术特征摘要】
2018.01.31 US 15/885,751;2018.01.31 US 15/885,7611.一种用于将执行资源分配给图形处理单元中的线程组的计算机实现的方法,所述方法包括:从进程接收将启动第一线程组的指示;确定与所述进程相关联的第一子上下文具有至少一个处理器信用;标识包括在多个处理器中的第一处理器,所述第一处理器具有的处理负载等于或小于与包括在所述多个处理器中的所有其他处理器相关联的处理器负载;启动所述第一线程组以在所述第一处理器上执行。2.如权利要求1所述的计算机实现的方法,其中所述第一子上下文包括在多个子上下文中,并且包括在所述多个子上下文中的每个子上下文与不同的进程和不同的虚拟地址空间相关联。3.如权利要求1所述的计算机实现的方法,其中所述第一子上下文包括在多个子上下文中,并且包括在所述多个子上下文中的每个子上下文与不同的状态数据相关联。4.如权利要求1所述的计算机实现的方法,其中:所述第一子上下文包括在多个子上下文中;所述第一子上下文与第一虚拟地址空间相关联;包括在所述多个子上下文中的第二子上下文与所述第一虚拟地址空间相关联;以及包括在所述多个子上下文中的第三子上下文与第二虚拟地址空间相关联,所述第二虚拟地址空间与所述第一虚拟地址空间不同。5.如权利要求1所述的计算机实现的方法,进一步包括:响应于启动所述第一线程组以在所述第一处理器上执行,递减与所述第一子上下文相关联的信用计数器。6.如权利要求5所述的计算机实现的方法,进一步包括:确定所述第一线程组已经完成在所述第一处理器上的执行;以及递增与所述第一子上下文相关联的信用计数器。7.如权利要求1所述的计算机实现的方法,其中标识包括在所述多个处理器中的第一处理器包括:针对包括在所述多个处理器中的每个处理器确定可用执行时隙的计数;标识包括在所述多个处理器中的具有最高计数的可用执行时隙的一个或更多个处理器;以及从所述一个或更多个处理器中选择所述第一处理器。8.如权利要求1所述的计算机实现的方法,进一步包括:确定所述第一子上下文相对于与当前在所述第一处理器上执行的第二线程组相关联的任何子上下文是非独占的。9.如权利要求1所述的计算机实现的方法,进一步包括:从第一表中检索与所述第一子上下文相关联的第一记录;以及从所述第一记录确定包括在所述多个处理器中的每个处理器相对于执行与所述第一子上下文相关联的至少一个线程组是可用的。10.如权利要求9所述的计算机实现的方法,其中在启动任何线程组以在包括在所述多个处理器中的任何处理器上执行之前,通过操作系统或超级管理程序对所述第一表进行初始化。11.如权利要求9所述的计算机实现的方法,进一步包括:从第二表中检索与所述第一子上下文相关联的第二记录,其中所述第二记录针对包括在所述多个处理器中的每个处理器指定不同的虚拟处理器标识符,包括在所述多个处理器中的每个处理器相对于执行与所述第一子上下文相关联...

【专利技术属性】
技术研发人员:杰尔姆·F·小杜鲁克卢克·杜兰特R·M·纳瓦罗A·梅内塞斯杰夫·塔基广田源太郎贝里安·帕里斯
申请(专利权)人:辉达公司
类型:发明
国别省市:美国,US

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

1