PCC基于Fluent的CFD集群解决方案

2012-04-17 10:15

摘要


自计算机诞生之日起,应用就对计算速度有着无限要求。从某种意义上来说,计算机的历史就是一部不断追求计算速度的历史。这种速度的典型应用是生命科学研究、宇宙演化、气象数字预报、石油勘探地层模拟、航空航天器模拟、大型工程设计、以及制造业产品创新等。


Preconcal公司不仅在服务器硬件设备上是国内的领跑者,她更关注与硬件设备配套的软件应用。经过多年的实践与探索,本公司已成功完成了诸多基于Fluent的CFD集群系统项目,如西安交通大学Fluent集群项目、西工大Fluent集群项目。通过和这些单位长期接触与交流,PCC已掌握到大量最直接、最实际Fluent与集群系统性能资料。更可贵的是,PCC公司技术支持部全体成员团结努力,在整理、研究集群客户Fluent相关测试、使用信息的基础上,搭建Fluent集群系统平台实验室,深入测试Fluent计算与PCC集群系统内部的关系与性能,总结出一套针对Fluent计算,基于PCC高性能计算机集群的解决方案,为用户及公司销售、技服人员提供信息服务和参考。

 

PCC高性能计算集群是采用IA架构下最新技术的高性能计算机,具有超强的计算能力,同时具有良好的可扩展性,能很好的满足Fluent计算特殊严格的要求。


关键字:Fluent、CFD、计算流体力学、网格、集群



方案分析

一.客户需求分析

2006年12月,Preconcal为西安交通大学定制基于Fluent计算的高性能计算工作站,该系统由塔式工作站、交换机、以太网络等组成。主要运行Fluent等软件。经过6年的应用,Fluent在该系统上运行稳定、状态良好,参与了不少课题和项目。但随着业务需求飞速的发展,该系统已不能满足需要,更效率、更大规模计算成为当前迫切的要求。针对客户需求分析,我们设计出基于Fluent的高性能(High-Performance Computing)计算集群,以更好满足当前的计算需求。


二.方案分析

本方案中,我们使用的是高性能计算(High-Performance Computing)集群。简单的说,集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统就是集群的节点(node)。高性能集群在计算过程中,各节点是协同工作的,它们分别处理大问题的一部分,并在处理中根据需要进行数据交换,各节点的处理结果都是最终结果的一部分。

高性能计算正在变得越来越简单,不管是Linux 集群或者Windows 集群,在很多领域都已经变得非常流行了,现在只需要传统高性能机器的很少一部分成本就可以构建一台超级计算机。通过在集群中运算节点计算机上安装的平行处理软件,可以将在传统计算机上运行的串行程序作为并行的运算过程在多台集群计算机上完成。一方面,不需要花费高昂的代价购买高配置的大型服务器就可以达到相近甚至更高的计算性能,另一方面随着应用对运算性能要求的提高,可以按照需求线性的对集群系统进行升级。


三.软件分析

Fluent 公司是享誉世界的计算流体力学(CFD)软件供应商,Fluent可用于能源动力领域的气轮机、锅炉的燃烧流动分析,电厂的污染排放模拟,水、气轮机等旋转机械的流场分析,换热计算、电力设备的各种复杂流道内的流动分析及能量损失等方面。随着现代能源动力设计理念的发展,人们要求系统的整体性能越来越高,设计周期越来越短,单CPU 计算往往难于满足现代设计的要求。因而并行计算能力也是考核CFD 软件的重要指标之一。

 FLUENT软件的并行功能具有以下特点:

 

自动分区、自动负载平衡技术Fluent软件采用自动分区技术,自动保证各CPU 的负载平衡。在计算中自动根据CPU 负荷重新分配计算任务。

并行效率高,FLUENT 软件的并行效率很高,双CPU 的并行效率高达1.8~1.9,四个CPU 的并行效率可达3.6。因而大大缩短了计算时间。

支持网络并行, 除支持单机多CPU 的并行计算外,FLUENT 还支持网络分布式并行计算。FLUENT 内置 MPI并行机制,大幅提高了网络分布式并行计算的并行效率。

 


软件分析

1.什么是CFD?   

