|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
如今,GPU高性能计算和CUDA的应用在国内外正如火如荼的发展着。我们曾经在“Tesla个人超级计算工作站解决方案”一文中详细介绍了CPU+GPU异构计算系统的组成和部分应用领域,而后又在“Tesla-CUDA高性能计算行业应用案例”和“Tesla高性能计算应用案例-MATLAB、生命科学和医疗成像”两篇文章中列举了Tesla高性能计算处理器在各个行业中带来的效率提升水平和相关资料。
然而我们也发现,GPU高性能计算和CUDA技术在推广中遇到如下问题:
1.GPU只适合并行代码和数据交互性不强的计算,对串行指令较多或者需要在CPU-GPU之间频繁交换数据的应用效果不理想。
2.使用CUDA技术的GPU计算应用大多需要重新开发,将原有用于CPU执行的程序移植到GPU平台需要很大的工作量。
3.目前能够直接或者通过插件支持GPU计算的商业软件还很少,比如有限元分析领域使用比较多的ANSYS、ADINA,以及著名的流体动力学软件Fluent等都没有提供对CUDA的支持。
对于以上第1条,这是GPU的先天特点决定的,不过它还是能够适用于高性能计算领域中相当多的应用。至于第2条,所指的应用包括用户自己开发、基于开源代码二次开发的程序,重新编译和优化的工作是不可避免的,例如中科院过程工程研究所的“复杂多相流动分子动力学模拟在GPU上的实现”。而第3条最为关键,造成这种原因是GPU通用计算还不完全成熟,NVIDIA的CUDA技术只能支持自家的硬件(不支持AMD/ATI的GPU);而行业内的通用标准OpenCL发展缓慢,到现在好像连一个可用的编译器都还没有发布出来。这就导致了各大商业软件厂商的等待和观望。
而我们不能否认,NVIDIA对CUDA的推广力度很大,在这方面的发展明显领先于竞争对手。高性能计算领域中的商业软件有的已经能够支持GPU加速,并成功的应用于一些行业,这就是本文的主角——功能强大的MATLAB GPU插件Jacket Engine。
MATLAB简介
MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。
MATLAB 产品族可以用来进行以下各种工作:
● 数值分析
● 数值和符号计算
● 工程与科学绘图
● 控制系统的设计与仿真
● 数字图像处理
● 数字信号处理
● 通讯系统设计与仿真
● 财务与金融工程
MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。
传统的Matlab应用都是基于CPU为核心,将密集数值计算和复杂图形图像处理交给超级计算机甚至大型并行计算集群系统完成,今天我们推荐的个人高性能计算图形工作站,借助GPU超强的浮点运算能力,大幅提升并行计算和实时仿真系统的处理速度,它的成本最低仅仅不到5万元人民币,但已经超过传统的价值30万元服务器集群的性能。
MATLAB个人高性能计算图形工作站组成
使用流行的惠普HP xw4600/8600/Z800工作站,安装上Tesla C1060高性能计算处理器和Jacket Engine引擎就成为一台Matlab个人超级图形计算机了。
一、NVIDIA Tesla C1060高性能计算处理器
二、Jacket Engine for Matlab——把并行计算和可视化转移到GPU平台
1.Jacket Engine介绍
Jacket Engine 是专门针对MATLAB基于GPU的计算引擎,由AccelerEyes公司开发,其1.0版本已经发布。AccelerEyes成立于2007年,致力于将GPU科技引入高性能计算(HPC)当中,需要一个强劲的工具连接软件开发人员和GPU硬件之间。当硬件开发者致力于底层的软件工具(如CUDA),以支持他们的设备时,AccelerEyes 开发了高层的接口,完全屏蔽了底层硬件的复杂性。
AccelerEyes的第一个产品——Jacket,适用于很多行业的HPC应用,如:汽车制造、金融、医疗以及地质等行业。此外,Jacket的图形工具包能做到真正的视觉计算,能准确的将计算机的CUDA与OpenGL可视化进行融合......
点击查看全文 http://www.quadro.net.cn/Pro_DocumentReading.aspx?id=1483
|
|