Tesla™ GPU高性能计算应用案例

英伟达™( NVIDIA®) Tesla™ GPU(图形处理器)在医学上的应用

  Techniscan是一家开发自动化超声波成像系统的公司,该公司已经将其专利技术算法从基于传统CPU系统移植到了CUDA™以及英伟达™(NVIDIA®) Tesla™ GPU(图形处理器)上。基于CUDA™的系统在不到20分钟内即可完成Techniscan算法的处理,而从前的系统则需要花费长达3倍的时间。在短时间内快速生成高度精细图像的能力在乳腺癌扫描领域中尤为重要。一旦这种检验设备通过了美国食品及药物管理局(FDA)的许可,患者将能够在一次就诊期间内拿到检验结果。如需了解更多信息,敬请访问www.techniscan.com。

  英伟达™(NVIDIA®) Tesla™ GPU(图形处理器)在金融上的应用

  Hanweck Associates是一家专门从事投资与风险管理的金融服务公司,该公司需要向其客户提供一种能够实时重新计算期权的方法。 Hanweck通过其Volera系列高性能期权分析产品来解决这一难题。 Volera仅使用了12个支持CUDA™的GPU(图形处理器)即可实时分析全美的股票期权市场。这项工作此前一度需要60多台常规服务器才能完成。 凭借CUDA™,Hanweck的客户能够更快地将当今瞬息万变的市场看得更加透彻,同时能够在功耗、硬件成本以及数据中心地产等方面节省巨额成本。如需了解更多信息,敬请访问: www.hanweckassoc.com。

  英伟达™(NVIDIA®) Tesla™ GPU(图形处理器)在能源上的应用

  近年来,随着油气勘探变得越来越复杂、成本越来越高,为了更准确地评估地表下岩层的状况,并确定地层地质结构,地震成像公司开始探索全新的相关技术。叠前时间偏移(PSTM)就是此类新型地震成像技术之一,但是这种技术需要大规模的计算量,从前,这种大规模计算意味着购置与运营成本非常高昂。吉星吉达科技有限公司(GeoStar)是专门致力于这一领域的一家领先的中国地球物理服务供应商,该公司正在寻求既能运行复杂地震算法又能降低成本与功耗的方法。

  为解决这一难题,吉星吉达与英伟达™(NVIDIA®)共同推出了一款基于英伟达™(NVIDIA®) Tesla GPU(图形处理器)的全新硬件与软件解决方案。近几个月以来,中国科学院(CAS)地质与地球物理研究所一直在测试搭配了吉星吉达解决方案的英伟达™(NVIDIA®) Tesla GPU(图形处理器)。在计算方圆740平方公里的叠前时间偏移数据时,与传统的66颗CPU(核心时钟频率3.4GHz)群集相比,24颗Tesla GPU(图形处理器)的处理速度提升了600倍以上。中科院研究人员认为通过进一步调整,还可以达到更快的速度。这意味着用户不仅可以实现性能的大幅提升,而且还能够在系统运行与散热的耗电成本上节省大笔开支。

  与传统CPU群集相比,英伟达™(NVIDIA®)与吉星吉达能够以更低的成本在PSTM运算上实现100400倍速度提升,同时将功耗降低95%。

  吉星吉达科技有限公司总经理刘钦表示:“对油气勘探行业来说,这是一款革命性的解决方案。基于CUDA™架构的英伟达™(NVIDIA®) Tesla™高性能计算解决方案彻底颠覆了油气勘探地震数据处理的固有方式,可以节省大量成本。”

  目前,由英伟达™(NVIDIA®)与GeoStar公司共同开发的解决方案得到中国国内石油天然气行业企业的广泛认可,并已开始用于大庆、胜利、吐哈等油田的勘探项目。

  英伟达™(NVIDIA®) Tesla™ GPU(图形处理器)在三维图像重构上的应用

  过程工业是以物质和能量的转化为核心的基础产业门类,包括了化工、冶金、钢铁、能源和环保等影响国计民生的重要行业,目前占中国GDP的近1/6。但这些产业也面临着能耗和资源消耗量大、污染严重等严峻的挑战。探索和引领优化工艺流程的新技术,提升生产效率和产品附加值,正日益成为这些行业竞争的焦点之一。计算机模拟技术在此大有用武之地,而模拟对象的复杂性决定了它对超级计算的迫切需求。而基于CPU的传统超级计算设备购置成本高,实验周期长,使企业既有成本压力带来的顾虑,又难以适应快速变幻的市场节奏,极大地限制了模拟技术在过程工程中的应用。宝钢、中石化、中石油等中国过程工业的龙头企业一直致力于探索与应用既能实现工艺流程优化,又能节约成本,提升效率的最新技术。

  为解决这一难题,中科院过程所经过长期探索,逐步认识到多尺度结构和离散化是许多工程问题的共同特征,由此建立了相应的通用算法框架和专门的硬件体系结构,通过模拟对象、软件和硬件的结构一致性实现高效能、低成本的超级计算。而2007年英伟达™(NVIDIA®) CUDA™和Tesla™ GPU的发布为由商用部件搭建此类系统提供了可能。过程所敏锐地抓住了这个机遇,于2009年成功搭建了主要基于英伟达™(NVIDIA®) Tesla™GPU的多尺度离散模拟并行计算系统,单精度峰值超过每秒1000万亿次浮点运算。为过程模拟提供了强大而实用的工具从而服务于节能减耗和工艺流程优化。目前过程所正与联想和曙光合作将为国内近十家用户分别建立百万亿次级GPU+CPU异构并行系统,实现其在过程工程、信息技术和基础科学研究等多个领域的应用。

  与以前单纯的CPU平台相比,应用英伟达™(NVIDIA®) Tesla™ GPU(图形处理器)的新平台不仅成本大幅降低,还能极大提高计算机效率,如某大企业冶金过程的离散粒子模拟的速度提升了50倍。

  中国科学院过程工程研究所研究员、超级计算系统项目负责人葛蔚说:“通过GPU对相关软件和硬件能力的提升,不仅能耗大幅降低,还可以使某种化工反应器模拟时间从一天缩短到2分钟。这是一个革命性的进展。”

  利用GPU超级计算系统,过程所已成功开展了多相流动直接数值模拟、材料和纳微系统微观模拟和生物大分子动态行为模拟等应用,证明了多尺度离散化并行计算模式的优势和前景。例如,对过程工业中常用的流态化反应器,通过模拟方法上的改进,该系统已能按接近实时的速度从毫米级的颗粒尺度模拟米级的宏观行为。这种能力在某清洁汽油生产工艺的开发和优化中已经并将进一步发挥重要作用。该系统也正应用于缝洞型油藏的驱采过程模拟。采用该系统的96个GPU,对含有100微米左右缝隙的0.16平方米的岩石样本,直接数值模拟的速度达到了4秒钟计算物理上的1小时,从而能有效替代能费时费力的物理实验。而对于冶金过程,该系统甚至能对数千立方米的高炉中厘米级的矿石物料进行全系统的三维动态模拟。如采用120个GPU,5个小时就能复现一个完整的布料过程。目前该系统已在宝钢新型钢渣处理工艺的开发中得到实际应用。在上述过程中,英伟达™(NVIDIA®) GT200 GPU的实际单精度速度普遍达到了CPU核的三十倍以上,甚至超过百倍,应用效果非常显著。

  英伟达™(NVIDIA®) Tesla™ GPU(图形处理器)在计算流体动力学上的应用

  分子动力学(molecular dynamics,MD)模拟是随着计算机技术的发展而兴起的一种科学计算方法,现已应用到广泛的领域中,如医药、材料、能源、机电等。随着纳米、微机电和微化工等技术的兴起,纳微流动的MD模拟近年来也成为热点。传统连续流体力学难以处理和解释这些尺度上的独特性质与现象,而流动归根结底是流体分子的集体行为,MD模拟能详细跟踪每个分子的运动,并通过分析速度、温度等统计性质阐释理论中的难点、发现新的机理,故日益受到重视。但计算能力一直是制约此研究发展的瓶颈。现在这方面很多成熟算法都基于传统体系结构的中央处理器(CPU),但其发展已显颓势。图形处理器(GPU)的计算能力现已远高于CPU一到两个量级。如何在MD流动模拟中利用GPU的强大能力已成为一个重要的现实课题。

  中国科学院过程工程研究所多相复杂系统国家重点实验室进行了图形处理器(GPU)上的分子动力学(MD)模拟。即利用配备了一片英伟达™(NVIDIA®) Tesla™ C870的服务系统来运行英伟达™(NVIDIA®) CUDA™架构, 通过方腔流及颗粒-气泡接触等实例初步展示了此方式从微观上模拟介观行为的能力。经证实,在英伟达™(NVIDIA®)公司技术助力下,该计算过程速度是以往运用单核CPU计算的20到60倍,最高可达150 Gflops。

  传统GPU对非图形应用支持有限,只能通过图形API编程,内存带宽较低且访问限制多,从而制约了其性能发挥。英伟达™(NVIDIA®) CUDA™的发布打破了传统GPU的性能瓶颈,提供了新的软硬件架构。本次模拟的多相体系中,CUDA™把GPU直接视作数据并行计算设备而不再将计算映射到图形操作上,以扩展性较好的区域分解和常用的消息传递接口(Message Passing Interface, MPI)协议实现各节点间GPU的并行计算,以类C语言的方式给开发者更大自由来实现GPU算法。CUDA™还能结合OpenMP,MPI和PVM等其他并行方式在节点内和节点间继续扩展计算能力,更好的发挥了GPU的强大性能,并将计算中的数据访问效率提高了一个量级以上。Tesla C870的有效计算性能(指计算分子对相互作用时的浮点操作数)是以往所采用的单核CPU的20~30倍。若考察极端情况,即只测试耗时最长的分子间作用力计算,GPU更占优势, 约能发挥150 Gflops,占其可利用计算峰值(346 Gflops)的40%多,而CPU能发挥2.4 Gflops,GPU的计算能力达到CPU的60倍之多!说明GPU很适合像多体问题。

  方腔流是流体动力学的一个经典问题,本次模拟将GPU应用于方腔流的MD模拟,使得模拟体系的规模有较大提高,在一定程度上达到了(亚)微米尺度,沟通了连续的流体力学和离散的分子动力学。而多相纳微流动研究对纳米、材料、生物、微机电与微化工系统等技术领域更有实用性,但也更有挑战性,目前还没有成熟的理论方法,其MD模拟需要更多的计算资源且实现更加复杂,因此GPU的应用显得更有价值。另一方面, 利用CUDA™技术和MPI协议,MD模拟可以实现某些物理实验难以进行的极端情况,这是MD模拟非常值得关注的新方式。总体来说,GPU在MD模拟上的应用还有巨大的潜力。如需进一步了解,请参阅科学出版社于2009年出版的《基于GPU的多尺度离散模拟并行计算》一书。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22785983/viewspace-682491/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/22785983/viewspace-682491/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GPU高性能计算系列丛书的第一本《GPU高性能计算之CUDA》已经出版,由张舒,褚艳利,赵开勇,张钰勃所编写。本书除了详细介绍了CUDA的软硬件架构以及C for CUDA程序开发和优化的策略外,还包含有大量的实例供读者学习参考用。 下表是各个实例的介绍列表。 文件夹 对应书中章节 备注 ACsearch_DPPcompact_with_driver 5.2.2 AC多模式匹配算法 asyncAPI 2.5 异步API调用示例 bandwidthTest 2.3.6 带宽测试 Bitonic 5.1.1 双调排序网络 conjugateGradient 5.2.1 共轭梯度算法,CUBLAS实现 cudaMPI 2.7.3 CUDA+MPI管理GPU集群 cudaOpenMP 2.7.2 CUDA+OpenMP管理多GPU deviceQuery 2.1.4 设备查询 histKernel 2.4.3 亮度直方图统计 matrixAssign 2.1.4 矩阵赋值 matrixMul 4.7.1 矩阵乘法,利用shared memory matrixMul_Berkeley 4.7.1 矩阵乘法,利用register reduction 4.7.2 并行归约(缩减)程序 scan 5.1.2 Scan算法,例如计算前缀和 scanLargeArray 5.1.2 Scan算法,可以处理大数组 simpleCUBLAS 5.1.3 CUBLAS库的简单应用 simpleCUFFT 5.1.4 CUFFT库的简单应用 simpleD3D9 2.6.2 CUDA与Direct3D 9互操作 simpleD3D10 2.6.2 CUDA与Direct3D10互操作 simpleGL 2.6.1 CUDA与OpenGL互操作 simpleMultiGPU 2.7.1 多设备控制 simpleStreams 2.5.2 流的使用演示 simpleTexture 2.3.8 简单的纹理使用 simpleTextureDrv 2.3.8 简单的纹理使用,驱动API 实现 sortingNetworks 5.1.1 双调排序网络,处理大数组 threadMigration 2.7.1 通过上下文管理和设备管理功能实现多设备并行计算 timing 4.2.1 设备端测时 transpose 4.7.3 矩阵转置 transposeDiagonal 4.7.3 矩阵转置,考虑partition conflict VectorAdd 2.2.3/2.3.4 矢量加 VectorAddDrv 2.2.3/2.3.4 矢量加,驱动API实现
