Memory usage at gene_epsi_3D
The subroutine gene_epsi_3D was integrated into the main code as part of release 2.0. It came with two benefits, no more need for pre-processing, besides the performance and scalability with 2decomp. However, it demands large use of memory, mainly for the arrays xepsi, yepsi and zepsi.
In order to improve memory usage, I bring a few suggestions:
- Just allocate them just if
iibm .eq. 2, and preferable, do not have more than one allocated at the same time; - Since they are expected to be set just as zeros or ones, they could be changed to Boolean type (a huge reduction if compared to double or single float point).
Let me know what do you think about it, I could work on it.
It is also possible to produce the geometry externally with xcompact3d-toolbox.genepsi , but some bugs have to be solved (#3)
I think disabling for non-IBM runs would certainly be a good starting point, the same could also be said for rho in non-LMN/free-surface (and I'm sure other arrays too)
I would start with option 1 :-)