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

通过标记CPU流量为特殊来避免死锁制造技术

技术编号:4279374 阅读:186 留言:0更新日期:2012-04-11 18:40
通过标记CPU流量为特殊来避免死锁。通过将并行处理器发出给系统存储器的读请求标记为“特殊”而避免死锁。标记为特殊的与读请求相关的读完成在PCIe总线的虚拟通道1上路由。在虚拟通道1上返回的数据不会由在虚拟通道0上的写请求停止,因此避免了潜在的死锁。

【技术实现步骤摘要】

本专利技术一般地涉及计算机硬件,并更特别地涉及通过标记CPU流量为特殊来避免 死锁的方法和系统。
技术介绍
常规的计算机系统包括中央处理单元(CPU)且也可以包括已知为并行处理单元 (PPU)的协处理器。CPU将一定的处理操作卸下给PPU以减少CPU的处理工作量。其中,这 些处理操作包括压缩和解压缩操作。当CPU需要这些处理操作时,CPU发出请求给PPU,包 括读请求和/或写请求。例如,CPU可能需要将数据写到可能以压缩的格式存储的系统存 储器中。CPU发送写请求给PPU,然后PPU可以读和解压缩与该写请求相关的数据并将解压 缩的和与新数据合并的原始数据写到系统存储器中。有时,CPU发出的写请求可能引起PPU发出必须在初始写请求能完成之前完成的 一个或多个“派生的”读请求。例如,PPU可以发出以与CPU相关的系统存储器单元为目标 的派生的读请求。当读事务完成时,系统存储器发出读完成给PPU,这通知PPU该事务完成。但是,当CPU和PPU通过具有一个或多个待决写请求的外围部件接口快速(PCIe) 总线连接时,可能产生问题。由于PCIe总线的排序规则,读完成不能超过写请求,因此任何 派生的读请求不能返回读完成给PPU。因此,初始的写请求不能完成。这种情况在本领域中 已知为循环依存或“死锁”。死锁使在CPU和PPU之间的一些或所有的通信停止并不利地影 响计算机系统的处理吞吐量。下面讨论死锁条件的一些例子。在第一个例子中,如果PPU需要从存储在系统存储器中的页表读且写请求在PCIe 总线中待决,则可能发生死锁。当PPU向发出读请求给系统存储器以从页表中获取项目时, 与读请求相关的读完成不能返回给PPU,因此初始的写请求不能完成。当CPU发出以在与PPU相关的高速缓存存储器单元中的高速缓存行为目标的写请 求给PPU时,也可能发生死锁。为了完成写请求,PPU首先通过检查标签存储件确定高速缓 存行是否压缩。标签存储件指示与在高速缓存存储器单元中的最近访问的高速缓存行相关 的压缩状态。当标签存储件不包括由写请求指定的高速缓存行的压缩状态时,PPU发出读 请求给系统存储器以访问包括在高速缓存存储器单元中的每个高速缓存行的压缩状态的 后备存储件。后备存储件返回指定的高速缓存行的压缩状态并发出读完成。但是,当写请 求在PCIe中待决时,由于与读请求相关的读完成不能超过这些待决的写请求,因此可能发 生死锁。当CPU试图写数据到压缩的系统存储器的区域中(本领域中已知为“压缩片”)时, 可能发生第三种死锁,。CPU发出指定压缩片和包括写数据的写请求给PPU。PPU发出读请 求给系统存储器以读压缩片。当写请求在PCIe中待决时,由于与读请求相关的读完成又不 能超过这些待决的写请求,因此可能发生死锁。除了这三个例子外,还有数个其他情况可能导致死锁。因此,本领域中仍然需要避 免死锁的方法和系统。
技术实现思路
本专利技术的实施例提供了在计算机系统中避免死锁的方法和系统,该计算机系统具 有第一处理单元、第二处理单元、存储器桥、系统存储器和将第二处理单元连接到第一处理 单元、存储器桥和系统存储器的总线。当读或写请求从第一处理单元发送到第二处理单元 时避免了死锁。根据本专利技术实施例的避免死锁的方法包括在总线的第一虚拟通道上在第二处理 单元接收读或写请求;在处理读或写请求时在第二处理单元产生派生的读请求;通过总线 的第二虚拟通道将派生的读请求发送给系统存储器;在总线的第二虚拟通道上接收派生的 读请求的完成;和完成接收的读或写请求。根据本专利技术实施例的避免死锁的系统包括在第二处理单元中的总线接口单元。该 总线接口单元配置为在第一虚拟通道上从第一处理单元接收读或写请求,并将在处理读或 写请求时产生的派生的读请求通过第二虚拟通道发送。附图说明为了详细地理解本专利技术的上述特征,对于以上简要说明的本专利技术,将参照实施例 进行更为具体的描述,其中对一些实施例在附图中进行了图示。然而,需要注意的是,附图 只是图示本专利技术的代表性实施例,因此不能认为附图限制了本专利技术的范围,本专利技术可以允 许其他同样有效的实施例。图1是图示配置为实现本专利技术的一个或多个方面的计算机系统的框图;图2是根据本专利技术一个实施例的图1中的计算机系统的并行处理子系统的框图;图3A是根据本专利技术一个实施例的在图2的并行处理单元(PPU)之一中的通用处 理簇(GPC)的框图;图3B是根据本专利技术一个实施例的在图2中的并行处理单元之一中的分区单元的 框图;图4是根据本专利技术一个实施例的配置为避免死锁的计算机系统的框图;和图5是根据本专利技术一个实施例的避免死锁的方法步骤的流程图。具体实施例方式在下文的描述中,给出了大量具体的细节以便提供对本专利技术更为彻底的理解。然 而,对于本领域技术人员来说显而易见的是,本专利技术可以无需一个或多个这些具体细节而 得以实施。在其他的例子中,为了避免与本专利技术发生混淆,公知的一些特征未进行描述。系统概述图1是图示配置为实现本专利技术一个或多个方面的计算机系统100的框图。计算机 系统100包括中央处理单元(CPU) 102和系统存储器104,二者通过存储器桥105经由总线 路径进行通信。存储器桥105可以如图1所示集成到CPU 102中。作为替换,存储器桥105 可以是惯常设备例如北桥芯片,其通过总线连接到CPU 102。存储器桥105通过通信路径 106 (例如HyperTransport (超传输)链路)与I/O (输入/输出)桥107相连接。I/O桥 107例如可以是南桥芯片,其从一个或多个用户输入设备108(例如键盘、鼠标)接收用户输4入,并将该输入通过路径106和存储器桥105转发给CPU 102。并行处理子系统112通过 总线或其他通信路径113 (例如PCIExpress、加速图形端口或超传输链路)与存储器桥105 相耦合;在一个实施例中,并行处理子系统112是将像素提供给显示设备110(例如传统的 CRT或基于IXD的显示器)的图形子系统。系统盘114同样连接于I/O桥107。开关116 提了 I/O桥107和诸如网络适配器118以及各种插卡120和121的其他部件之间的连接。 包括USB或其他端口连接、CD驱动器、DVD驱动器、电影记录设备等的其他部件(图中没有 明确示出),也可以与I/O桥107相连接。将图1中的各种部件相互连接的通信路径可以用 任何适用的协议来实现,比如PCI (外设部件互连)、PCI Express (PCI-E)、AGP (加速图形端 口)、超传输或任何其他总线或点对点通信协议,并且不同设备之间的连接可以使用不同协 议,如本领域已知的。在一个实施例中,并行处理子系统112包括为图形和视频处理优化的电路,包括 例如视频输出电路,并构成了图形处理单元(GPU)。在另一实施例中,并行处理子系统112 包括为通用处理优化,并保留了底层计算架构的电路,本文将更加详细地描述。在另一实施 例中,并行处理子系统112可以集成一个或多个其他系统元件,例如存储器桥105、CPU 102 和I/O桥107,以形成片上系统(SoC)。可以理解的是,这里示出的系统只是示意性的,可以对其进行变化和修改。包括桥 的数量和排列的连接拓扑结构可以根据需要修改。例如,在一些实施例中,系统本文档来自技高网
...

