网站首页 | 加入收藏 | 联系我们
公司动态
当前位置:网站首页- 公司动态 - GPU在计算领域的应用现状
GPU在计算领域的应用现状
时间:2017-10-8 10:32:16 来源: 字体:[ 超大 中型 标准 ]
 
  今天,GPU已经不再局限于3D图形处理了,GPU通用计算技术发展已经引起业界不少的关注,事实也证明在浮点运算、并行计算等部分计算方
面,
GPU可以提供数十倍乃至于上百倍于CPU的性能,如此强悍的性能已经让CPU厂商老大英特尔为未来而紧张。GPU,是Graphics ProcessingUnit的简写,是现代显卡中非常重要的一个部分,其地位与CPU在主板上的地位一致,主要负责的任务是加速图形处理速度。 
    GPU是显示卡的大脑,它决定了该显卡的档次和大部分性能,同时也是2D显示卡和3D显示卡的区别依据。2D显示芯片在处理3D图像和特效时主要依赖CPU的处理能力,称为软加速3D显示芯片是将三维图像和特效处理功能集中在显示芯片内,也即所谓的硬件加速功能。
    随着CUDA的进一步开发和完善,GPU 的运算能力也将得到进一步的强化。研究人员也已经开始使用 CUDA,利用 GPU数倍于 CPU的浮点运算能力,进行各种各样的科学模拟、运算。 
    GPU专用于解决可表示为数据并行计算的问题——在许多数据元素上并行执行的程序,具有极高的计算密度(数学运算与存储器运算的比率)。 
    GPU计算的模式是,在异构协同处理计算模型中将CPUGPU结合起来加以利用。 应用程序的串行部分在CPU上运行,而计算任务繁重的部分则由GPU来加速。 从用户的角度来看,应用程序只是运行得更快了。因为应用程序利用了GPU的高性能来提升性能。
    在过去几年里,GPU的浮点性能已经上升到Teraflop级的水平。GPGPU的成功使CUDA并行编程模型相关的编程工作变得十分轻松。 在这种编程模型中,应用程序开发者可修改他们的应用程序以找出计算量繁重的程序内核,将其映射到GPU上,让GPU来处理它们。 应用程序的剩余部分仍然交由CPU处理。 想要将某些功能映射到GPU上,需要开发者重新编写该功能,在编程中采用并行机制,加入“C”语言关键字以便与GPU之间交换数据。 开发者的任务是同时启动数以万计的线程。 GPU硬件可以管理线程和进行线程调度。 
    "GPU(图形处理器)已经发展到了颇为成熟的阶段,可轻松执行实际应用程序并且其运行速度已远远超过了使用多核系统时的速度。未来计算架构将是并行核心GPU与多核CPU串联运行的混合型系统。
    中科院基因组研究所将在当今生物信息学领域得到广泛应用的BLAST算法向GPU进行了移植。这是一套针对DNA、蛋白序列数据库的序列查询算法和软件包。尽管BLAST处理少量序列的速度不慢,但随着DNA侧序技术的飞速发展,研究人员可以在短短几天内得到海量序列数据,这样,对这些数据的分析就成了瓶颈。通过从串行到并行的转变,BLAST算法成功在GPU上得以实现,大大提升了效率。根据中科院的实践结果,基于NVIDIA Tesla平台的BLAST软件中的一个关键模块运行速度比单个CPU35倍。 
    基于GPU,中科院过程所建立了一台自己的超级计算系统。与通用系统比较,运营系统成本从约2亿元降到不到2000万元,峰值能耗从约1.5兆瓦降至不到0.3兆瓦,占地面积也明显减少,然而其效率却很高。在对中石化清洁汽油工艺的放大和优化模拟程序中,进行内部结构优化时,单CPU的处理效率为每天计算可以模拟45秒现实时间,而单GPU在一个小时内就可模拟35秒现实时间。 
    国内最快的超级计算机天河一号也采用了GPU处理器,其三分之二的计算能力由GPU处理器提供。

分享到:
相关文章: