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

通过统一存储器架构的存储器共享制造技术

技术编号:13905181 阅读:100 留言:0更新日期:2016-10-26 06:17
本发明专利技术涉及通过统一存储器架构的存储器共享。此处公开了用于在计算设备的中央处理单元(CPU)和图形处理单元(GPU)之间共享存储器的方法和系统。该方法包括在物理存储器内分配表面,并将所述表面映射到CPU页面表内的多个虚拟存储器地址。该方法还包括将所述表面映射到I/O设备页面表内的多个图形虚拟存储器地址。

【技术实现步骤摘要】
本申请是申请日为2013年6月13日申请号为第201380038015.0号专利技术名称为“通过统一存储器架构的存储器共享”的中国专利申请的分案申请。
本专利技术一般涉及存储器在计算系统内的中央处理单元(CPU)和输入/输出(I/O)设备之间的共享。更具体而言,本专利技术涉及物理存储器在CPU和I/O设备之间的共享。
技术介绍
现代I/O设备可以包括与许多中央处理单元(CPU)的计算机处理能力相匹敌的计算机处理能力。结果,传统上由CPU执行的计算任务的一部分可以被分摊给计算设备的I/O设备。例如,计算设备的诸如图形处理单元(GPU)之类的I/O设备可以执行传统上由CPU执行的某些任务,由此,提高CPU的效率。附图简述图1是根据各实施例的,可以使用的计算设备的框图;图2A和2B是根据各实施例的可以被用来实现用于在计算设备的中央处理单元(CPU)和图形处理单元(GPU)之间共享存储器的过程的统一存储器架构(UMA)的示意图;图3是示出了根据各实施例的用于在计算设备的CPU和GPU之间共享存储器的方法的流程图;图4是示出了根据各实施例的用于处理在计算设备的CPU和GPU之间共享的存储器的方法的流程图;图5是示出了根据各实施例的存储用于在计算设备的CPU和GPU之间共
享存储器的代码的有形的、非瞬时的计算机可读取的介质的框图;图6是用于实现共享的物理存储器的示例性系统的框图;和图7是其中可实现图6的系统的小形状系数设备的示意图。在整个公开和附图中使用相同的标号指示相似的组件和特征。100系列的标号涉及在图1中最初可见的特征,200系列的标号涉及在图2中最初可见的特征,以此类推。实施例的描述当前操作系统和图形接口将GPU作为I/O设备来管理,而不是将GPU作为带有类似于CPU的资源的处理器来管理。通过将GPU作为I/O设备来管理,CPU和GPU具有带有分离的物理地址域的物理存储器。当将计算任务分摊到GPU时,将数据从CPU的物理地址域复制到GPU的物理地址域。在GPU完成了处理之后,数据被复制回CPU的物理地址域。将传统上由CPU执行的计算任务的一部分分摊给计算设备的GPU可以提高CPU的效率。如上文所讨论的,为了将任务分摊到GPU,可以在CPU的物理存储器与GPU的物理存储器之间传输数据。将计算任务分摊到GPU时发生的数据传输可能会降低通过将任务分摊到GPU获得的任何效率。相应地,此处所描述的各实施例涉及存储器在计算设备的CPU和GPU之间的共享。可以通过统一存储器架构(UMA)共享存储器。在各种实施例中,UMA通过给CPU和GPU两者提供相同物理存储器,来用于在CPU和GPU之间进行存储器共享。如此,CPU和GPU的物理存储器和相应的物理地址空间完全一样。在各实施例中,物理存储器可以在CPU和GPU之间划分。进一步地,物理存储器可以是由计算设备的操作系统分配的分页系统存储器。CPU的虚拟存储器地址空间可以与GPU的图形虚拟存储地址空间被映射到相同物理存储器页面。另外,在某些实施例中,CPU和GPU在物理上位于同一个管芯中。如此,CPU和GPU可以共享在物理存储器内包含的数据,而不会将数据从GPU的地址空间复制到CPU的地址空间,或反之亦然。这可以通过,例如,缩小用于在CPU和GPU之间共享数据的时间和能耗,来降低将计算任务从CPU分摊到GPU的成本。在以下描述和权利要求书中,可使用术语“耦合”和“连接”及其派生词。应当理解,这些术语并不旨在作为彼此的同义词。相反,在特定实施例中,可以使用“连接”来表示两个或更多元件彼此处于直接的物理和/或电接触的状态。“耦合的”可表示两个或更多个元件直接物理或电接触。然而,“耦合的”也可表示两个或更多个元件并未彼此直接接触,但是仍然彼此协作、彼此相互作用。一些实施例可在硬件、固件和软件中的一者或组合中实现。一些实施例还可被实现为存储在机器可读介质上的指令,其可由计算平台读取和执行,以执行本文所述的操作。机器可读介质可以包括用于存储或传输机器(例如:计算机)可读形式的信息的任何机制。例如,机器可读介质可包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光存储介质;闪存设备;或电、光、声或其它形式的传播信号(例如,载波、红外信号、数字信号、或发送和/或接收信号的接口等)等等。实施例是实现方式或示例。说明书中对“实施例”、“一个实施例”、“一些实施例”、“各种实施例”或“另一些实施例”的引用表示结合这些实施例而描述的特定特征、结构、或特性被包括在本专利技术的至少一些实施例中,而不一定在所有的实施例中。“实施例”、“一个实施例”或“一些实施例”的各种出现不一定全部都是指相同实施例。一个实施例的元件或方面可与另一个实施例的元件或方面组合。并非本文中描述和示出的所有组件、特征、结构、特性等等都需要被包括在特定实施例或多个实施例中。例如,如果说明书陈述“可”、“可能”或“能够”包括组件、特征、结构或特性,则不一定包括该特定组件、特征、结构或特性。如果说明书或权利要求书提到“一”或“一个”元件,则这并不意味着仅有一个该元件。如果说明书或权利要求书引用“附加的”元件,则不排除有一个以上该附加的元件。要注意的是,虽然参考特定实现方式描述了一些实施例,但根据一些实施例,其他实现方式也是可能的。另外,附图中所示的和/或本文描述的电路元件或其它特征的配置和/或顺序不必以所示和所描述的特定方式安排。根据某些实施例,其他许多配置也是可能的。在附图所示出的每一系统中,在某些情况下,每一元件都可以具有相同参考编号或不同的参考编号,以暗示表示的元件可能是不同的和/或类似的。但是,元件可以足够灵活,具有不同的实现方式,并与本文所示或所述的一些或所有系统一起操作。附图中所示的各元件可以相同或不同。将哪个称为第一元件以及将哪个称为第二元件是任意的。图1是根据各实施例的可以使用的计算设备100的框图。该计算设备100可以是,例如,膝上型计算机、台式计算机、平板计算机、移动设备、服务器,等等。计算设备100可包括中央处理单元(CPU)102,适用于执行所存储的指令,还有存储器设备108,其存储可由CPU 102执行的指令。CPU 102可以是单核处理器、多核处理器、计算群集、或者任意数量的其他配置。进一步,计算设备100可包括多于一个的CPU 102。可使用由CPU 102执行的指令来实现存储器共享过程。计算设备100还可包括图形处理单元(GPU)104。GPU是计算设备100内的输入/输出(I/O)设备。I/O设备是可用于使用输入端、输出端或其任何组合与计算机进行通信的设备。如图所示,CPU 102可通过总线106连接至GPU 104。然而,在某些实施例中,GPU 104与计算设备100内的CPU 102位于相同管芯上。如此,CPU 102和GPU在物理上以这样的方式连接:可以消除CPU 102和GPU 104之间的通过总线106的连接。此外,在各实施例中,CPU 102和GPU 104可以被包括在计算设备100的统一存储器架构内,如参考图2所讨论的。GPU 104可被配置为执行计算设备100中的任意数量的图形操作。例如,GPU 104可被配置为呈现或操作图本文档来自技高网...