CFD软件是计算流体力学(Computational fluid Dynamics)软件的简称,是专门用来进行流场分析、流场计算、流场预测的软件。通过CFD软件,可以分析并且显示发生在流场中的现象,在比较短的时间内,能预测性能,并通过改变各种参数,达到最佳设计效果。CFD的数值模拟,能使我们更加深刻地理解问题产生的机理,为实验提供指导,节省实验所需的人力、物力和时间,并对实验结果的整理和规律的得出起到很好的指导作用。   

随着计算机硬件和软件技术的发展和数值计算方法的日趋成熟,出现了基于现有流动理论的商用CFD软件。商用 CFD软件使许多不擅长CFD的其它专业研究人员能够轻松地进行流动数值计算,从而使研究人员从编制繁杂、重复性的程序中解放出来,以更多的精力投入到考虑所计算的流动问题的物理本质、问题的提法、边界(初值)条件和计算结果的合理解释等重要方面,这样最佳地发挥了商用CFD软件开发人员和其它专业研究人员各自的智力优势,为解决实际工程问题开辟了道路。  

 

使用CFD,你首先得建立你想研究的系统或装置的计算模型;然后将流体流动的物理特性应用到虚拟的计算模型,CFD软件将输出你想要的流体动力性质。CFD是一种高级的分析技术,它不仅可以预测流体的行为,同时还可以得到传质(如分离和溶解),传热,相变(如凝固和沸腾),化学反映(如燃烧),机械运动(涡轮机),以及相关结构的压力和变形(如风中桅杆的弯曲)等等的性质。 

  

之所以要使用CFD,至少基于以下三点:

1,通常的系统是很难模型化的,而CFD的分析能够展示别的手段所不能揭示的系统的性质和现象,因为CFD对你的设计有很强的理解和可视能力。

2,CFD能够快速的给出你想要的结果,一旦你给定你的问题的参量;这样你才有可能在很短的时间内调整你设计的问题的参数,得到最好的优化结果。

3,采用CFD是一种十分经济的做法。由于它的开发周期短,因此能节省大量的人力物力,使产品能更快的进入市场  


CFD软件概述 

  

CFD软件通常有三种功能,分别着重用于:   

前端处理(Preprocessing), 计算和结果数据生成(compute an result)以及后处理(Postprocessing). 前端处理通常要生成计算模型所必需的数据,这一过程通常包括建模,数据录入(或者从cad中导入),生成网格等;做完了前处理后,CFD的核心解释器(SOLVER)将根据具体的模型,完成相应的计算任务,并生成结果数据;后处理过程通常是对生成的结果数据进行组织和诠释,一般以直观可视的图形形式给出来。 

著名的CFD处理工具有以下一些:   

用于前处理: Gambit,Tgrid,GridPro,GridGen,ICEM CFD   

用于计算分析: Fluent,FIDAP,POLYFLOW   

用于后处理: Ensight,IBM Open Visulization Explorer,Field View,AVS   

提供综合的处理能力: Ansys,MAYA   

特殊领域的应用: Icepak,Airpak,Mixsim   

这些CFD软件功能强大,应用十分的广泛。在航天航空,环境污染,生物医学,电子技术等等各个领域,它们发挥了巨大的作用,世界上有越来越多的工程师更倾向于使用这些软件来完成自己的设计。


1.1 FLUENT 软件介绍

  

FLUENT 是世界领先的CFD 软件,在流体建模中广泛的被应用。由于它一直以来以用户界面友好而著称,所以对初学者来说非常容易上手,提高生产速度。它基于非结构化及有限容量的解算器的独立性能在并行处理中的表现堪称完美。Fluent 的软件设计基于CFD 软件群的思想,从用户需求角度出发,针对各种复杂流动的物理现象,FLUENT 软件采用不同的离散格式和数值方法,以期在特定的领域内使计算速度、稳定性和精度等方面达到最佳组合,从而高效率地解决各个领域的复杂流动计算问题。


基于上述思想,Fluent 开发了适用于各个领域的流动模拟软件,这些软件能够模拟流体流动、传热传质、化学反应和其它复杂的物理现象,软件之间采用了统一的网格生成技术及共同的图形界面,而各软件之间的区别仅在于应用的工业背景不同,因此大大方便了用户。所包括的软件模块:GAMBIT——专用的CFD 前置处理器,FLUENT 系列产品皆采用FLUENT 公司自行研发的Gambit 前处理软件来建立几何形状及生成网格,是一具有超强组合建构模型能力之前处理器,然后由Fluent 进行求解。也可以用ICEM CFD 进行前处理,由TecPlot 进行后处理。Fluent5.4——基于非结构化网格的通用CFD 求解器,针对非结构性网格模型设计,是用有限元法求解不可

