410 likes | 624 Views
高性能并行计算平台及并行计算环境概述. 中国水利水电科学研究院 信息网络中心 2005 年 8 月 11 日. 内 容 提 要. 1 、前言 2 、高性能并行计算平台建设 3 、水利水电高性能计算实践 4 、结语. 1 、前言. 什么是高性能并行计算?. 科学家和工程师可以用它来解决一些程序规模庞大、运算时间长以及数据量大的科研课题。 并行计算是提高服务器计算速度和处理能力的一种有效手段。 计算机按照编好的程序对计算问题进行分解,并把分解的任务块通过一定的方式交给不同的处理器去求解。. 国际发展动态.
E N D
高性能并行计算平台及并行计算环境概述 中国水利水电科学研究院 信息网络中心 2005年8月11日
内 容 提 要 1、前言 2、高性能并行计算平台建设 3、水利水电高性能计算实践 4、结语
什么是高性能并行计算? • 科学家和工程师可以用它来解决一些程序规模庞大、运算时间长以及数据量大的科研课题。 • 并行计算是提高服务器计算速度和处理能力的一种有效手段。 • 计算机按照编好的程序对计算问题进行分解,并把分解的任务块通过一定的方式交给不同的处理器去求解。
国际发展动态 • 2005年6月22日公布的全球高性能计算机top500,第一名是IBM的Blue Gene/L,Linpack测试值为每秒136.8万亿次,第二名是IBM的Blue Gene/W,Linpack测试值为每秒91万亿次。 • 日本第一的高性能计算机,Earth Simulator(地球模拟器),Linpack测试值为35.6万亿次。
国内发展动态 • 中国的第一名,中国气象局的高性能计算机,Linpack值为每秒10.3万亿次。 • 曙光系列、神威系列、银河系列、深腾系列 • 中科院计算所、曙光公司和上海超级计算中心三方共同研制的曙光4000A,Linpack测试值为每秒8.061万亿次。 • 联想公司为中科院网络信息中心生产的深腾6800,共有1060颗1.3Ghz的安腾2处理器,Linpack测试值为每秒4.183万亿次。
院内需求分析 随着工程规模的逐渐扩大、复杂问题求解分析的日益深入,其科学计算的“瓶颈”日趋严重,即使对模型和算法进行简化,一次计算仍需要几个小时、几天甚至数十天的时间,这一现状严重制约了我院水利水电学科的发展,许多工程师、教授提出的理论和设想都因为计算能力受到限制而无法实施。
课题1:小湾坝踵应力诱导缝研究 • 小湾拱坝坝底缝计算采用网格有20万个单元,总共24万多个节点。 • 单机上运行模拟计算程序时,一个计算步需要将近4~5个小时,一个工况一般有30~40个计算步,总共有几十种工况。
课题2:混凝土三维细观力学模型的研究 • 模型1:湿筛试件静动态弯拉强度细观力学分析 • 研究中对试件进行划分,用4面体单元将细网格6面体单元过渡到两边粗网格6面体单元,共有24257节点,29952个单元,其中骨料2160个单元,固化水泥砂浆体3805单元,粘结界面14515单元以及宏观均匀混凝土9472个单元。 • 以上三维计算是在内存1G,CPU为2.8G的PC机上进行的。静力计算耗时163小时39分,约7天时间;动力计算耗时196小时25分钟,约8天时间。
模型2:全级配试件静动态弯拉强度三维细观力学分析模型2:全级配试件静动态弯拉强度三维细观力学分析 • 剖分后的单元有骨料单元、融入小骨料后的固化水泥砂浆单元和两者之间的界面单元,共有24257个节点,113920个单元。 • 计算时间:在以上配置相同的PC机上,三维静力计算耗时209小时50分钟,约9天时间;动力计算耗时291小时57分钟,约12天时间。
问 题 • 要实现三维细观力学数值计算,计算速度这一难题必须克服,通常,针对一个模型研究人员需要反复调整参数进行数值计算,一个算例耗时数天甚至数周简直无法忍受。
上述种种计算和数据的处理对计算环境提出了新的要求,如果以传统的个人PC机作为计算平台,计算的时间和效率远远满足不了科研的需求,甚至会由于内存、CPU等硬件的限制而无法进行计算。因此我院急需建设一个高性能并行计算平台,更好的为科研项目服务。上述种种计算和数据的处理对计算环境提出了新的要求,如果以传统的个人PC机作为计算平台,计算的时间和效率远远满足不了科研的需求,甚至会由于内存、CPU等硬件的限制而无法进行计算。因此我院急需建设一个高性能并行计算平台,更好的为科研项目服务。
硬件平台建设 • 初步构想 • 采用Sun公司提供的Sun Fire Supercluster解决方案。 • 2~4台高性能的Sun Fire 6800服务器作为集群节点。 • 每台服务器达到满配置,即24个1.2Ghz UltraSPARCIII CPU,192GB内存。 • 节点之间采用Sun Fire Link Interconnect 技术通过光纤互联。
Sun Fire 6800 技术指标 • 硬件完全冗余,可以从任何硬件故障中恢复。 • 最多24个CPU,最大192GB内存,32PCI或者16cPCI插槽。 • 每台Sun Fire 6800机器最多分为4个域,每个域相当于一台独立的服务器。 • 具有很好的线性扩充能力,24个CPU运行时的Linpack值是1个CPU运行时的23.3倍。
Sun Fire Link Interconnect • SunFire Link为一套高带宽、低延迟的互联系统,可以扩展Sun Fire6800 系统的可用性。 • 一个Sun Fire Link系统最多可以由8个Sun Fire 6800服务器节点组成,每个节点由Sun Fire Link光纤网络连接在一起, • 一整套软件支持。Sun Management Center可以为Sun Fire Link网络资源的配置、监视与管理提供最佳可用性。
我院Sun Fire 6800现有配置 • CPU 数量 • 4 * 1200Mhz • 内存容量 • 8 GB (16 X 512MB DIMMs) • I/O板 • 4个,PCI扩展槽共32个 • Sun Storage 3510 SCSI 磁盘阵列 • 可提供539GB 的存储空间
现 状 目前,本院的高性能并行计算平台建设处于初步试验阶段,待并行计算技术在我院应用成熟以后,可以很方便的对该平台进行硬件升级,以获得更高的性能和计算能力。
软件平台建设 • 操作系统 • 开发环境 • 编译器 • 数学函数库 • 高性能并行计算软件 • 作业管理接口 • 并行程序运行环境 • 并行数学函数库 • 并行程序调试分析工具 • 资源管理系统
操作系统:Solaris 9 • 64位的Unix操作系统 • 具有杰出的稳定性和可维护性 • 单一服务器上最多可支持106个CPU • 支持多线程,最多100万个进程。 • 支持多种应用软件,如 Sun Cluster软件、Sun 管理中心软件、Sun Studio 编译环境Sun Grid Engine等等。
开发环境:Sun Studio 9 • 主要组件包含如下: • C Compiler • C++ Compiler • Fortran Compiler • Sun Performance Library • Distributed make utility, dmake • dbx Command-Line Debugger • Performance Analysis Tools • Integrated Development Environment (IDE)
编译器 对于科研课题的计算程序而言,编译器的优劣对生成的程序的执行效率有着非常明显的影响,现在在Unix下的免费编译器软件主要是GNU计划提供的GCC,该编译器可以编译C、C++、F77 等语言编写的程序。Sun Fire 6800 服务器配套的编译器是Sun 公司开发的商业编译软件-Sun Studio 9,该编译器在Solaris上编译运行的效率比GNU的免费软件要高30%~40%。
数学函数库:Sun Performance Library • 它是Sun公司基于以下标准的线性代数库而生成的,具有相同的函数名和接口,但是在Sun的服务器上运行得更快更精确。 • LAPACK :用来解决线性代数问题 • BLAS1:用来解决向量-向量运算问题 • BLAS2:用来解决矩阵-向量运算问题 • BLAS3:用来解决矩阵-矩阵运算问题 • FFTPACK和VFFTPACK:快速傅立叶转换
高性能并行计算软件Sun HPC ClusterTools 5.0 • 作业管理接口 • Sun ClusterTools Runtime Environment(CRE) • 并行计算运行环境 • Sun MPI and MPI I/O • 并行数学函数库 • Sun S3L( Scalable Scientific Subroutine Library) • 并行程序调试分析工具 • Sun Prism • Sun MPProf
作业管理接口:Sun CRE • 执行程序(mprun) • 杀死程序(mpkill) • 显示作业信息 • 显示节点信息
并行计算运行环境Sun MPI and MPI I/O • Sun MPI 是一个高度优化的MPI版本。它支持MPI1.2 标准和 MPI2.0 标准。 • 支持多线程编程。 • 与Sun CRE 集成。 • 完全支持Fortran77、C和C++ ,支持一些基本的Fortran90 语法。 • 通过共享内存通信会获得更好的性能。
并行数学函数库:Sun S3L • 它是建立在Sun MPI之上的,给用户提供了一系列广泛应用的并行函数库。如LU分解、最小二乘法运算、矩阵转置等等。 • 支持Fortran77、Fortran90、C和C++ • Sun S3L 子程序调用Sun Performance Library 来在节点上进行运算。
并行程序调试分析工具Prism和MPProf • Prism是一个图形编程环境,使用户能够对并行程序进行调试和性能监控。 • MPProf是一个用来查看Sun MPI程序的分析工具。运行它可以获得程序的一些时间信息: • 在所有进程里MPI函数库调用所花费的时间占程序运行时间的百分比; • 每个进程在MPI函数库调用上花费的时间百分比; • MPI 函数库调用的次数、程序花费的时间;
资源管理系统(Resource Management) • Sun HPC ClusterTools 5 software可以和下面三种分布式资源管理系统集成,用来管理资源的分配、并行作业的控制和监视,以及作业信息的统计。 • Sun Grid Engine:Codine 5.2 • Load Sharing Facility: LSF 4.x • Portable Batch System: PBS 2.3.15 and PBS Pro 5.0
课题一 • 在结构材料所使用服务器计算的工程项目“小湾坝踵应力诱导峰分析”中,服务器发挥了内存、硬盘空间大,计算稳定的特点,为该工程项目的计算提供了有力的支持。
课题二 • 在抗震中心的有关“混凝土三维细观力学模型的研究”中,信息网络中心联系太极公司、国防科大等单位对原有串行程序进行并行化改造,在我院高性能服务器上试运行后,效果比较明显。经介绍,原来的串行程序运行需要7、8天左右时间经改造后只需3~4个小时。
我院高性能并行技术的应用处于初步探索阶段,经过这半年多来的努力,现在已经取得了一定的成果。希望能够继续和院内各研究所合作,共同努力,把我院高性能计算这一块迅速发展起来,为我院的知识创新搭建一个高起点的平台,更好的为院内以及整个水利水电行业的科研项目服务。我院高性能并行技术的应用处于初步探索阶段,经过这半年多来的努力,现在已经取得了一定的成果。希望能够继续和院内各研究所合作,共同努力,把我院高性能计算这一块迅速发展起来,为我院的知识创新搭建一个高起点的平台,更好的为院内以及整个水利水电行业的科研项目服务。
敬请专家领导指正! 谢谢!