[发明专利]处理系统中动态生成的任务的信令、排序和执行无效
申请号: | 201210548491.4 | 申请日: | 2012-12-17 |
公开(公告)号: | CN103197955A | 公开(公告)日: | 2013-07-10 |
发明(设计)人: | 蒂莫西·约翰·珀塞尔;兰基·V·姗;杰尔姆·F·小杜鲁克;肖恩·J·特赖斯勒;卡里姆·M·阿夫达利亚;菲利普·亚历山大·夸德拉;贝里安·帕里斯 | 申请(专利权)人: | 辉达公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 北京市磐华律师事务所 11336 | 代理人: | 董巍;徐丁峰 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理 系统 动态 生成 任务 排序 执行 | ||
技术领域
本发明总体上涉及计算任务的执行,并且更具体地,涉及处理系统中动态生成的任务的信令、排序和执行。
背景技术
常规上,将要在多处理器系统中处理的任务均接收自单个输入流。如果第一任务将会生成将要由第二任务所处理的数据,那么还从单个输入流接收第二任务,并且由中央处理单元(CPU)实施将第二任务插入单个输入流,该中央处理单元与多处理器系统是分开的。
为了实施插入,必须告知CPU准备处理第二任务,并且为其提供存储第二任务的位置。第二任务的处理由于执行第一任务的多处理器系统和CPU之间所需的通信而造成的延迟而引发附加等待时间。
相应地,本领域需要一种用于使能所生成的任务插入到多处理器系统的调度管线中而无需CPU的参与的系统和方法。
发明内容
用于使能所生成的处理任务插入到多处理器系统的调度管线中而无需CPU的参与的系统和方法。当正在执行的计算任务动态生成动态任务并且写存储器中队列的用于动态任务的数据存储于其中的条目时,生成反射通知信号并且直接将其传输到多处理器系统的调度单元,而无需CPU参与。所传输的反射通知信号包括与在队列中存储数据的写请求相对应的信息。响应于其他事件在计算任务的执行期间生成附加信号并且其被直接传输到调度单元,所述其他事件例如开始动态任务的处理、使存储用于计算任务的数据的高速缓存条目无效,以及使能另一个计算任务的调度。
用于通知任务管理器数据可用于处理的本发明的方法的各种实施例包括:生成传输到任务管理器的第一通知信号,其中通知信号包括第一偏移和第一Δ值。在与第一处理任务相对应的队列中存储与第一偏移和第一Δ值相关联的第一数据。生成第二通知信号并将其传输到任务管理器,其中通知信号包括第二偏移和第二Δ值。在与第一处理任务相对应的队列中存储与第二偏移和第二Δ值相关联的第二数据。接收所述第一通知信号和第二通知信号,并且任务管理器确定第一偏移和第一Δ值是否能够与第二偏移和第二Δ值合并,以生成经合并的偏移和经合并的Δ值。任务管理器调度用于处理集群阵列中的第一处理任务的第一数据和第二数据中的至少一个的处理。
本发明的各种实施例包括用于通知任务管理器数据可用于处理的系统,其包括队列、存储器管理单元和任务管理器。队列对应于第一处理任务并且配置为存储包括第一数据和第二数据的数据;存储器管理单元配置为生成直接传输到任务管理器的第一通知信号,其中通知信号指定与第一数据相关联的第一偏移和第一Δ值,以及生成直接传输到任务管理器的第二通知信号,其中通知信号指定与第二数据相关联的第二偏移和第二Δ值。任务管理器配置为接收第一通知信号和第二通知信号,确定第一偏移和第一Δ值是否能够与第二偏移和第二Δ值合并,以生成经合并的偏移和经合并的Δ值,以及调度用于处理集群阵列中的第一处理任务的第一数据和第二数据中的至少一个的处理。
此外,与将动态任务队列中的条目分配给生成用于动态任务的数据的线程的顺序相比,写动态任务队列的条目的顺序可以不同。因此,当由线程动态生成的数据写入队列时,跟踪已经被写的队列的有顺序的条目,并且当在队列的前面的条目的序列已经被写并且可以调度用于处理以开始(或继续)动态任务的执行时通知调度单元。分配条目给执行生成用于动态任务的数据的计算任务的线程与由不同的线程写条目的解耦允许生成数据的线程简单地写条目并随后退出或继续处理其他数据。因此,线程写队列不需要按照与线程接收条目的分配相同的顺序进行。但是,当条目的序列准备好被调度时,跟踪和通知调度单元允许尽快地处理数据。
重要的是,做以下事情不需要与CPU通信:(a)当用于动态任务的数据准备好被处理时通知CPU,(b)使高速缓存条目无效,或(c)使能另一个计算任务的调度。因此,与要求CPU参与的系统相比较,为以下工作减小等待时间:(a)调度动态任务数据的处理,(b)无效高速缓存条目,和(c)使能另一个计算任务的调度。
附图说明
为了详细地理解本发明的上述特征,对于以上简要概括的发明,可以参照实施例进行更为具体的描述,其中一些实施例示出于附图中。然而,应注意的是,附图中示出的只是本发明的代表性实施例,因此不应被认为是对本发明的范围的限制,本发明可以适用于其他同等有效的实施例。
图1是示出了配置为实现本发明的一个或多个方面的计算机系统的框图;
图2是根据本发明一个实施例的、用于图1的计算机系统的并行处理子系统的框图;
图3A是根据本发明一个实施例的、图2的任务/工作单元的框图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于辉达公司,未经辉达公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210548491.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:指令高速缓存功耗降低
- 下一篇:图像处理装置和图像处理系统