【技术保护点】
一种计算设备,包括:第一处理器;与所述第一处理器耦合的第二处理器,所述第一处理器和所述第二处理器位于同一管芯上,其中所述第一处理器或所述第二处理器之一是图形处理器;以及其中所述第一处理器用于在物理存储器内分配表面,所述表面直接在所述第一处理器和所述第二处理器之间共享,所述表面上的数据无需复制数据而自动可见,所述第一处理器用于将所述表面映射到所述第一处理器的地址空间内的多个虚拟存储器地址并且将所述表面映射到所述第二处理器的地址空间内的多个虚拟存储器地址。

【技术特征摘要】
2012.08.17 US 13/588,4531.一种计算设备,包括:第一处理器;与所述第一处理器耦合的第二处理器,所述第一处理器和所述第二处理器位于同一管芯上,其中所述第一处理器或所述第二处理器之一是图形处理器;以及其中所述第一处理器用于在物理存储器内分配表面,所述表面直接在所述第一处理器和所述第二处理器之间共享,所述表面上的数据无需复制数据而自动可见,所述第一处理器用于将所述表面映射到所述第一处理器的地址空间内的多个虚拟存储器地址并且将所述表面映射到所述第二处理器的地址空间内的多个虚拟存储器地址。2.如权利要求1所述的计算设备,其特征在于,所述第一处理器用于访问来自第一虚拟存储器地址的数据,所述第二处理器用于访问来自第二虚拟存储器地址的数据,所述第一和第二虚拟存储器地址被映射至所述表面。3.如权利要求1所述的计算设备,其特征在于另外包括至少一个存储器管理单元(MMU),所述至少一个存储器管理单元(MMU)与所述第一处理器、所述第二处理器、或者所述第一和第二处理器中的一者耦合,所述MMU用于管理物理存储器中分配的数据的一组物理存储器地址到所述第一处理器、所述第二处理器、或者所述第一和第二处理器中的一者的一组虚拟存储器地址的映射。4.如权利要求3所述的计算设备,其特征在于,所述至少一个MMU包括到与所述第一处理器相关联的第一页表以及与所述第二处理器相关联的第二页表的一个或多个映射。5.如权利要求4所述的计算设备,其特征在于,所述第一处理器用于将所述表面映射至所述第一页表中的多个虚拟存储器地址并且将多个所述表面映射至所述第二页表中的多个虚拟存储器地址。6.一种计算系统,包括:第一处理器;与所述第一处理器耦合的第二处理器,所述第一处理器和所述第二处理器位于同一管芯上,其中所述第一处理器或所述第二处理器之一是图形处理器;显示设备,用于显示输出数据;以及存储设备,用于存储指令,所述指令在被执行时使所述第一处理器、所述第二处理器、或者所述第一和第二处理器中的一者用于:在物理存储器内分配表面,所述表面直接在所述第一处理器和所述第二处理器之间共享,所述表面上的数据无需复制数据而自动可见;将所述表面映射到所述第一处理器的地址空间内的多个虚拟存储器地址;以及将所述表面映射到所述第二处理器的地址空间内的多个虚拟存储器地址。7.如权利要求6所述的计算系统,其特征在于,所述第一处理器用于访问来自第一虚拟存储器地址的数据,所述第二处理器用于访问来自第二虚拟存储器地址的数据,所述第一和第二虚拟存储器地址被映射至所述表面。8.如权利要求6所述的计算系统,其特征在于另外包括至少一个存储器管理单元(MMU),所述至少一个存储器管理单元(MMU)与所述第一处理器、所述第二处理器、或者所述第一和第二处理器中的一者耦合,所述MMU用于管理物理存储器中分配的数据的一组物理存储器地址到所述第一处理器、所述第二处理器、或者所述第一和第二处理器中的一者的一组虚拟存储器地址的映射。9.如权利要求8所述的计算系统,其特征在于,所述至少一个MMU包括到存储器的一个或多个映射,所述存储器包括与所述第一处理器相关联的第一页...

【专利技术属性】
技术研发人员:J·N·拉奥M·桑德里森
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1