【技术保护点】
一种计算机系统,包括:第一处理单元、第二处理单元、存储器桥、系统存储器和通过第一虚拟通道和第二虚拟通道将该第二处理单元连接到该第一处理单元、该存储器桥和该系统存储器的总线;其中该第二处理单元包括总线接口单元,该总线接口单元配置为:(i)从该第一处理单元通过该第一虚拟通道接收读或写请求;和(ii)将在处理该读或写请求时产生的派生的读请求在该第二虚拟通道上发送。

【技术特征摘要】
US 2008-12-12 12/334,394一种计算机系统,包括第一处理单元、第二处理单元、存储器桥、系统存储器和通过第一虚拟通道和第二虚拟通道将该第二处理单元连接到该第一处理单元、该存储器桥和该系统存储器的总线;其中该第二处理单元包括总线接口单元,该总线接口单元配置为(i)从该第一处理单元通过该第一虚拟通道接收读或写请求;和(ii)将在处理该读或写请求时产生的派生的读请求在该第二虚拟通道上发送。2.根据权利要求1的计算机系统,其中该第二处理单元进一步包括具有转换后备缓冲 器的存储器管理单元,且当在该转换后备缓冲器中发生缺失时该存储器管理单元产生该派 生的读请求。3.根据权利要求1的计算机系统,进一步包括用于该第二处理单元的本地存储器,其 中该第二处理单元通过高速缓存存储器单元与该本地存储器连接且该高速缓存存储器单 元产生该派生的读请求。4.根据权利要求3的计算机系统,其中当该读或写请求访问没有存储在该高速缓存存 储器单元中的压缩状态信息时,该高速缓存存储器单元产生该派生的读请求。5.根据权利要求3的计算机系统,其中当该读或写请求从该系统存储器的压缩的区域 访问数据时,该高速缓存存储器单元产生...

【专利技术属性】
技术研发人员:塞缪尔H邓肯戴维B格拉斯科黄伟杰阿图卡拉姆布尔帕特里克R马尔尚丹尼斯K马
申请(专利权)人:辉达公司
类型:发明
国别省市:US

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

1