GPU高性能计算之CUDA》实例。 GPU高性能计算系列丛书的第一本《GPU高性能计算之CUDA》已经出版,由张舒,褚艳利,赵开勇,张钰勃所编写。本书除了详细介绍了CUDA的软硬件架构以及C for CUDA程序开发和优化的策略外,还包含有大量的实例供读者学习参考用。 下表是各个实例的介绍列表。 文件夹 对应书中章节 备注 ACsearch_DPPcompact_with_driver 5.2.2 AC多模式匹配算法 asyncAPI 2.5 异步API调用示例 bandwidthTest 2.3.6 带宽测试 Bitonic 5.1.1 双调排序网络 conjugateGradient 5.2.1 共轭梯度算法,CUBLAS实现 cudaMPI 2.7.3 CUDA+MPI管理GPU集群 cudaOpenMP 2.7.2 CUDA+OpenMP管理多GPU deviceQuery 2.1.4 设备查询 histKernel 2.4.3 亮度直方图统计 matrixAssign 2.1.4 矩阵赋值 matrixMul 4.7.1 矩阵乘法,利用shared memory matrixMul_Berkeley 4.7.1 矩阵乘法,利用register reduction 4.7.2 并行归约(缩减)程序 scan 5.1.2 Scan算法,例如计算前缀和 scanLargeArray 5.1.2 Scan算法,可以处理大数组 simpleCUBLAS 5.1.3 CUBLAS库的简单应用 simpleCUFFT 5.1.4 CUFFT库的简单应用 simpleD3D9 2.6.2 CUDA与Direct3D 9互操作 simpleD3D10 2.6.2 CUDA与Direct3D10互操作 simpleGL 2.6.1 CUDA与OpenGL互操作 simpleMultiGPU 2.7.1 多设备控制 simpleStreams 2.5.2 流的使用演示 simpleTexture 2.3.8 简单的纹理使用 simpleTextureDrv 2.3.8 简单的纹理使用,驱动API 实现 sortingNetworks 5.1.1 双调排序网络,处理大数组 threadMigration 2.7.1 通过上下文管理和设备管理功能实现多设备并行计算 timing 4.2.1 设备端测时 transpose 4.7.3 矩阵转置 transposeDiagonal 4.7.3 矩阵转置,考虑partition conflict VectorAdd 2.2.3/2.3.4 矢量加 VectorAddDrv 2.2.3/2.3.4 矢量加,驱动API实现 【备注】以上工程,均在Windows XP 64-bit + Tesla C1060 + CUDA 2.3 + VS2005环境下测试通过。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值