LSDYNA 内存计算方法

在 LSDYNA 中,内存按 Word 组织,32 为操作系统上,单精度 1Word=4bytes,双精度 1Word=8bytes,假如你要设置 1G(1000M) 的内存,如果是单精度,则计算公式如下:


我们根据这个可以计算出 Y,因此,这个设置如下:

keyword_ID NCPU=4 MEMORY=262144000

如果直接在命令行里面设置是这样的:

LSDYNA.EXE *.K NCPU=4 MEMORY=262144000
这就是在一台拥有四核 CPU 的电脑上,给提交计算的文件分配了 1G 的内存。

LSDYNA 中内存 memory 的设置一 words 为单位,64bit 系统,1 个 words=8Byte,因此申请时需要注意分配的大小。

另外,LSDYNA 在申请内存时,对于 SMP 和 MPP 两种方式有着不同的意义。对于共享内存的 SMP,命令行中的 memroy=XXX 表示多个 cpu 共用的内存总数为 XXX,而在分布式计算的 MPP 中,memory 有两个值,MEMORY_1,在命令行中以 memory=XXX 设定,该值为主节点(master node,一般为第一个节点)使用的内存数,用于划分模型时使用(decompose the model);MEMORY_2,在命令行中以 memory2=XXX 表示,该值为各个核(包括主节点的核)使用的内存数,用于求解划分后的模型。Memory2 依赖于节点数量,节点数越多,划分后的模型越小,这个值就可以越小。

发表评论