制造行业CAE对高性能计算平台的选择
高性能计算(HPC)正逐步进入制造行业,承担诸多关键的计算应用。该领域中用户主要分成两类,一类是实际制造企业,如汽车设计制造厂商、航空工业企业、电力企业及消费产品生产商等。这一类用户通过高性能计算技术来提高产品的性能,减低成本,同时缩短产品的设计、生产周期,以使企业在市场上更具竞争力,另一类是研发单位,如政府、国防和大学中涉及制造行业的部门或专业。这一类用户的目标是利用高性能计算技术改善设计方法,提高设计水平从而为实际生产服务。
图1给出了制造行业中采用计算机进行产品开发的流程,包括建模、前处理(模型修改和网格生成)、计算分析、交叉学科综合及后处理几个部分。其中高性能计算主要应用于计算分析部分,统称为计算机辅助工程(CAE)。图1是CAE的分析过程。
图1 计算机主要在CAE分析过程的后期解算部分发挥作用
制造行业CAE应用程序的特点
制造行业CAE的应用可以分为隐式有限元分析(IFEA)、显式有限元分析(EFEA)和计算流体动力学(CFD)三个子学科。几乎所有的制造企业的高性能计算都依赖于独立软件开发商(ISV)提供的商业软件,只有流体动力学算题中结构网格计算类型的部分软件是用户自己开发的。因此制造行业用户在购买硬件平台的同时通常会购买相应的科学计算软件产品。而在某种程度上,往往是应用软件的特性决定了硬件平台的选择。
下表给出了常用的CAE软件,并列出这些软件的特点,包括并行方式和可扩展性。
常用分析软件
从上表中我们可以了解到CAE应用软件具有以下特点:
(1)IFEA类应用软件(如ABAQUS、ANSYS和MSC Nastran)硬件平台支持的可扩展性不是很好。当使用超过8个CPU来处理一个任务时,通常不会再有性能上的提升;
(2)IFEA类应用软件通常使用共享内存方式(pthreads或OpenMP),进行并行处理,其中ABAQUS不支持消息传递方式(MPI)的并行;
(3)EFEA类应用软件(如LS-DYNA、PAM-CRASH和RADIOSS)和计算流体动力学软件(如FLUENT、STAR-CD和PowerFlow)的硬件平台支持的扩展性相对较好;
(4)EFEA类应用软件和CFD软件以采用消息传递并行方式(MPI)为主。
高性能计算(HPC)服务器体系结构分类及特点
目前市场上常用的高性能计算服务器大致可以分为以下3种体系结构,即:
1.并行向量处理机(PVP)
PVP系统含有为数不多、功能强大的定制向量处理器(VP),以及定制的高带宽纵横交叉开关和高速数据访问。由于这类系统对程序编制的要求较高,价格很昂贵且难于管理,因此,这种类型计算机主要集中在一些大型国家关键部门,在本文中不再赘述。
2.对称多处理机(SMP)
SMP系统采用商品化的处理器,这些处理器通过总线或交叉开关连接到共享存储器。今天市场上常见的机型有IBM p系列服务器、HPQ的SuperDome、Alpha的ES、GS系列及SGI公司的Altix系列。SMP系统通常具有以下特点:
(1)系统内的CPU共享并可以直接访问所有的内存;
(2)由一个操作系统管理整个系统;
(3)支持共享内存方式的并行模式,如OpenMP、pthreads等;
(4)支持消息传递方式的并行模式,如MPI、PVM等
(5)系统的价格相对较高;
(6)为提高系统的使用效率,需要有功能强大的资源管理软件和作业调度软件配合进行系统管理。如LSF、PBS及IBM的WLM和LoadLeveler等。
3.工作站集群(COW,Cluster Of Workstation,简称Cluster) #p#page_title#e#
Cluster结构是近年来发展势头很好的一种体系结构。这类机型的技术起点比较低,用户甚至可以自己将一些服务器或微机通过以太网连接起来,配以相应的管理、通讯软件来搭建Cluster。但是如果要构造高性能、结构合理并具有好的RAS特性的Cluster却不是一件容易的事情。几乎所有的国内、外计算机厂商都有自己的Cluster集群产品,如IBM的Cluster1350、联想的深腾系列及曙光的天潮系列等。Cluster系统通常具有以下特点:
(1)系统由多个独立的服务器(在Cluster概念下称为节点)通过交换机连接在一起。每个节点拥有各自的内存,某个节点的CPU不能直接访问另外一个节点的内存;
(2)每个节点拥有独立的操作系统;
(3)需要一系列的集群软件来完成整个系统的管理与运行,包括:
Cluster系统管理软件,如IBM的CSM、xCat等;
消息传递库,如MPI、PVM等;
作业管理与调度系统,如LSF、PBS,LoadLeveler等;
并行文件系统,如PVFS、GPFS等;
(4)支持消息传递方式的并行模式,如MPI、PVM等;
(5)只能在单个节点内部支持共享内存方式的并行模式,如OpenMP、pthreads等;
(6)性能价格比好。
CAE硬件平台的选择
CAE在制造企业中承担着关键的业务,所以其高性能平台的选择非常重要,这个平台直接影响CAE的运行性能表现、整体成本和系统维护等方面问题。想让CAE能实现“随需应变”,在高性能计算平台的选择上就需要进行全面的考虑。
1.CAE软件使用SMP系统存在的问题
理论上讲,SMP系统可以胜任CAE应用程序的运行,但是不可避免地存在一些问题。首先是SMP系统价格相对较高。而且CAE的某些应用软件的扩展性不好,如隐式有限元分析(IFEA)类软件通常只能用到最多8个CPU。这个特点决定了配置超过8CPU的大SMP服务器没有太大的必要,反而会造成投资的浪费。
此外,SMP系统由一个操作系统管理,如果没有强大的资源管理软件和作业调度软件配合,很容易造成CPU分时处理多个任务的现象,即在一个CPU上同时运行多个进程,从而影响整个系统的使用效率,同时难于保证关键任务的按时完成。常用的作业调度软件有LSF、PBSpro和OpenPBS,其中开放源代码的OpenPBS很难胜任复杂的CAE应用软件的管理,尤其是对共享内存方式并行模式(OpenMP,pthreads)的管理。而LSF和PBSpro的价格比较高,同样会增加用户的投资。
2.CAE软件使用Cluster系统存在的问题
目前市场上的Cluster系统通常是用PC服务器作为节点构建的,每个PC服务器内部一般配置2个CPU。这种类型的Cluster系统在承担CAE应用软件运行任务时也存在一些问题,比如共享内存方式的并行模式只能运行在一个节点内部,也就是说,最多只能用2个CPU去处理OpenMP/threads类型的CAE任务,很难满足应用的时效性要求。又因为单CPU的处理能力限制,需要更多的CPU来完成一个计算任务,这样就需要购买较多CPU的软件许可证,增加了用户的投资。
3.IBM eServer p5 575服务器:CAE应用软件的最佳选择
针对SMP系统和Cluster系统在处理CAE应用时存在的问题,我们可以考虑一种综合这两类体系结构优势的高性能计算机系统——SMP Cluster。如图2所示。
图2 SMP Cluster和OpenSMP、Cluster的比较
IBM Cluster1600可以采用多种安装IBM POWER5芯片的服务器作为节点,如p5 575、p5 590和p5 595等,其中p5 575是专为HPC推出的一款高性能计算服务器。使用p5 575作为节点来构成Cluster1600系统具有以下特点: #p#page_title#e#
(1)采用SMP服务器作为节点,构成Cluster系统。这样兼有两种体系结构的特点,可以称之为SMP Cluster系统;
(2)p5 575是一个在2U高度中可以安装8个POWER5处理器的SMP服务器(业界密度最高的非刀片服务器)。在一个p5 575内部运行共享内存方式的并行模式(OpenMP或threads)应用程序,可以保证系统能胜任较大规模的运算模型处理,满足计算的时效性。应用程序也具有较高的并行效率和加速比;
(3)节点间连接采用IBM为HPC专门设计的高性能交换机HPS,其单通道带宽达到4GB/s,并且每个节点都配置了双通道作为冗余配置。这样在保证跨节点通信的优越性能的同时,提供了较高的稳定性;
(4)整个系统可以运行消息传递方式的并行任务(MPI或PVM)。同时支持混合并行模式,即在节点内部使用共享内存方式的并行模式,节点间使用消息传递方式的并行模式,如MPI+OpenMP模式;
(5)完善的集群管理环境,统一进行资源管理和作业调度。管理软件包括:
CSM集群系统管理软件;
LoadLeveler作业调度软件,具有强大的作业调度、记帐及断点/续算功能;
WLM资源管理软件,与LoadLeveler配合使用,满足用户对系统资源管理和作业调度的复杂要求;
优化的并行使用与开发环境PE,提供高性能的、完善的并行作业运行与管理;
高性能的并行文件系统GPFS,为整个集群提供稳定的共享文件系统,方便管理与使用;
(6)较高的性能价格比。
结论
结合制造行业CAE应用软件的特点,我们可以看到使用IBM eServer p5 575作为节点的IBM Cluster1600系统可以很好地满足这类应用的复杂需求,是CAE应用软件的上佳选择之一。
首先,使用8 CPU的SMP系统作为节点,可以很好地满足隐式有限元(IFEA)类型的应用,如ABAQUS、ANSYS和MSC Nastran。这类应用以使用共享内存方式的并行模式为主。8 CPU的p5 575具有足够的处理能力满足应用软件处理大系统模型的需求,同时保证系统具有最高的使用效率。在这类应用中,更大的SMP服务器是没有任何必要的。
其次,对于扩展性较好的EFEA类和CFD类应用软件,通过IBM高性能交换机(单通道带宽为4GB/s)连接的Cluster1600系统可以很好地满足节点间的通讯要求。在某些MPI的应用中,SMP Cluster具有比相同数目CPU的SMP系统更好的性能。
再次,IBM Cluster1600系统具有完善的系统管理软件,可以保证同时使用IFEA、EFEA和CFD应用软件的用户方便地规划与管理系统。作业调度软件LoadLeveler和资源管理软件WLM的结合使用可以满足用户对系统资源的有效管理,达到系统的最优化使用。
最后,IBM eServer p5 575采用性能强大的POWER5处理器,用户可以使用较少的CPU达到较高的性能,从而节省应用软件的许可证费用。另外,IBM eServer p5 575是专门为高性能技术运算和大规模并行处理开发的产品,大缓存、高缓存带宽和高内存带宽保证了处理复杂数学模型和复杂运算时的性能。图3 、图4是在ANSYS和NASTRAN下的测试结果,供读者参考。
图3 ANSYS测试结果(ANSYS 8.1 Sum of 19 standard ansys runs,elapaed time in sec)
图4 NASTRAN测试结果(MSC.NASTRAN 2004,Serial timings,XLEMF:Car body,ndof=654560, elapaed time in sec)