搜档网
当前位置:搜档网 › 关于Ls-dyna单机多核计算的CPU及内存设置方法

关于Ls-dyna单机多核计算的CPU及内存设置方法

关于Ls-dyna单机多核计算的CPU及内存设置方法
关于Ls-dyna单机多核计算的CPU及内存设置方法

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

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

KEYWORD_ID NCPU=4 memory=262144000

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

lsdyna.exe i=*.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依赖于节点数量,节点数越多,划分后的模型越小,这个值就可以越小。

内存分配的经验:

memory1通常使用内存的30%到70%。

memory2通常使用memory1分配后剩余内存的20%到40%。‘注意:memory可以在命令行设置,也可以在文件中设置,

以*KEYWORD xxx方式设置。

memory2只能在命令行设置。

memory可以以Mega words单位设置,memory=200M,

即200000000 words

相关主题