众核程序设计环境
突破众核壁垒
© 2011 CAPS entreprise. All rights reserved - All product and company names herein may be trademarks of their registered owners.
如何编写代码,求存于众核变革?
在众核技术创新步伐的推动之下,处理器(包括图形处理单元 GPU)
正加速发展。
由于处理器频率的提高速度遇到瓶颈,预计到 2013 至 2014 年,通
用处理器的并行运算核的数量将与 NVIDIA™ 2007 年推出的 GPU 的
运算核的数量相当。
对基于制导语句(directives)的程序设计模型进行高层次抽象,使得应
用程序与硬件设备保持独立,确保不同代的硬件之间的可移植性,为
未来架构做好准备。
HMPP TM: 基于制导语句的,且支持多语言和多种不同目标加速设备的编译器
基于类似于 OpenMP™的可保留原有代码的制导语句(directives),HMPP™可以充分提高目前绝大部分流处理器带来的计
算性能。它使您的应用程序与硬件设备保持独立,并为未来架构做好准备。(例如:Sandy Bridge, MIC, AMD Fusion, NVIDIA Denver 等)
作为对 OpenMP 和 MPI 的扩充,HMPP 能够逐步开发或移植您现有的应用到众核系统上,而又没有众核系统的相关复杂性。
作为基于制导语句方法(directives)的先锋,CAPS 公司凭借其旗舰产品 HMPP™,提供软件开发工具、解决方案和专业技术,
帮助各类机构适应新的应用开发方法,以便可以从众核架构性能中受益。
HMPP 的优势
仅使用同一版本的源代码,就足以应付多种众核架构 支持 CPU 和 GPU(多 GPU)众核架构进行分布式计算 优化数据管理,为您带来高性能 能够对库进行互操作性 使用开放标准,降低您在软件上的投资风险
From C/C++/FORTRAN,
Using your Compiler
to
BE PART of a Worldwide
Ecosystem
Headquarters - FRANCE Immeuble CAP Nord 4A Allée Marie Berhaut 35000 Rennes France Tel.: +33 (0)2 22 51 16 00 [email protected]
CAPS - USA 4701 Patrick Drive Bldg 12 Santa Clara CA 95054 Tel.: +1 408 550 2887 x70 [email protected]
CAPS - CHINA Suite E2, 30/F JuneYao International Plaza 789, Zhaojiabang Road, Shanghai 200032 Tel.: +86 21 3363 0057 [email protected]
基于 C/C++/FORTRAN 指令的编译模式
HMPP 制导语句是直接加诸于应用程序源码的元信息,并不
改变源代码的语义。通过这些制导语句,可以远程调用和执
行(RPC)GPU 或众核加速器上的函数和指定区域代码,以
及对目标设备存储器上的数据传输。
通过事先声明并对关键运算生成 kernels,再对数据传输过程
进行管理,最后对运算核性能和数据同步进行调整优化,
HMPP 提供了一整套渐增式应用程序移植方案。
使用 CUDA 和 OpenCL 后端的源到源编译器
HMPP 与现存的并行 API(OpenMP 或 MPI)互为补充。
从带有 HMPP 标注的应用程序里,HMPP 分开编译主应用程
序和用于 GPU 加速运算的 codelet 函数并将其作为软件的
插件,所以这意味着编译 CPU 代码不需要改变编译器。
这些 codelet 函数被 HMPP 目标生成器翻译成 NVIDIA CUDA 和 OpenCL 代码之后使用相应专有硬件编译工具进行
编译,并使用现有的 SDK。
HMPP 实际上为用户代码与高度优化的库(如 cuFFT)提供
了互操作性。
对数据和任务分配进行管理的运行时
使用 HMPP 运行时,原生主机上的应用程序既可以 独立执行,也可以加载到 GPU 上,运行目标
codelet 库。
HMPP 运行时同样适用于多 GPU 系统;这部分增 值功能将免费向您提供。
支持的平台和编译器
编译器:
- Intel 11.1+ - GNU gcc 4.1+ - GNU gfortran 4.3+ - Open64 4.2+ - PGI 10.0+ - SUN 12.1+ - Absoft Pro Fortran 11.0+
操作系统:
- Debian 5.0+ - RedHatEntrepriseLinux 5.3+ - OpenSuse 11.x - SLES 11.0 - Ubuntu 9.10 & 10.04
编译器:
- Visual Studio 2008 SP1 IDE - Absoft Pro Fortran 11.1.2+
操作系统:
- Microsoft Windows HPC Server 2008 R2 - Windows 7
With All NVIDIA® Tesla™ and AMD-ATI FireStream™
10 大理由选择
Directives
能够保留源代码
避免编程语言混用
不依赖特定运行时库
无需改变基本编程语言
专注并行表述,而非实现
不受限于特定硬件平台语言
仅需保留维护单一版本源代码
使用开发标准(如 OpenHMPP)
采用渐增式程序设计来降低风险和成本
方便应用算法人员、程序开发员与调优工程师之间的交互