[发明专利]通过利用虚拟OpenCL设备作为与计算云的接口来加速OpenCL应用无效
申请号: | 201010622958.6 | 申请日: | 2010-12-24 |
公开(公告)号: | CN102109997A | 公开(公告)日: | 2011-06-29 |
发明(设计)人: | R·拉特林;H-C·霍普 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/455;H04L29/08 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 姬利永;袁逸 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 通过 利用 虚拟 opencl 设备 作为 计算 接口 加速 应用 | ||
领域
本发明一般涉及计算领域。更具体地,本发明的实施例一般涉及用于通过利用虚拟OpenCL设备作为与计算云的接口来加速OpenCL应用的技术。
背景
OpenCL(开放计算语言)是用于异构系统的通用并行编程的首个开放、免版税标准。OpenCL为软件开发者提供了统一编程环境,以便为使用多核CPU(中央处理单元)、GPU(图形处理单元)、蜂窝类型架构和诸如DSP(数字信号处理器)等其他并行处理器的各种混合的高性能计算服务器、台式计算机系统和手持设备编写高效的便携式代码。该标准是由Khronos集团开发的。
附图简述
参照附图提供详细描述。在附图中,附图标记最左边的数字标识该附图标记首次出现的附图。在不同附图中使用相同附图标记来指示相似或相同的项目。
图1和3-4示出可用来实现本文讨论的一些实施例的计算系统的实施例的框图。
图2示出根据本发明一实施例的流程图。
详细描述
在以下描述中,阐述众多具体细节以提供对各实施例的透彻理解。然而,本发明的各个实施例在没有这些具体细节的情况下也可实践。在其他情形中,众所周知的方法、过程、组件和电路并未进行详细描述以免混淆本发明的特定实施例。此外,本发明实施例的各方面可使用各种手段来执行,诸如集成半导体电路(“硬件”也称为“HW”)、组织成一个或多个程序的计算机可读指令(“软件”也称为“SW”)或硬件与软件的某种组合。出于本公开的目的,对“逻辑”的引述应表示硬件、软件(包括例如控制处理器的操作的微代码)或其某种组合。
说明书中对“一个实施例”或“实施例”的引述意味着结合该实施例描述的具体特征、结构或特性可被包含于至少一种实现中。本说明书中各处出现的短语“在一个实施例中”可以或可以并非全部指代同一实施例。
另外,在本描述和权利要求中,可使用术语“耦合”和“连接”连同其派生词。在本发明的一些实施例中,可使用术语“连接”来指示两个或多个元件彼此直接物理或电气接触。“耦合”可意味着两个或多个元件直接物理或电气接触。然而,“耦合”也可意味着两个或多个元件可能彼此并未直接接触,但是仍然彼此协作或交互。
在OpenCL中,并行计算机内核可从主机(通常是CPU)卸载到同一系统中的加速器设备(例如,GPU、CPU或FPGA(现场可编程门阵列))。此外,OpenCL明确覆盖移动和嵌入式设备以便于开发便携式计算密集应用。然而,在可预见的将来,移动设备的并行计算能力可能相当有限。虽然这对于小的低等待时间图形工作量可能是够用的,但尝试运行计算密集OpenCL应用(比如科学、工程和商业计算中的模拟、复杂数据分析等)将导致令人失望的用户体验。另外,很可能将存在完全不包含有OpenCL能力的设备且具有性能非常有限的CPU的超轻重量或嵌入式平台。复杂OpenCL应用将完全不能在这些系统上运行。
甚至在标准台式机和工作站上,计算密集OpenCL应用可通过将OpenCL工作量卸载到计算云中的服务器场来加速。然而,使得在云中运行工作量的现有接口可能需要对应用本身的显著修改。这些修改有可能限于特定云计算系统,这甚至进一步阻碍了在工业中采用云计算。
为此,本文谈论的一些实施例提供了用于通过利用虚拟OpenCL设备作为与计算云的接口来加速OpenCL应用的技术。在一实施例中,计算密集OpenCL应用通过将应用的一个或多个计算内核卸载到本地网络(诸如因特网或内联网)上的计算云来加速。在一个实施例中,可执行卸载以使得其对于应用是透明的;因此,将无需修改应用代码。这允许OpenCL应用在轻重量系统上运行并接进后端云中的大型服务器的性能潜能。
图1示出了根据一实施例的包括虚拟OpenCL设备的计算系统100。如图所示,一个或多个客户端102可包括OpenCL客户端应用104(其可以是与OpenCL兼容的应用程序)、OpenCL API(应用编程接口)106、OpenCL驱动程序108、虚拟OpenCL设备110和客户端网络服务112。
网络服务112经由(例如,根据SOAP(简单对象访问协议)操作的)链路耦合到网络120。在一个实施例中,网络120可包括允许各代理(诸如计算设备)传达数据的计算机网络(包括例如因特网、内联网或其组合)。在一实施例中,网络120可包括经由串行(例如,点对点)链路来通信的一个或多个互连(或互连网络)和/或共享通信网络。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010622958.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:框架结构
- 下一篇:固定竖杆与叉股的连接装置