本文摘要:(由ai生成)
HFSS是一款用于天线、射频组件等设计的3D电磁仿真软件。由于可扩展性低,HFSS适合大内存单机运行。针对大规模问题,可通过集成调度器构建集群解决。HFSS的自适应网格剖分和Auto-Scale功能有助于提升仿真效率和资源利用率。尽管支持GPU加速,但选择时需考虑性价比。这些方法为HFSS在电磁仿真领域的应用提供了有效支持。
HFSS(High Frequency Structure Simulator)是世界上第一款商业化的3D电磁仿真软件。由Ansoft公司在1990年开发并发布第一个版本。
01
显式算法,精度相比隐式算法低,但可扩展性更好,即在多台机器上的线性加速比相对较好,适合于多节点并行计算,对机器无特殊要求,一般对内存、IO要求相对较低。
HFSS作为计算电磁学的典型应用,在整个表的最上层,这代表其可扩展性低,适合高配、高IO的单机,性能越高越好。
这是由于两方面原因造成的:
1. 网络通信开销大
2. 内存要求高
HFSS也是这样,对网络要求极高。随着CPU核心数量的增加,带宽优势超过了核心效率。也就是说,堆机器不如堆网络带宽。
而在内存上的要求,跟算法、精确度十分相关,很大程度上取决于对需求与价格的取舍。
而结合以上这两种需求场景,网络要求高,内存需求大,单台大内存机器成为不二之选。
而且,资源足够,价格感人,还不用长期持有。
02
在过去,如果企业不购买成本极其高昂的大机器,工程师就不得不对规模和难度大的设计“拆分组合”处理,将几何结构分割成多个区域,到后期再合并结果。由于没有考虑所有的电磁耦合,这种方法是极容易出错的。
或者,工程师直接简化模型降低精度,以减少计算量。
这两种方法,工程师都能使用HFSS求解更大、更复杂的模型,而不会影响精度。
我们擅长的是方法二。
对研发工程师来说,使用集群有两大好处:
一、提高了单人使用上限
我们把一台台 独立的单机集群化,也就是变成一个统一的计算资源池。在某种意义上来说,集群可以被看作是一台大的计算机,集群中的单个计算机通常叫做节点,由这些节点合作完成用户任务。
说人话就是,一个任务可以拆分多机跑,多个任务可以同时跑,来了大任务也不用担心被一台机器的上限所限制。
单机模式下大家都是各用各的,缺乏协作,也没有统一管理,无形中造成的沟通成本和损耗,其实并不小。
各种不同任务之间可能会出现资源争抢,互相干扰。比如,两个HFSS任务同时在一台机器上跑可能出现内存告警。
我们根据不同业务团队分工,为其在集群中划分不同的独立分区,这样既保证了不同组的研发们能在同一个集群中工作,保留各自操作习惯,同时还互不干扰。
同时,在建立起一套统一的使用规范基础上,我们支持项目数据、用户数据的统一管理和权限控制,不同业务团队之间可以根据不同用户权限共享计算、存储、软件资源等,整体上提高了整个团队的工作与协同效率。
这里不再展开,可以参考:从“单打独斗”到“同舟共集”,集群如何成为项目研发、IT和老板的最佳拍档?
03
这恐怕是很多CAE工程师的日常。
整个过程完全自动化,无需人为干预。
这对广大电磁场仿真工程师来说是非常大的利好,在减少工作量的同时降低了软件的使用难度,让工程师们可以将注意力完全放在如何得到好的仿真结果上。
接下来,让我们换一个视角来看这个问题。
HFSS支持将整个自适应网格剖分过程通过调度器进行多步骤提交,我们的调度器Fsched提供的Auto-Scale功能与这个过程简直是绝配。
最佳效果是分为三步:
第一步:初始网格生成,核数与内存需求很低;
第二步:网格自适应剖分,适度的核数与大量内存需求;
第三步:频率扫描,核数与内存需求高。
对用户来说,如果留的缓冲空间比较大,可能造成资源浪费,留的空间小了,任务可能运行失败。
更多应用场景可戳:Auto-Scale这支仙女棒如何大幅提升Virtuoso仿真效率?
04
从ANSYS HFSS 17.2开始,HFSS开始明确支持GPU加速。
是否选择使用GPU对求解器进行加速,主要还是取决于算法本身是否合适。
最新的ANSYS 2024 R1用户手册显示GPU加速主要在以下三种场景:
1. 频域求解器
2. 时域求解器
GPU加速需要占用HPC License,ANSYS Electronics HPC高性能选项模块同时支持CPU加速和GPU加速,1个HPC Pack可以启用1块GPU加速卡或8个CPU内核。
综合对比硬件成本与运算效率,目前业界普遍认为使用GPU跑HFSS性价比不高。
3. 自适应网格剖分技术结合fastone研发平台的Auto-Scale功能可提升任务成功率,减少资源浪费。
本次CAE实证系列Vol.14就到这里了。