压缩流及中度可压缩流流场问题的CFD 软件。可应用的范围有紊流、热传、化学反应、混合、旋转流(rotating flow)及震波(shocks )等。在涡轮机及推进系统分析都有相当优秀的结果,并且对模型的快速建立及shocks 处的格点调适都有相当好的效果。


Fidap——基于有限元方法的通用CFD 求解器,为一专门解决科学及工程上有关流体力学传质及传热等问题的分析软件,是全球第一套使用有限元法于CFD 领域的软件,其应用的范围有一般流体的流场、自由表面的问题、紊流、非牛顿流流场、热传、化学反应等等。 FIDAP 本身含有完整的前后处理系统及流场数值分析系统。对问题整个研究的程序,数据输入与输出的协调及应用均极有效率。


Polyflow ——针对粘弹性流动的专用CFD 求解器,用有限元法仿真聚合物加工的CFD 软件,主要应用于塑料射出成形机,挤型机和吹瓶机的模具设计。


Mixsim——针对搅拌混合问题的专用CFD 软件,是一个专业化的前处理器,可建立搅拌槽及混合槽的几何模型,不需要一般计算流力软件的冗长学习过程。它的图形人机接口和组件数据库,让工程师直接设定或挑选搅拌槽大小、底部形状、折流板之配置,叶轮的型式等等。MixSim 随即自动产生3 维网络,并启动FLUENT 做后续的模拟分析。


Icepak——专用的热控分析CFD 软件,专门仿真电子电机系统内部气流,温度分布的CFD 分析软件,特别是针对系统的散热问题作仿真分析,藉由模块化的设计快速建立模型。


1.2 Fluent公司


Fluent公司是享誉全球的CFD软件供应商和技术服务商。公司总部设在美国New Hampshire州的Lebanon,下属机构遍及全球,在欧洲和亚太地区都设有多个子公司和代理机构。1983年,美国的流体技术服务公司Creare公司的CFD软件部(Fluent公司的前身),推出了其第一个商用CFD软件包FLUENT。自FLUENT软件面世以来,以其丰富的物理模型、先进的数值方法及技术人员高质量的技术支持和服务,FLUENT软件很快成为CFD市场的领先者。1988年Fluent公司正式成立。1995年,Fluent公司并入了在数字和能源电子等领域具有主导地位的Aavid Thermal Technologies 公司。1996年该公司成为一个上市公司。同年,Fluent公司收购了其最大的竞争对手FDI(Fluid Dynamics International)公司。FDI拥有著名的CFD软件FIDAP。1997年,以粘弹性和聚合物流动模拟方面为优势的Polyflow S.A.公司成为Fluent公司的一个子公司。上述兼并、联合进一步巩固了Fluent公司在CFD商用软件市场的领导地位。目前Fluent拥有全球商用CFD软件领域No.1的市场份额,并以每年两位数的百分比速度递增。


    Fluent公司的销售及技术服务网络遍及世界各地。公司的客户涉及航空航天、旋转机械、航海、石油化工、汽车、能源、计算机/电子、材料、冶金、生物、医药等领域。美国宇航局(NASA)、美国国防部(DOD)、美国能源部(DOE)以及ABB公司、西屋公司、波音公司、福特公司、三菱公司、IBM公司、杜邦公司等都是FLUENT软件的代表性用户。Fluent公司的软件系统对各公司相关领域的产品分析、生产和开发等环节提供了有力的支持。

    

Fluent公司结构


Fluent软件是全球最大的CFD软件。应用领域非常广泛。如下表:


航空航天

汽车制造

旋转机械

环境工程

热能工程

石油

化工

能源开发

建筑设计

冶金

医药

计算机/电子

材料


1.3 Fluent计算过程


完整的Fluent计算过程可分为三块:


前端处理(Preprocessing)

计算和结果数据生成(compute an result)

后处理(Postprocessing)


前端处理通常要生成计算模型所必需的数据,这一过程通常包括建模、数据录入(或者从cad中导入)、生成网格等;做完前处理后,CFD的核心解释器(SOLVER)——Fluent将根据具体的模型,完成相应的计算任务,并生成结果数据;后处理过程通常是对生成的结果数据进行组织和诠释,一般以直观可视的图形形式给出来。


