OpenACC应用编程接口10中文版.PDFVIP

  1. 1、本文档共36页,可阅读全部内容。
  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文档。上传文档
查看更多
OpenACC应用编程接口10中文版

OpenACC 应用编程接口 版本 1.0 ,2011 年 11 月发布 小小河 译 法律条款 1. 对本文档的任何使用都被视为完全理解并接受本文档所列举的所有法律条款。 2. 本文档的所有权利归作者所有,作者保留所有权利。 3. 未经作者书面同意,禁止任何形式的商业使用。商业使用形式包括但不限于出版、复制、 传播、展示、引用、编辑。 4. 本文档允许以学术研究、技术交流为目的使用。复制、传播过程中不得对本文档作任何 增减编辑,引用时需注明出处。 5. 实施任何侵权形为的法人或自然人都必须向作者支付赔偿金,赔偿金计算方法为: 赔偿金 = 涉案人次×涉案时长(天)×涉案文档份数×受众人次×100 元人民币, 涉案人次、涉案时长、涉案文档份数、受众人次小于 1 时,按 1 计算。 6. 举报侵权行为、提供有价值证据的自然人或法人均有权向作者索取案件实际赔偿金的 50%。 7. 涉及本文档的法律纠纷由作者所在地法院裁决。 8. 本文档所列举法律条款的最终解释权归作者所有。 2 译者序4 第 1 章 引言4 1.1 范围 5 1.2 执行模型 5 1.3 存储模型 6 1.4 本文档组织结构 6 1.5 参考文献 6 第 2 章 导语8 2.1 导语格式 8 2.2 条件编译 9 2.3 内部控制变量 9 2.4 加速器计算构件 9 2.5 data 构件 14 2.6 host_data 构件 15 2.7 数据子语 15 2.8 loop 构件 18 2.9 Cache 导语21 2.10 组合导语 21 2.11 declare 导语22 2.12 可执行导语 23 第 3 章 运行时库例程26 3.1 运行时库的定义26 3.2 运行时库例程27 第 4 章 环境变量34 4.1 ACC_DEVICE_TYPE 34 4.2 ACC_DEVICE_NUM 34 第 5 章 词汇表35 3 译者序 2007 年以来,以 nVidia GPU 为代表的加速器并行计算风起云涌,带有加速器的超级计 算机在 TOP500 中的份额逐年增加,支持加速器的主流应用软件也呈爆炸式增长,研究加速 器计算的技术人员数以百万计,世界范围内的大学、研究机构竞相开设相关课程。 目前有三家厂商提供加速器产品:nVidia GPU、AMD GPU、Intel 至强 Phi 协处理器。 三种加速器使用的编程语言分别为 CUDA C/CUDA Fortran、OpenCL 和 MIC 导语。加速器 计算有四个技术困难:一是 CUDA/OpenCL 等低级语言编程难度大,且需要深入了解加速器 的硬件结构。而大部分的用户不是专业编程人员,学习一门新的编程技术将耗费大量时间、 人力、财力。二是加速器的计算模型与 CPU 差别很大,移植旧程序需要几乎完全重写。大 量的旧程序在性能优化上已经千锤百炼,稳定性上也久经考验,完全重写是不可完成的任务。 三是低级编程语言开发的程序与硬件结构密切相关,硬件升级时必须升级软件,否则将损失 性能。而硬件每隔两三年就升级一次,频繁的软件升级将给用户带来巨大负担。四是投资方 向难以选择。三种加速器均有自己独特的编程语言,且互不兼容。用户在投资建设硬件平台、 选择软件开发语言时就会陷入困境,不知三种设备中哪个会在将来胜出。如果所选加速器将 来落败,将会带来巨大损失;而犹豫不决又将错过技术变革的历史机遇。 OpenACC 可以克服这四个困难。OpenACC 应用编程接口的机制是,编译器根据作者的 意图自动产生低级语言代码。程序员只需要在原程序中添加少量导语,无须学习新的编程语 言和加速器硬件知识,可以迅速掌握。只在原始程序上添加少量导语,不破坏原代码,开发 速度快,既可并行执行又可恢复串行执行。在硬件更新时,重新编译一次代码即可,不必手 工修改代码。OpenACC 标准制定时就考虑了目前及将来的多种加速器产品,同一份代码可 以在多种加速器设备上编

文档评论(0)

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

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

1亿VIP精品文档

相关文档