本文分享 LS DYNA 求解器在 SMP 和 MPP 两种计算模式下的计算效率对比,LS DYNA 求解器有三种计算模式,分别为:
Hybrid 是把 SMP 和 MPP 两种计算模式混合在一起,此次仅对比 SMP 和 MPP 两种计算模式。
SMP 和 MPP 两种计算模式,分别指的是什么,两种计算模式有什么不同呢?
SMP,指的是 Shared Memory Parallelism,简单来说就是 Shared-everything:所有处理器(CPU) 共享内存,而每一个 CPU 内可能含有不同的 Core 数。因此当接收到计算工作时,系统会依各个 CPU 的负载,平均分配工作量给每一个 CPU。因此,若是计算工作太大,内存容易不足,造成系统可能无法执行,或是执行速度缓慢。
而 MPP(Massively Parallel Processing) 的不同,在于它 Shared-Nothing:每个 CPU 一样有自己的 Core 数,有自己的内存;而在接收计算工作以前,计算工作及资料已经先被切割好,并可以指定要将哪一个部分的计算交由指定的 CPU 去执行,最后再藉由网路设定,将每一个部分的资料串连在一起。所以使用 MPP,就像是庞大、繁杂的工作,事先已切割给各负责的部门,最终再统整结果呈交给老板。
具体到 LS DYNA 求解器,SMP 计算模式下有如下的特点 :
MPP 计算模式下有如下的特点 :
采用 1.3GHz IBM p690 Refined Neon 计算机,通过数值模拟计算对比不同 CPU 核心数下,模型 535K 个单元,SMP 计算模式核 MPP 计算模式的计算效率,结果如图所示:
由图可见,当 LS DYNA 求解器调用的计算 CPU 内核数仅为 1 时,SMP 计算模式的计算效率远远高于 MPP 计算模式,而当计算的过程调用的 CPU 核心数高于 4 核时,MPP 的计算速度更快,且对着计算内核数的提高,MPP 的计算优势更加明显。另外,不管是采用 SMP 计算模式还是 MPP 计算模式,随着使用的计算 CPU 核心数的提高,计算效率都会提高,但是需要主要的是,SMP 计算过程中,调用的 CPU 核心数高于 16 核时,计算效率的提高不会太明显。
[版权声明] :本文文字、代码及图片版权归原作者所有,任何媒体、网站或个人未经本网协议授权不得采集、整理、转载或以其他方式复制发表。已经本站协议授权的媒体、网站,在使用时必须注明“稿件来源:学研谷”。