Memory Cost In MultiLevelCoupling

Dear all,

I read about the parallel part of PALABOS, it says blocks will be automotive seperated into cores when parallel. However, when I do a parallel with MultiLevelCoupling, I find during the generating of MultiLevelCoupling, the RAM costs doubled if I use 2 cores. So I come to quire whether MultiLevelCoupling can also divided to each core or just duplicated them to each cores?

Thanks very much,
C. Lyu


what simulation are you running?

Hi, Orestis

My simulation is flow pass a huge blade. I use many refinement region around it to reduce the memory cost. However, the memory seems not so obviously parallel when mpirun.

For example, if I use D3Q19 for 10010001000 MultiblockLattice, the totally memory will be 1910^88/(10^9)=8G. For 10 cores, it will be each 1G.
But if I use a MultiCouplinglattice to get the same nodes, the totally memory cost for a single core is nearly 28G. The most important is if I use 4 cores, each one will need 24G. Further, 20 cores need 7G each.

So I am so confused that whether MultiCouplingLattice have the same parallel ability as Multiblock?

Very thanks for your reply, this is really confused me a lot.


are you using an stl file? this might be your problem here. the stl file is duplicated.

maybe that’s the reason.

Hi, Orestis

I was test this part last months, and this is my consider:

My nBlock = 6, block number is 143,304 and total nodes print by PALABOS is 30,000,000.
The real nodes on a block edge should be 6+1 and additional 2 for parallel ghost nodes. So the memory cost should be 1433049^319*8/1024^3 =16 GB. However when 20 cores are use, it need 45GB. I have already reduce the stl size to just 10MB.