仿真

COMSOL 工作站服务器选择

2020-12-25 08:22:54 NJTST 8





COMSOL Multiphysics® 求解的问题类型相当广泛,

加之当今软件和硬件开发速度之快,并且不同价位的硬件有着很大的差异,

因此,我们不能一概而论地说哪一款计算机对于所有使用案例来说都是最佳选择。


内存

对于计算机而言,最重要一个因素是,

要有足够的物理内存 (RAM) 来求解您要处理的最大模型,并且您已正确安装内存。

如果没有足够的内存,那么无论您选择什么样的硬件,计算机的运行速度都会明显下降。


您可以通过求解一些与待求解的最大模型相似更小的模型来预测内存需求,

测试模型包含的物理场与您要在最大模型中求解的相同。


监视所用的内存以及自由度,这些信息报告在“求解器日志”中。

将曲线拟合为 A x (dof)^N 形式的表达式,其中 A 和 N 是拟合系数,dof 是自由度数,您可以据此预测较大模型的内存要求。

指数 N 通常介于 1 到 2 之间,使用迭代求解器进行多重网格预处理时,N 更接近 1;使用直接求解器时,N 更接近 2。

因子 A 取决于问题的稀疏性。

举例来说,对于自由度非局部耦合的热辐射问题,A 的值将远大于传导传热问题中的值,此问题中的自由度之间只存在局部耦合。

请注意,对于不同的模型类型,内存使用率与自由度之间的关系存在巨大差异

因此,您可能需要为待求解的每一种模型重复此过程。

您需要一台不低于此内存量的计算机。

还请注意,如果内存量远远超过实际需要的量,也并没有什么好处。

请确保使用所选 CPU 支持的尽可能快的内存速度。



性能在很大程度上还取决于内存的安装方式。

所有计算机均通过多通道内存总线访问内存。

如果内存没有正确安装,则内存速度会降低。

例如,假设有一台四内存通道单 CPU 计算机,

并且每个内存都有四个开放插槽,总共有 16 个开放的 DIMM 插槽,如下面的示意图所示。

计算机原理图

通常情况下,

如果任何存储体中使用的插槽多于两个,则内存速度会降低;

但在某些系统上,如果每个存储体上的插槽超过一个,速度就会降低。


因此,举例来说,如果要在上述系统中安装 16GB RAM,您可以安装4个4GB 或8个2GB 的 DIMM,并确保使用所有存储体。

安装4个 4GB可以留出最多的空间用于安装更多 RAM,并能充分利用多个内存通道。

在安装内存时,请确保所有内存通道上都有内存;

这是因为,如果有内存通道处于未使用状态,就会导致速度明显降低。



下面的示意图对此进行了汇总。

推荐的内存布局


影响软件整体速度的其他因素


性能、CPU 类型、CPU 基频、缓存、CPU 数量、每个 CPU 的内核数和硬件成本之间存在着复杂的关系。

COMSOL 代码库由多种不同的算法组成,这些算法具有不同的扩展属性。

因此,某些硬件因素对性能的影响大于其他因素,并且这些因素的相对优点与问题的类型和大小都相关。

所以,我们很难提出具体的硬件建议。下面给出一些一般建议。


CPU 类型

不同的 CPU 架构提供不同的特性集,其价格也存在显著差异。

高端 CPU(如英特尔® 至强® Gold 和 Platinum 或者 AMD® EPYC®)处理器采用 CPU 到 CPU 互连技术,使每台计算机支持多个 CPU,并允许 CPU 之间相互通信,以访问大量内存。

这些处理器具有最大内存带宽,能够在内存与处理器之间来回快速传输大量数据。

这是它们在运行 COMSOL 时的主要优势。

高端 CPU 应在双 CPU、甚至四 CPU 或八 CPU 配置中使用。

如果您需要寻址大量内存,或者计划连续并行运行多个仿真,则此类 CPU 是最理想的选择。

在求解单个模型时,性能将随着 CPU 数量的增加而提高,但相对性能的提高取决于模型的大小。


在多 CPU 系统上求解较大模型时,速度提升更快。

如果您计划购买四 CPU 或八 CPU 系统,请联系 COMSOL 技术支持。


中端 CPU(如英特尔® 至强® W 或 AMD® Ryzen™ Threadripper™)处理器没有 CPU 到 CPU 互连结构,

