新手入门 | 电磁仿真硬件配置指南

新手入门 | 电磁仿真硬件配置指南

新手入门 | 电磁仿真硬件配置指南

关注的都是帅哥美女,(>Д 新手入门 | 电磁仿真硬件配置指南

新手入门 | 电磁仿真硬件配置指南

 

有很多不怎么关注硬件市场的工程师在做仿真时会问求解怎么这么慢?选购生产力工具时会被各种型号规格搞得眼花缭乱,明明只想知道,这台计算机能让仿真速度嗖嗖的吗?鉴于此,本文提供一些普适性的建议供有类似需求的小伙伴参考:
  • 哪些因素影响了仿真软件求解速度?
  • 评估什么样的配置更有利于提升生产效率?
  • Intel和AMD选哪个?怎么选?

 

影响软件运行速度的因素

 

随着仿真模型的复杂度越来越高、计算量也越来越大,CAE(Computer Aided Engineering)软件对硬件配置提出了更高的要求,工欲善其事,必先利其器。硬件、操作系统及软件算法及相关设置为三大主要因素,根据选购思路分别进行说明。

1. 明确软件使用的算法

Ansys的CAE软件有显式计算、隐式计算和流体计算三大类仿真计算类型。有限元算法主要靠CPU完成建模与网格剖分,但超过32核心后可拓展性将迅速饱和。FEM、MOM和FDTD等算法特点为多核并行度高,对内存容量要求高。有限体积法等类似算法则由于并行效率高,可以调用几乎无限多的核心数。所求解模型的规模、网格特征、分析过程、求解器类型、精度、迭代次数以及输出设置都影响计算速度。
 
在决定软件运行在什么操作系统和硬件设备上之前,做好这方面的规划,可以通过求解一些与待求解的更大模型相似但更小的模型来预测需求,测试模型包含的物理场与要在更大模型中求解的相同。监视所用的内存、耗时、网格数量以及自由度等信息,做到心中有数。
 

2. 操作系统的差异

操作系统在授权和配置方面略微影响仿真速度,一是Linux比Windows在程序调度上有优势,运行速度会快一些;二是Windows按核心数授权的计费方式会增加一笔不必要的开支。兼容性方面取决于软件厂商的适配,操作系统这方面按个人需求和习惯自行决定。
 

3. 硬件,选对CPU很重要

CPU又叫中央处理器,是计算机的运算核心,通常被称为计算机的大脑,作用是将来自内存的输入专换为外围设备的输出。20世纪40年代末冯·诺伊曼推出了一种广受欢迎的计算机架构,其理念是将计算机分为用于存储数据和指令的存储器、用于解码和执行指令的中央处理单元和一组输入输出接口三个独立的部分,还引入了四步指令周期:从内存中提取、解码、执行指令和写回内存。

新手入门 | 电磁仿真硬件配置指南

“芯片性能每18个月性能提高一倍。”——摩尔定律

 

现代计算机基本上沿用冯·诺伊曼体系结构,随着工艺制程的进步,除了核心(Core)数的增加,部分存储器和显卡集成到CPU里,前者为缓存(有一级二级和三级缓存之分,速度递减的同时但容量递增),后者被称为核心显卡(Professor Graphics),如下图:
 

新手入门 | 电磁仿真硬件配置指南

 

CPU是一个很宽泛的概念,根据指令集的不同有着多种CPU架构,其中两大阵营,一是以Intel和AMD为首的复杂指令集(CISC)架构,在服务器端大杀四方;另一种是以IBM和ARM为首的精简指令集(RISC)架构,则在移动端大放异彩。1978年Intel发布了采用x86指令集架构的Intel 8086,成为现代CPU设计的基础。1999年AMD设计基于x86架构的64位拓展AMD64,并扩充给x86后为Intel采用,也就是x86_64。有意思的是,Mac电脑的CPU架构则在二者中反复横跳。40多年的风云变换,x86及x86_64架构在PC和服务器领域一枝独秀,目前工业软件大部分基于x86_64架构开发,故本文的重点是Intel和AMD的64位处理器型号以及使用的技术。
 
来实际看看Intel和AMD的CPU规格介绍有什么: 
 

新手入门 | 电磁仿真硬件配置指南

 

新手入门 | 电磁仿真硬件配置指南

新手入门 | 电磁仿真硬件配置指南

新手入门 | 电磁仿真硬件配置指南

CPU频率:
为了突破摩尔定律的极限,单核CPU频率不断提高,以至于CPU频率增幅远大于内存频率的增长。于是处理器内存在着多个频率:CPU主频也就是时钟频率是 CPU 在一秒钟内可以执行的周期数,用来表示CPU运算与处理数据的速度,厂家设定值都很保守如intel的那颗CPU主频为2.4GHz(AMD 2.45GHz);除此之外,为了将电脑性能发挥至极限,一些玩家会选择超频强行提高CPU内核的频率,由于长时间超负荷运行,这将使得功耗增大甚至缩短CPU使用寿命,在此背景下,睿频加速技术是厂商推出的自动超频技术,可以在安全温度和功率限制内,将 CPU 速度动态提升到最高频率,提升单线程和多线程应用程序的性能。还有总线频率影响着CPU与内存数据交换的速度,不能说CPU频率越高,性能越强,但性能与频率的确有很大的关系。
 
核心数与线程数:
随着单核性能不断提高,执行端口闲置的情况就会越来越明显,造成计算机资源的浪费,硬件上通过添加处理单元就可以同时处理不同的任务。软件层面将工作拆分到多个软件线程,而不是将大量工作交给单个内核。这些线程由不同的 CPU 内核并行处理,根据其构建方式,程序可能是轻线程的,也可能是重线程的。某些并行算法使用单个 CPU 内核,并通过更高的时钟速度来获得大幅度性能提升。如图所示,核心数多到一定程度加速效果就没有那么明显了。

新手入门 | 电磁仿真硬件配置指南

开启同步多线程SMT(Intel将其包装为超线程)技术后,CPU将在每个内核上运行多个线程,提升了多任务处理性能。同时SMT技术不可避免地增加了共享资源的冲突,造成单核性能的下降和兼容性问题,在进行大规模运算时反而会拖累求解速度。Intel和AMD都将一颗核心虚拟为2个线程,当然今年Intel提出“性能核心”(Performance Cores)即P核心和“能效核心”(Efficiency Cores)即E核心,P核支持超线程,而E核不可以,所以就有16核24线程这种怪事。

新手入门 | 电磁仿真硬件配置指南

新手入门 | 电磁仿真硬件配置指南

计算机主频的增加也有瓶颈,物理核心的增多意味着指令执行周期变短,一次可执行的并行线程数就越多,Ansys默认允许同时使用4个核心,更多核心数需要购买HPC授权。
 
缓存:
为了解决CPU运行和内存读取速度不匹配,CPU会先到Cache(一般分为一级缓存、二级缓存和三级缓存)中去寻找,只有不到5%的数据需要CPU直接去内存中寻找,因此缓存的结构和大小对CPU速度影响非常大,理论上说,一级和二级缓存中数据的命中率极高,其中分支预测以及乱序执行等功不可没,三级缓存在服务器领域对性能有显著提升,在其它因素相同的条件下,缓存较大的机器表现出更好地性能。
 
内存:
前文说到CPU频率已远远大于内存频率,在进行数据处理时,首要考虑的是内存容量,容量越大,可求解问题规模越大。原则上要尽可能将所有内存带宽利用起来,主板设计时可能一个内存通道有多条内存插槽,不是一回事,以下图4插槽的4通道内存为例,4x1x4GB指4条通道各插一根内存(容量4GB):

新手入门 | 电磁仿真硬件配置指南

内核数量与内存容量比值取1:4或1:8,但通过核心数得到的容量在市面上组不到(如38*8=304),这时选择32GB*内存通道数,保证仿真时每个核心分到的内存有8GB。如果是多颗CPU,内存通道也要乘以相应倍数,但主板支持的更大通道数不一定会有那么多,需要权衡自身情况。
 
内存频率与内存时序,在频率一致的情况下,时序越低,数据交互速率越高。考虑到时序不匹配可能会开不了机,尽量选择同型号同批次的。最后补充一点,内存的好坏与品牌无关,因为常见内存厂家都是购买内存颗粒进行组装售卖的。
 

4. 其它配置也不能拖后腿

接下来的因素不是说不重要,而是满足了前文条件后,这些东西绝对不会差了。
 
微架构:
微架构通常被表示成流程图,以描述机器内部元件的连结状况、数据以及指令如何移动与执行的路径。计算机硬件买新不买旧的原因就在于随着工艺越来越新,制程越来越先进,一般来说,新微架构优于上一代的,厂商推出新的CPU也有抢占友商市场的意图,故翻车的情况也有。
 
硬盘:
在仿真过程中,需要频繁向硬盘存取数据,主要是Temp和Results文件,首先保证硬盘容量足够大,在此基础上尽量选择速度快的硬盘,固态硬盘优于机械硬盘。建议操作系统、软件安装位置和工程存放路径不在同一个目录下。
 
显卡:
常见的显卡类别有集成在主板上的集成显卡(正在被淘汰),集成在CPU里的核心显卡和独立与主板和CPU自带存储与散热结构的独立显卡。只讨论后两种,核显的诞生是Intel 凭借其在处理器制程上的先进工艺以及新的架构设计,将图形核心与处理核心整合在同一块基板上,构成一个完整的处理器。独立显卡是指将显示芯片、显存及其相关电路单独做在一块电路板上,独立显卡实际分为两类,一类专门为游戏设计的娱乐显卡,一类则是用于绘图和3D渲染的专业显卡,以Nvidia为例专业卡Quadro系列(停止发售,新卡冠名RTX)和运算卡Tesla系列,前一个与游戏显卡相近但是提供了用于建模等方面的加速功能,后者则是用于大型计算如深度学习。AMD显卡命名较为混乱,就不在正文中讨论了。
 
由于显卡性能主要对Ansys软件的前后处理过程中的图形显示速度与效果起作用,对计算过程没有影响(稀疏求解器除外),如果有对复杂模型的交互操作、大规模网格显示以及动态场图生成与显示效果有较高要求可选择高显存的计算卡,在进行求解前对模型进行简化可大幅减少网格数量。CPU和主板规格都会写是否需要带核显才能点亮,独立显卡的话推荐使用基于最新 AMD 或 NVIDIA 的专用显卡,AnsysEM中以下求解器支持GPU加速:
  • HFSS频域、瞬态以及SBR+求解器;

  • HFSS 3D Layout的矩阵求解和眼图分析;

  • Maxwell 3D 涡流矩阵求解

  • Circult眼图分析。

网卡:
当并行节点增多时,网络的稳定性就显得十分重要,推荐选择10GB/s以上的网络卡。
 
主板:
以上硬件都是安装在主板上的,因此主板的兼容性与可拓展性至关重要,支持的CPU型号,CPU插槽数,内存型号与频率,内存通道数(6或8)等等。
 
电源:
人吃饱了才有力气干活,计算机也是如此,尽可能选择口碑较好的瓦数大的电源。

写在最后

 

有限元计算的实质是求解线性方程组,因此高性能计算的目标有两个:
1. 数值计算的模型更接近真实的模型,精度更高,相应的模型规模也更加庞大;
2. 同一规模的算例求解时间更短,单位时间内求解的次数更多。
 
不同的算法对计算机硬件资源的需求不同,软件开发商不断优化求解器算法,使用最新的软件就能享受到算法优化带来的速度提升;用户还可以通过提高计算机速度来实现高性能计算。
 
本文提及了部分计算机原理以及是如何影响仿真速度的,希望对各位硬件的选择有一定参考意义。
 
首先,算法类型奠定了整体选型时该在哪有所侧重,内存容量直接决定了该问题能不能在此机器上求解,CPU频率、核心数与缓存共同决定了求解的快慢,需要从整体看待,建议开启睿频并关闭同步线程技术(不同主板的BIOS设置大同小异),开启超线程只会徒增Tokens数量,不适合密集型计算任务。只有将内存正确的插到主板上才不会拖累整体的求解速度,磁盘该考虑的是该选多大多快的SSD,GPU只对前后处理过程中图形显示速度与效果起作用,应该选择专业的图形显卡,GPU的光追不会让你的求解更快。以下因素的优先级从高到低排列:
 
CPU频率 > CPU核心数 > CPU缓存 > 内存容量 > 内存带宽 > 内存速度 > 内存通道数 > 内存时序 > 硬盘容量 > 硬盘读写速度 > 独显
 
那么,AMD能买吗?
 
AMD主要有两个问题:一是新品定价差点意思;二是数学内核库等导致的软件兼容性问题,还有缺失后对求解速度的影响。如果不在乎价格跳水,霄龙二代或三代以及线程撕裂者系列是更佳选择,相比Intel,AMD的核心数量和CPU频率方面占绝对优势,官方经过适配并大量实测的软件,跑分非常给力。Intel的优势在于对指令集和软件的完美兼容,不知道能否在AMD的机器上运行时则选Intel。

附:两大CPU厂家主要型号介绍

 

Intel
Intel的产品线可以分为1993年推出的奔腾(Pentium)和2006年推出的旨在取代当时奔腾处理器的酷睿(Core)产品线,奔腾系列衍生出面向低端市场的赛扬(Celeron)和供服务器以及工作站使用的志强(Xeon)系列,奔腾则定位为低端入门级的赛扬和主流酷睿系列低一级的中间级别。
 

新手入门 | 电磁仿真硬件配置指南

 
英特尔® 酷睿™ 处理器系列的品牌修饰符包括 i3、i5、i7 和 i9。品牌修饰符数字越大表示其提供的性能级别更高,在某些情况下表示其提供附加功能(如超线程技术),品牌和品牌修饰符后面是处理器代次指示符,就大多数英特尔处理器而言,产品编号的最后三位数字是 SKU 编号(通常是按照该代次和产品线中的处理器开发顺序分配),在处理器品牌和代次的其他部分完全相同的前提下,较高的SKU一般表示具有更多功能。产品线后缀见下表:
 
新手入门 | 电磁仿真硬件配置指南
至强系列对服务器和工作站做了部分妥协与优化,首先是内存控制器方面支持ECC纠错,有助于在问题发生之前发现并修复99.999%的软内存错误,从而大大减少数据损坏和系统崩溃的可能性;二支持更多的PCIe通道;三是支持多路运算,通常可以用多颗至强处理器组成多通道,而酷睿只能是单核心工作;四是支持的RAM容量和高速缓存容量更大;五是因为散热或功耗等因素,至强处理器大多多核低频,对多核并行做了优化,TDR设定也相对保守;最后是更专业的拓展功能。
 
至强分可拓展、D、E和W四种适合不同应用场景的处理器,至强可扩展处理器旗下又可细分为铂金(Platinum)、黄金(Gold)、白银(Silver)及青铜(Bronze)四个等级,见下表:

 

新手入门 | 电磁仿真硬件配置指南

其它面向低端市场的赛扬等系列不做考虑。
 
说到AMD自2019年推出zen架构后,又再次真正威胁到了Intel的霸主地位,AMD Yes!感谢AMD,让我们用上了便宜的Intel处理器。如今AMD处理器家族推出了面向服务器的霄龙(EPYC),面向工作站的线程撕裂者(Threadripper)与Threadripper Pro,主打消费级领域的锐龙(Ryzen)、锐龙 Pro、速龙(Athlon)以及Athlon Pro。
 
霄龙(EPYC)系列有7003和7002两个系列,处理器的核心数从 8 核到 64 核 (每路 16 线程到 128 线程)。
 
Ryzen Threadripper专为高端桌面市场设计,拥有卓越的性能,先进的架构,超高速的数据传输和极致的多核渲染能力,接口也不同于普通锐龙,需搭配X系列高端主板。最高支持64核心128线程,4通道DDR4,为建模 动画 渲染带来全方位的计算性能。
 
锐龙(Ryzen)家族命名,以AMD Ryzen 9 5950X为例,Rezen后第一位数字9代表了四个等级(3,5,7,9),分别对应低、中、高端与旗舰,与Intel的i3/i5/i7/i9如出一辙。再后面四位数代表代数和SKU编号,目前已发布了1000~6000系列,锐龙Pro是针对企业和商务人士打造的CPU,安全性强且稳定性高。R3~R9已足够普通消费者使用。值得记住的后缀如下:WX指的是高性能工作站的意思。
 

新手入门 | 电磁仿真硬件配置指南

 
一般来说,英特尔的数学核库(Intel Math Kernel Library, MKL)是默认使用的库。它在 AMD CPU 上运行地非常慢,因为 MLK 使用一种区分性的(discriminative)CPU 调度器,这种调度器不能根据 SIMD 的支持来有效使用代码路径,流体模块已经支持在AMD CPU上使用,HFSS计划2022R2版本支持。
 
AMD与Nvidia显卡命名规则:
性能上来说,一般独立显卡 > 核心显卡,但凡事皆有例外,Intel的核显性能大有赶超中低端独显的势头。
 
型号与参数之间关系如下:
 

新手入门 | 电磁仿真硬件配置指南

 

新手入门 | 电磁仿真硬件配置指南

 

显卡品牌一般分一线、二线、三线和杂牌
一线:华硕、技嘉、微星、七彩虹、影驰、蓝宝石、索泰(勉强算一线)
二线:铭瑄、耕升、映众、迪兰恒进、讯景、撼讯、盈通、华擎
三线:昂达、翔升、梅捷、万丽、电竞叛客、铭鑫、祺祥、艾尔莎、小影霸、磐镭
杂牌:华南、冰影、铭影、卡诺其、黄伟达、白牌
 
AIC和AIB
AIC(Add in Card),Nvidia显卡俗称N卡,AIC特指具有研发和制造能力的NVIDIA合作伙伴,通常AIC制造产品而由通路厂商贴牌出售,能够对NVIDIA的市场策略给予终端产品线的支撑。AIC往往能够比传统的通路厂商享受到更多的支持,如市场基金、活动方案、显示芯片与显存的捆绑优惠等等。非AIC厂家无法直接在Nvidia处购买芯片。
 
N卡主要AIC有:华硕、技嘉、微星、七彩虹、影驰、耕升、索泰、映众。
 
AIB(Add in Board),AMD显卡俗称A卡,AIB 合作商专门生产运用Graphics by ATI(ATI图形技术)的显示卡。这些合作伙伴制造的图形卡皆具有独特的附加功能,符合全球各地游戏玩家的特别需求。这些图形卡采用 ATi 图形技术,但均具有增强的设计,附加额外的板上功能,专门满足所有游戏体验所需。
 
A卡主要AIB有:蓝宝石、华硕、微星、技嘉、讯景、迪兰恒进。
 
显卡首选AIC和AIB的公司,原厂供货,不缺芯片。无法向原厂购买芯片的显卡厂家一是技术能力,规模,售后都有差距,另一原因容易找二手显卡拆芯片翻新。尤其是国内矿卡泛滥,在拿不到原厂芯片以及追求利益的同时,有些厂家就会去回收矿卡回厂翻新。
 

完

 

 

评论