Gambit是与Fluent配套的前处理应用软件。Gambit是面向CFD的几何建模和网格生成软件。目前也是CFD(计算流体力学)分析中最好的前置处理器,它包括先进的几何建模和网格划分方法。既可以在GAMBIT内直接建立点、线、面、体的几何模型,也可以从PRO/E、UGII、IDEAS、CATIA、SOLIDWORKS、ANSYS、PATRAN等主流的CAD/CAE系统导入几何和网格。GAMBIT与CAD软件的直接接口和功能强大的布尔运算能力使用户可以方便地建立复杂的几何模型。借助功能灵活,完全集成的和易于操作的界面,GAMBIT可以显著减少CFD应用中的前置处理时间。复杂的模型可直接采用GAMBIT固有几何模块生成,或由CAD/CAE构型系统输入。高度自动化的网格生成工具保证了最佳的网格生成,如结构化的、非结构化的、多块的、或混合网格。GAMBIT可以生产FLUENT、FIDAP、POLYFLOW等求解器所需要的网格。


下图是利用Gambit建模、划分网格的离心风机的网格图

 

离心风机网格整体

 

离心风机扇叶网格





方案设计


一. 方案总览

 


由于CFD是一种典型的浮点计算密集型和内存密集型应用,其对高性能计算机的要求主要有:

1) 具有很强的计算能力,尤其是浮点运算能力;

2) 有较大容量的内存以使前处理和求解时数据能完全驻留在物理内存中,经验表明,一般每个CPU至少分配2-4GB内存,而且多多益善;

3)要求具有支持高速、低延迟的通讯网络。一般而言,100个节点以内集群采用千兆以太交换网络,100个


节点以上的CFD集群要求采用性能更好的Infiband互连网络,以满足节点之间大量频繁的通讯要求。


Preconcal作为专业的高性能计算系统供应商,愿为流体力学计算应用提供多快好省的高性能计算解决方案,推动流体动力学数值模拟研究的发展,目前PCC的高性能计算解决方案,均可采用集群架构构造更大规模系统,配置方案可灵活选择,始终追求效益/成本最大化的高效能解决方案。

 

 1.1 拓扑图

 


Preconcal高性能计算集群由若干台高性能节点机、高速计算网络连接到一起组成,并通过监控系统和一组集群管理软件对其进行有序管理。集群的基本体系结构如图所示,主要包括节点、网络、存储、监管和软件等几个部分。根据用户对计算规模需求的不同,可以对节点、网络和存储等进行量身定制。


1.2 节点机

节点机主要包括两类节点:计算节点、管理节点。


计算节点

要求:

   (1)CPU:有很强的计算能力,对CFD而言特别是浮点运算能力。

   (2)内存:适量的内存以使前处理和求解时数据能完全驻留在物理内存中。经验表明,每个CPU分配内存越大,计算能力越强。

   (3)支持高速、低延迟的通讯网络


   针对以上要求,我们推荐计算节点采用两路12物理核心(超线程24核心)Intel至强56处理器的系统,这种系统都具有极高的性能,非常适合用于构建高性能集群系统。最新系列的处理器都更注重大内存容量支持和高带宽内存访问。同时在能耗控制方面也做了相当多的优化,可最大限度的降低TCO。


管理节点

管理节点是外部设备和集群系统之间连接的桥梁,任何用户和系统的管理员都只能通过管理节点才可能登陆到节点机子系统上,事实上,管理节点是一个多种身份于一身的节点,它具有管理和作业提交等功能。


1.3  网络


网络系统特别是计算网络的性能很大程度上影响着整个系统的性能。由于并行计算时的数据通讯和NFS文件系统的数据传 递对网络的要求较高,为了管理、监控等操作不对计算通讯和文件IO操作产生任何干扰,本方案设计的网络系统,实现专网专用,保证了系统的高效性。对于较大规模的集群系统,还可单独设置数据传输网络,将计算过程中的数据传输与个节点之间的通讯分离开,避免相互干扰。这对于非稳态、有大量中间 数据需要保存的CFD应用而言尤其重要。数据传输网络一般采用千兆以太网,根据需要还可以在IO节点上进行双网卡绑定以提高数据传输带宽。