配色: 字号:
GPU简介
2012-08-08 | 阅:  转:  |  分享 
  
一、GPGPU的定义与原理

GPU英文全称GraphicProcessingUnit,中文翻译为“图形处理器”。GPU计算或GPGPU就是利用图形处理器(GPU)来进行通用科学与工程计算。GPU专用于解决可表示为数据并行计算的问题——在许多数据元素上并行执行的程序,具有极高的计算密度(数学运算与存储器运算的比率GPU计算的模式是,在异构协同处理计算模型中将CPU与GPU结合起来加以利用。应用程序的串行部分在CPU上运行,而计算任务繁重的部分则由GPU来加速。从用户的角度来看,应用程序只是运行得更快了。因为应用程序利用了GPU的高性能来提升性能。在过去几年里,GPU的浮点性能已经上升到Teraflop级的水平。GPGPU的成功使CUDA并行编程模型相关的编程工作变得十分轻松。在这种编程模型中,应用程序开发者可修改他们的应用程序以找出计算量繁重的程序内核,将其映射到GPU上,让GPU来处理它们。应用程序的剩余部分仍然交由CPU处理。想要将某些功能映射到GPU上,需要开发者重新编写该功能,在编程中采用并行机制,加入“C”语言关键字以便与GPU之间交换数据。开发者的任务是同时启动数以万计的线程。GPU硬件可以管理线程和进行线程调度。英伟达?Tesla(NVIDIA?Tesla)20系列GPU基于“Fermi”架构,这是最新的英伟达?CUDA(NVIDIA?CUDA)架构。Fermi专为科学应用程序而进行了优化、具备诸多重要特性,其中包括:支持500gigaflop以上的IEEE标准双精度浮点硬件、一级和二级高速缓存、ECC存储器错误保护、本地用户管理的数据高速缓存(其形式为分布于整个GPU中的共享存储器)以及合并存储器访问等等。"GPU(图形处理器)已经发展到了颇为成熟的阶段,可轻松执行实际应用程序并且其运行速度已远远超过了使用多核系统时的速度。未来计算架构将是并行核心GPU与多核CPU串联运行的混合型系统。"

1、粒子碰撞模拟——中科院过程所?基于分子动力学的粒子运动模拟软件??GPGPU——ATIHD4870x2?加速比:~17x



蛋白质分析(MS-Alignment)——中科院网络中心?62346条质谱数据/107962条蛋白质数据??GPGPU——NvidiaTeslaC2050

?加速比:~100x生物电镜——生物物理所?移植EMANCPU程序??GPGPU——NvidiaTeslaC2050

?加速比:~5x?

基于合成波地震成像中波场延拓——BGP??通过对计算任务进行分割,动态负载均衡??GPGPU——NvidiaTeslaC2050

?性能提升30%~50%基于时域有限差分方法(FDTD)的电磁辐射数值模拟?通过MPI/OpenMP/CUDA实现多GPU并行??GPGPU——NvidiaTeslaC2050

?加速比:小算例~25x/大算例~50x实时业务处理系统——电科院?实现GPU平台FFT??GPGPU——NvidiaTeslaC2050

?加速比:~10x?



稠密矩阵求解(DGEMM)??GPGPU——C2050

?加速比:~8x?应用领域?????流体力学?????结构力学

7、稀疏矩阵与矢量的乘积运算(SpMV)??1MB矩阵规模??GPGPU——C2050?

?加速比:~10x??应用领域?????数值天气预报?????生物分子建模?



目前正在进行的针对纳维—斯托克斯(Navier-Stokes)模型以及LatticeBoltzman方法的几个项目已经表明,利用支持CUDA的GPU能够实现大幅的速度提升。这一工作在下面内容中进行了说明,开始部分为图表,接下来是技术报告的链接。利用GPU进行的天气建模以及海洋建模工作也在进行之中。 不可压缩的Navier-StokesThibault以及Senocak LatticeBoltzmanMethodsTolke以及Krafczyk 采用英伟达?CUDA(NVIDIA?CUDA)技术的CFD独立软件供应商以及应用程序

独立软件供应商(ISV) 描述 GPU优势 ACUSIM 通用CFD流量解算器 2倍速度提升:更快得出更精确的结果以便进行工程分析 AutodeskMoldflow 优化塑料零件与注塑模具的设计 2倍速度提升:在更短时间内即可得出更多的设计可能,以便改善最终产品 PrometechSoftwareParticleworks 对海啸或泥流等自由表面流的流体模拟 可将模拟时间从一周缩短至一天 MetacompCFD++ 包含各种CFD方法,例如统一网格、物理效果以及计算方法 FluiDynaLBultra 计算固体内或固体周围的物理流动效果 OpenFOAM(多家开发商) 免费、开源的CFD软件,具有各种特性

CUDAGPU可用的计算流体动力学(CFD)软件

OpenCurrent:由CUDA加速的基于规则网格区域的PDE(偏微分方程)解决方案开源数据库

Sailfish:基于LatticeBoltzman方法的CFDSolver

ANDSolver:处理多面体非结构化网络(UnstrcutredMesh)中的欧拉方程(EulerEquation)

与OpenFOAM关联的PCG和BIGSTABLinearIterativeSolver数据库

ElegantMathematics:BoltzmannSolver,ConjugateGradient,GMRES

从VSGMeshVizXLM以及AvizoWind非结构化的模拟数据中进行字段与特性抽取(PDF)



以教研室的单节点为例,估算其峰值计算速度为约(4cpu单cpu峰值计算速度):

430Gflop=120Gflop(1e12次/秒)

与GTS450的峰值速度相当,考虑到GTS450的价格与服务器的价格,可较其优劣。而一块专门用于GPGPU计算的显卡(NvidiaTeslaC2050)其单精度计算峰值速度可以达到1.0Tflops,其价格月为1.3万元。因此个人认为在5年内基于GPU的工作站将成为主流。



可参考网站:

http://www.sugon.com/docpage/c54/201108/cuxiao/index.html

http://www.nvidia.cn/object/tesla_computing_solutions_cn.html

献花(0)
+1
(本文系yangshiquan...首藏)