因此对于单 CPU 计算机来说是不错的选择。

它们具有与高端系统相当的时钟速度和内核数,是一种具有吸引力的全方位选择。


入门级 CPU(如英特尔® 至强® E 处理器)具有两个内存通道,

没有 CPU 到 CPU 互连结构,因此无法像上述 CPU 那样处理大量的内存。

此类 CPU 的内存带宽最低,但可以具有较高的时钟速度。

它们不是并行运行多个仿真的理想选择,但通常可以用来非常快速地求解单个模型。


上面列出的 CPU 是面向专业工程领域销售的当前一代处理器。

还有一些处理器主要面向消费者市场,它们具有多种相同的功能,且性能相当,往往成本较低。


时钟频率

较高的时钟频率通常会从软件的各个方面提升性能速度。

如果两台计算机的所有其他硬件规格都相同,则它们之间的相对性能主要取决于时钟频率。


高速缓存

高速缓存直接内置在处理器中,缓存越大越好。

在所有其他因素都相同的情况下,缓存较大的机器将表现出更好的性能。


内核数

处理器中的内核越多,一次可以执行的并行线程就越多,这就是多线程处理。

COMSOL 将自动利用所有可用的内核,但这需要计算成本。

并行使用过多内核尽管通常只用于求解相对较小的模型,但这样做可能会导致速度降低。

有些模型甚至被它们的单线程性能控制。

一般来说,六核或八核系统是比较好的全方位选择,但内核越多可能越好,这在并行运行多个模型或使用 PARDISO 直接求解器时尤其如此。




一般建议


参数化扫描

如果您打算在各个不同的模型中求解许多几何变体、不同的网格、不同的材料集或其他参数,就需要使用“参数化扫描”功能。

举例来说,如果您要扫描 10 种变化的零件尺寸,并扫描 10 种不同的材料和 10 个不同的模型参数,则需要求解 1000 次相似的模型,在单台计算机上将每次扫描作为单个作业运行时,求解时间(最坏的情况下)正好是原来的 1000 倍。

无论是在使用任何许可证类型的单台计算机上,还是在使用网络浮动许可证的集群计算机上,通过并行运行作业都可以减少扫描大量参数的求解时间。


为了在单台计算机上并行求解,您可以使用批处理扫描功能。

仅当内存支持同时求解所有模型时,我们才建议您在单台计算机上并行运行参数化扫描。

例如,如果求解一个模型实例需要 3GB 内存,那么就可以在 16GB 内存的计算机上同时运行四个作业。

对于内存要求较少的模型,在同时运行与内核数一样多的作业时,性能有明显的提升。

使用“批处理扫描”时的相对加速比取决于模型和硬件。


为了在集群上并行求解“参数化扫描”,您可以使用集群扫描功能。

一次可以运行的并行作业数没有限制(最多可以达到集群上可用节点的数量)。

您可以在自己的集群上运行,也可以使用第三方集群运行。

COMSOL 维护着一个技术合作伙伴列表,这些合作伙伴为集群计算提供随需应变的计算资源。

每个集群节点只需满足针对运行单个模型所设定的要求即可。



有关集群硬件的进一步指导信息,请参见知识库 1116

另请参见知识库 1250:从命令行运行参数化扫描、批处理扫描和集群扫描

您应该始终考虑是否可以使用优化模块来避免大规模扫描。



操作系统

在 COMSOL Multiphysics 5.4 之前的版本中,

Linux 和 macOS 操作系统在某些多核处理器上的性能表现可能超过 Windows。


硬盘驱动器

与硬盘驱动器相比,固态硬盘可以提供更好的整体系统性能。

驱动器的速度总是越快越好,

但如果系统在您求解的模型上将驱动器用于交换空间(虚拟内存),

则最好升级内存,而不是投资到提升驱动器的速度上。


显卡

我们推荐使用基于最新 AMD 或 NVIDIA 的专用显卡。

您可以在系统要求页面找到通过测试的显卡列表。

显卡的内存越大,您能看到的模型细节越复杂。

请注意,不能仅仅因为求解模型需要大量的 RAM 内存就断定需要较大视频卡才能显示模型,反之亦然。


GPU

本软件目前不支持图形处理单元上的通用计算。


另请参见

选择计算集群硬件,解决方法 1116
COMSOL 和多线程处理,解决方法 1096


解决方案