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

在解决存储器访问故障的同时重播存储器事务制造技术

技术编号:10447873 阅读:176 留言:0更新日期:2014-09-18 11:23
本发明专利技术的一个实施例是一种并行处理单元(PPU),其包括一个或多个流式多处理器(SM)并按照SM实施重播单元。一经检测到与由特定SM所发出的存储器事务相关联的页故障,对应的重播单元就令该SM,而非任何未受影响的SM,停滞发出新的存储器事务。重播单元然后将出故障的存储器事务以及任何出故障的飞行中的存储器事务存储在重播缓存器中。页故障被解决时,重播单元对重播缓存器中的存储器事务进行重播——将成功的存储器事务从重播缓存器移除——直到所存储的存储器事务全部都已成功执行为止。有利地,与一经检测到页故障就跨所有被包括在PPU中的SM停止执行存储器事务直到故障解决为止的常规的PPU相比,上述PPU的整体性能得以提高。

【技术实现步骤摘要】

本专利技术总体上涉及计算机科学,且更具体地,涉及在解决存储器访问故障的同时重播存储器事务(transaction)。
技术介绍
典型的计算机系统包括中央处理单元(CPU)和并行处理单元(PPU)。当软件应用程序在计算机系统上执行时,CPU和PPU执行存储器操作以对物理存储器位置中的数据进行存储及检索。一些先进的计算机系统实施为CPU和PPU所共用的统一虚拟存储器架构(UVM)。除此之外,该架构还使得CPU和PPU能够使用共用(例如,同一)虚拟存储器地址来访问物理存储器位置,而不管该物理存储器位置是在系统存储器还是PPU本地的存储器(PPU存储器)内。计算机系统典型地包括存储器管理功能以使虚拟存储器和分页(paging)操作便利。在正常操作过程中,指令可请求对与页出(page out)的数据页相关联的虚拟地址进行访问,从而导致访问故障。对访问故障做出响应,常规的处理单元可完成在出故障的指令之前的指令,并将出故障的指令与在出故障的指令之后开始执行的所有指令一起取消。此时,访问故障处理程序(fault handler)对所请求的数据页进行页入(page-in),并从出故障的指令开始重新启动执行。在一些情况中,相对于典型的指令执行时间,访问故障处理程序会要求相当多的时间来完成。特别是,如果计算机系统实施统一虚拟存储器架构,则访问故障处理程序会执行冗长的出故障的程序(faulting procedure),该程序在系统和PPU本地的存储器之间迁移(migrate)存储器页。在高度并行多线程先进PPU中,成百上千的存储器事务且因而许多地址转译随时都会很突出。因此,很多存储器访问故障随时都会激活。如果PPU是要实施常规的指令取消故障处理技术,则PPU将要频繁地取消所有执行单元上的几千个指令。此外,PPU将要等待冗长的访问故障处理程序,以为每个执行线程内的每个出故障的指令加载被页出的数据。这样的时延(latency)将会极大地并且通常不可接受地使整体系统性能降低。如前所述,本领域所需要的是一种更加有效的方法,以处理涉及多线程处理单元的访问故障。
技术实现思路
本专利技术的一个实施例是为一种由计算机实施的、用于处理与多线程处理单元相关联的虚拟存储器事务的方法而设。该方法包括:从第一单元接收第一虚拟存储器事务;试图执行第一虚拟存储器事务;检测与第一虚拟存储器事务有关的第一页故障;将第一虚拟存储器事务存储在重播缓存器中;引发停滞条件,所述停滞条件禁止第一单元产生随后的虚拟存储器事务,直到第一页故障已经解决为止;以及一旦第一页故障已经解决,就重新执行第一虚拟存储器事务以及存储在重播缓存器中的至少一个其他虚拟存储器事务。所公开的方法的一个优点在于,对页故障未做出贡献的多线程处理单元中所包含的单元在页故障存在时仍可继续发出虚拟存储器事务。此外,由于受影响的单元继续重播出故障的虚拟存储器事务以及出故障的飞行中虚拟存储器事务,所以在解决页故障的同时不取消这些虚拟存储器事务。因此,与常规的多线程处理单元相比,多线程处理单元的整体性能被改善,其中常规的多线程处理单元一经产生页故障,就取消由多处理单元内的所有单元所发出的虚拟存储器事务,直到页故障解决为止。附图说明因此,可以详细地理解本专利技术的上述特征,并且可以参考示范性实施例得到对如上面所简要概括的本专利技术更具体的描述,其中一些实施例在附图中示出。然而,应当注意的是,附图仅示出了本专利技术的典型实施例,因此不应被认为是对其范围的限制,本专利技术可以具有其他等效的实施例。图1是示出了配置为实现本专利技术的一个或多个方面的计算机系统的框图;图2是根据本专利技术的一个实施例的、示出统一虚拟存储器系统(UVM)的框图;图3是根据本专利技术的一个实施例的、示出配置有重播单元的统一虚拟存储器系统(UVM)的框图;图4是根据本专利技术的一个实施例的、示出图3的重播单元的概念图;以及图5是根据本专利技术的一个实施例的、用于管理由流式多处理器(SM)所发出的存储器事务的方法步骤的流程图。具体实施方式在下面的描述中,将阐述大量的具体细节以提供对本专利技术更透彻的理解。然而,本领域的技术人员应该清楚,本专利技术可以在没有一个或多个这些具体细节的情况下得以实施。系统概述图1为示出了配置为实现本专利技术的一个或多个方面的计算机系统100的框图。计算机系统100包括经由可以包括存储器桥105的互连路径通信的中央处理单元(CPU)102和系统存储器104。存储器桥105可以是例如北桥芯片,经由总线或其他通信路径106(例如超传输(HyperTransport)链路)连接到I/O(输入/输出)桥107。I/O桥107,其可以是例如南桥芯片,从一个或多个用户输入设备108(例如键盘、鼠标)接收用户输入并且经由通信路径106和存储器桥105将该输入转发到CPU102。并行处理子系统112经由总线或第二通信路径113(例如外围部件互连(PCI)Express、加速图形端口或超传输链路)连接到存储器桥105;在一个实施例中,并行处理子系统112是将像素传送到显示设备110的图形子系统,显示设备110可以是任何常规的阴极射线管、液晶显示器、发光二极管显示器等。系统盘114也可连接到I/O桥107,并且可配置为存储由CPU102和并行处理子系统112所使用的应用程序和数据以及内容。系统盘114为应用程序和数据提供非易失性存储空间,并且可包含固定式或可移除式硬盘驱动器、闪存驱动器和CD-ROM(压缩光盘只读存储器)、DVD-ROM(数字通用光盘-ROM)、蓝光、HD-DVD(高分辨率DVD)或者其他磁性、光学或固态存储设备。交换器116提供I/O桥107与诸如网络适配器118以及各种插卡120和121的其他部件之间的连接。其他部件(未明确示出),包括通用串行总线(USB)或其他端口连接、压缩光盘(CD)驱动器、数字通用光盘(DVD)驱动器、胶片录制设备及类似部件,也可以连接到I/O桥107。图1所示的各种通信路径包括具体命名的通信路径106和113可以使用任何适合的协议实现,诸如PCI-Express、AGP(加速图形端口)、超传输或者任何其他总线或点到点通信协议,并且如本领域已知的,不同设备间的连接可使用不同协议。在一个实施例中,并行处理子系统112包含经优化用于图形和视频处理的电路,包括例如视频输出电路,并且构成一个或本文档来自技高网
...

