[全角度解析OpenCL通用计算标准.docVIP

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[全角度解析OpenCL通用计算标准

全角度解析OpenCL通用计算标准 没有人否认现在是信息爆炸的时代,每天这个世界上都会新增数以TB计的新数据。 我们日常生活中需要处理的数据也日益增长,从以前640MB的CD/VCD,到4.7GB的DVD影碟,再到现在高达50GB的蓝光高清电影,你是否感觉到数据处理时的压力了呢? 没错,海量的数据带来了各式各样数据处理的需求,网络浏览、平面或者3D图形加速、数据服务器、分布式云计算等等,而现在各计算平台之间的兼容性却不容乐观,举几个最明显的例子: 我们使用双核处理器的计算机已经快有5个年头了,但为数众多的应用软件到目前为止仍不能支持双核CPU,就算能够支持双核,在未来面对四核、八核或更多核心的处理器时又要重新开发; 运算能力已经超过1 TFlops的高端3D图形处理器只能用来对付3D游戏,其它时候它的作用更像是一块“电热片”; 游戏软件开发商在发布一款新游戏的时候,往往会推出PC、PS3、XBox360、Wii、PSP、NDSL等多个平台的版本,其中的翻译和移植工作就占去了开发组大部分时间…… 所有的一切都是因为平台的差异造成的,也正因为这种差异的存在,严重降低了软件在各个平台之间移植和运行的效率,那有没有一种办法可以让大家心平气和地坐在一起,“求同存异”,一起来协商解决这个问题呢?这就是我们今天要给大家介绍的OpenCL,开放式通用计算标准。 其实业界在几年前就已经开始关注这个领域,不过那时的解决方案都是“各扫自家门前雪”,并没有达成一个共识。早先斯坦福大学牵头,推出了利用GPU以及PS3进行的Folding@HOME蛋白质计算项目;此后Adobe公司推出了新版本的Acrobat,可以利用GPU达到加速PDF文档载入和处理的效果;近期,AMD与NVIDIA公司也纷纷拿出自己的视频编码程序Avivo Video Converter与Badaboom,利用GPU的加速能力来进行视频编码运算。 用GPU为蛋白质分子计算加速 就连大名鼎鼎的NVIDIA CUDA,虽然在业界广受好评,但是也只能用在NVIDIA自家的GPU上面。为了避免未来的通用计算领域发展成各自为政、诸侯割据的混乱局面,现在必须要建立一个立足于通用计算的行业标准,在这个大背景下,OpenCL诞生了。 OpenCL——IT贵族们的孩子 OpenCL是Open Computing Language,即开放计算语言的缩写。设立OpenCL的目的就是为日益庞大的并行计算市场提供一个开放的、免费的工业标准。在关于OpenCL的标准说明中,组委会特别提到了一个单词——“heterogeneous”,这个单词本身就有“不同种类的、异类的”的含义,这也暗示了OpenCL将建立在不同的处理器架构上,比方说x86 CPU、GPU、Cell处理器乃至于ARM构架的DSP处理芯片等等。OpenCL涵盖的范围非常广,如3D、图形图像处理、数据压缩/解压缩、数据库处理等完全不同种类的应用。 OpenCL想成为各种处理器应用的一个交集 难以想象的是,提出OpenCL倡议的竟然是大名鼎鼎且以封闭著称的Apple公司。2008年初,拥用强大软件研发能力的Apple公司私下向另外几位CPU、GPU的大佬们介绍了OpenCL的概念,并获得了广泛支持,初步组建了Op e nCL的圆桌会议。此后,在2008年6月,Ap ple公司将OpenCL草案移交给Khronos标准化组织,并且宣布Apple将在2009年发布的Snow Leopard新一代操作系统中加入OpenCL的支持。 已经宣布支持OpenCL的IT公司 正因为Apple等诸多大公司的支持,OpenCL从项目立项到去年12月份发布1.0标准,之间仅用了6个月的时间,真是兵贵神速;而且目前宣称支持OpenCL,并参与其中的成员几乎涵盖了全球主要的处理器、计算芯片供应商,声势非常浩大!不过现在摆在大家面前的难题是,不光计算机中各个部件的用途广泛,设计各异,连手机DSP处理器都要被涵盖在内,大家如何做到真正意义上的通用计算呢? OpenCL:开放的高度通用的设计原则 为了保证通用计算,OpenCL从五个方面进行了规定,这其中既有硬件平台,也同样包含有软件平台。 1.系统调用全部的硬件资源 首先,OpenCL能够调用系统内全部计算资源,也就是说无论是CPU、GPU,还是今后额外加入的协处理器,全部都能够在公共计算平台上得到调用。今后用户在使用基于OpenCL标准编写的程序时,再也不会出现CPU占用率100%,而GPU占用率仅有1%这样的不平衡现象了。 在此基础上,OpenCL还要加快运算速度并提高运算效率,这个特点有点类似与现在的分布式计算(也称为“云计算”) ——不同的地方在于,云计算将庞大的运算任务分拆为很多小份,然后分配给互联网上的各台

文档评论(0)

yingxiaorong28 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档