Adams高性能zz

随着计算机硬件的更新,尤其是内存和内核数量的增加,计算性能不断提高。伴随着硬件的更新,仿真分析类软件也相继推出了高性能计算方法,增加参与到仿真分析中的计算机内存和内核的数量,从而提高仿真分析的效率。Adams软件作为多体动力学分析领域的旗舰产品当然也不例外,可以从计算机内存和内核两个方面着手来实现高性能计算。

1 内存设置

Adams的内存预定义模式有stnd、large、ex_large和huge四种。从stnd到huge,允许调用的内存逐步提高。各种内存调用模式可调用的内存数量见下图1。

图1 不同内存调用模式可调用的内存数量

软件缺省情况下内存设置为ex_large模式,可调用内存大约为20GB,可以满足大多数Adams模型的分析需求。如果模型过大可以将内存调用模式改为huge模式。huge模式可以调用的内存数量将近60GB。可以通过“开始菜单>所有软件>MSC.Software>Adams x64 2015(对应软件版本号)>Adams -
Settings & License”打开设置窗口来改变内存调用模式,然后在AView/Preference和ASolver/Preference里面分别设置,如下图2所示。

图2 修改内存调用模式到huge

如果遇到极特殊情况,huge模式也不能满足分析需求,可以将内存调用模式改为Custom,获取更大的内存调用权限。memSize的设置选项对应Adams安装目录下win32或win64/uconfg_xx文件夹内的uconfg.dll。常规情况下uconfg_user中并没有uconfg.dll文件,因此只将memSize设置成Custom是无效的,还需要手动生成自定义调用内存的uconfg.dll文件。这需要借助Adams命令以及外部的Fortran/C编译器,编译器与Adams版本有关,比如Adams2011需要Intel Fortran 10.x/11.x(Visual Studio 2005/2008)。

将内存调用模式设置成Custom后按如下流程完成设置:

1) 按照“开始菜单>所有软件>MSC.Software>Adams x64 2015(对应软件版本号)>Adams
-Command Prompt”打开DOS窗口,并输入Adams版本号,以Adams2015为例,输入的命令为adams2015_x64。输入后的窗口显示如下图3所示。

图3 Adams命令窗口

2)在Enter your selection code or EXIT后面输入cmm。

3)逐项设置MDSIZ、OSSIZ、CDSIZ等参数,默认值为huge模式的参数,Custom输入参数定义比huge参数大即可。此过程中自动生成 有关设置的*.f文件,并自动编译生成uconfg.dll文件。文件存储在Adams_install_dir/win32 or win64/uconfg_user目录下。

注意:内存设置不需要额外的许可,但要设置成Custom模式必须在电脑上提前安装好对应的编译器软件。

2 多核设置

Adams多核计算设置有两种途径。第一种设置途径是在Adams/View界面下通过“settings>solver>Executable”菜单打开设置窗口,并勾选More选项,在Thread
Count位置输入参与计算的线程数,具体如图4所示。

图4 Adams/View界面设置多线程窗口

第二种设置途径是通过“开始菜单>所有软件>MSC.Software>Adams
x64 2015(对应软件版本号)>Adams - Settings & License”打开设置窗口,然后在ASolver/Preference的numThreads位置设置参与计算的线程数量,具体如图5所示。

图5 Adams Registry Editor窗口设置多线程

Adams2014(包括2014)之前的版本,最大支持的线程数量为8个,Adams2015版后将最大支持数量提高到了128个,如图6所示。

图6 2014版和2015版支持的最大线程数量

Adams2015版最大支持128个线程,已经能够匹配绝大多数计算机的硬件水平,对提升模型的分析效率有明显帮助。

注意:多核多线程设置需要额外的许可,需要购买SMP模块,否则只能计算时只能使用1个线程。

posted @ 2020-04-09 13:45  马语者  阅读(589)  评论(0编辑  收藏  举报