【技术保护点】
一种用于处理与多线程处理单元相关联的虚拟存储器事务的计算机实现方法,该方法包括:从第一单元接收第一虚拟存储器事务;试图执行所述第一虚拟存储器事务;检测到与所述第一虚拟存储器事务有关的第一页故障;将所述第一虚拟存储器事务存储在重播缓存器中;引发停滞条件,所述停滞条件禁止所述第一单元产生随后的虚拟存储器事务,直到所述第一页故障已经解决为止;以及一旦第一页故障已经解决,就重新执行所述第一虚拟存储器事务以及存储在所述重播缓存器中的至少一个其他虚拟存储器事务。

【技术特征摘要】
2013.03.15 US 61/793,998;2013.03.15 US 61/800,004;1.一种用于处理与多线程处理单元相关联的虚拟存储器事务的计算
机实现方法,该方法包括:
从第一单元接收第一虚拟存储器事务;
试图执行所述第一虚拟存储器事务;
检测到与所述第一虚拟存储器事务有关的第一页故障;
将所述第一虚拟存储器事务存储在重播缓存器中;
引发停滞条件,所述停滞条件禁止所述第一单元产生随后的虚拟存储
器事务,直到所述第一页故障已经解决为止;以及
一旦第一页故障已经解决,就重新执行所述第一虚拟存储器事务以及
存储在所述重播缓存器中的至少一个其他虚拟存储器事务。
2.根据权利要求1所述的方法,还包括:确定所述重播缓存器为空,并
启用所述第一单元以产生随后的虚拟存储器事务。
3.根据权利要求1所述的方法,还包括:在所述第一页故障未被解决的
同时,从第二单元接收第二虚拟存储器事务,且成功地执行所述第二虚拟存
储器事务。
4.根据权利要求1所述的方法,还包括:
在检测到所述第一页故障之前,从所述第一单元接收第二虚拟存储器事
务;
检测到与所述第二虚拟存储器事务有关的第二页故障;以及
将所述第二虚拟存储器事务存储在所述重播缓存器中。
5.根据权利要求1所述的方法,还包括:在重新执行所述第一虚拟存储
器事务之前使转译后备缓存器无效。
6.根据权利要求1所述的方法,其中,...

【专利技术属性】
技术研发人员:詹姆士·勒罗伊·德明杰尔姆·F·小杜鲁克约翰·马谢马克·海尔格罗夫卢森·邓宁乔纳森·斯图尔特·拉姆齐·埃文斯桑缪尔·H·邓肯卡梅伦·布沙特布雷恩·法斯
申请(专利权)人:辉达公司
类型:发明
国别省市:美国;US

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

1