[发明专利]共享虚拟存储器有效

专利信息
申请号: 200980154460.7 申请日: 2009-11-05
公开(公告)号: CN102625934A 公开(公告)日: 2012-08-01
发明(设计)人: H·陈;Y·高;周小成;S·闫;P·张;J·方;A·孟德尔森;B·萨哈;莫罕·拉贾戈帕兰 申请(专利权)人: 英特尔公司
主分类号: G06F15/167 分类号: G06F15/167;G06F9/46;G06F13/14
代理公司: 上海专利商标事务所有限公司 31100 代理人: 毛力
地址: 美国加利*** 国省代码: 美国;US
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 共享 虚拟 存储器
【说明书】:

背景技术

这通常涉及共享虚拟存储器实施方式。

计算工业正在朝向多样性的平台体系结构发展,该平台体系结构由通用CPU以及作为分离设备或集成设备而附连的可编程GPU所构成。这些GPU通过连续或非连续互连来连接,具有不同的工业标准体系结构(ISA)并可使用它们自己的操作系统。

由通用处理器(CPU)以及图形处理器(GPU)的组合所组成的计算平台已经无处不在,特别是在客户机计算空间中。如今,几乎所有桌面和笔记本平台都载有一个或多个CPU以及集成或分离的GPU。例如,一些平台具有与集成图形芯片组成对的处理器,而其余的使用通过诸如PCI-Express之类的接口连接的分离图形处理器。一些平台载有CPU和GPU的组合。例如,它们中的一些包括更为集成的CPU-GPU平台,而其他的包括图形处理器以补偿集成GPU供给。

这些CPU-GPU平台可提供在图形处理、医疗成像、数据挖掘、以及其他领域的非图形工作负载上的极大的性能提升。大量的数据并行GPU可被用于获取代码的高度并行部分上的高吞吐量。多样性的CPU-GPU平台可具有多个独特的体系结构约束,诸如:

●GPU可以集成和分离的方式连接。例如,一些图形处理器与芯片组集成。另一方面,其他当前的GPU以分离方式通过诸如PCI-Express之类的接口附连。虽然硬件可提供CPU和集成图形处理器之间的缓存一致性,但是对分离的GPU却很难如此。系统也可具有混合配置,其中低功率低性能GPU与CPU集成,且具有更高性能的分离GPU。最终,平台也可具有多个GPU卡。

●CPU和GPU可具有不同的操作系统。例如,处理器可具有它自己的操作系统内核。这意味着虚拟存储器翻译机制在CPU和GPU之间可能是不同的。相同的虚拟地址可能被通过CPU和GPU上的两个不同的页表被同时映射到两个不同的物理地址。这也意味着系统环境(加载器、链接器、等等)在CPU和GPU之间可以是不同的。例如,加载器可将应用加载在CPU和GPU上的不同基地址。

●CPU和GPU可具有不同的ISA,并因此相同的代码可能无法在两个处理器上运行。

附图简述

图1是根据一个实施例的CPU-GPU存储器模型的图示。

图2是用于增加了所有权权限的共享存储器模型的一个实施例的流程图。

图3是共享存储器模型的一个实施例的流程图。

图4是利用PCI开口的共享存储器模型的一个实施例的流程图。

图5是利用PCI开口的共享存储器模型的一个实施例的流程图。

图6是操作中的共享存储器模型的一个实施例的流程图。

详细描述

发明的多个实施例提供了用于CPU-GPU平台的编程模型。特别是,本发明的多个实施例提供用于集成和分离设备的统一编程模型。该模型也可以统一地对多个GPU卡和混合GPU系统(分离的和集成的)工作。这允许软件销售商编写单个应用堆栈并将使其面向所有不同的平台。此外,本发明的实施例提供了在CPU和GPU之间的共享存储器模型。代替了共享整个虚拟地址空间,仅仅一部分虚拟地址空间需要被共享。这允许在分离的和集成的设置中的有效实现。进一步的,语言注释可被用于区分必须被运行在GPU上的代码。语言支持可被扩展为包括诸如函数指针之类的特征。

共享存储器模型的诸实施例提供了新颖的编程式样。特别是,数据结构可以在CPU和GPU之间无缝共享,并且可以从一端向另一端传递指针而不要求任何格式编组。例如,在一个实施例中,游戏引擎和包括物理、人工智能(AI)以及渲染。物理和AI代码最好在CPU上执行,而渲染最好在GPU上执行。诸如场景图片之类的数据结构可能需要在CPU和GPU之间共享。在一些当前的编程环境中这样的执行模型可能是行不通的,因为场景图片需要被来来回回地串行化(或格式编组)。然而在共享存储器模型的诸实施例中,场景图片可简单地位于共享存储器中,并可被CPU和GPU共同访问。

在一个实施例中,实现了包括语言和运行时支持的完全编程环境。多个高度并行的非图形负载可经由端口与该环境对接。该实现可工作在多样性的操作系统上,即,在CPU和GPU上运行不同操作系统。此外,可在CPU和GPU之间允许用户级通信。这可使得应用堆栈更为高效,因为可以消除CPU-GPU通信中的OS驱动器堆栈的开销。该编程环境可经由端口与两个不同的多样性CPU-GPU平台模拟器对接——一个模拟作为分离设备附加到CPU的GPU,另一个模拟集成CPU-GPU平台。

总之,CPU-GPU平台的编程模型的诸实施例可以:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200980154460.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top