[Wien] RKmax in Wien2k NCM

Gavin Abo gabo13279 at gmail.com
Tue Jul 9 05:47:24 CEST 2024


Not sure that it will help or not, but I thought it might be worth 
mentioning.

For the WIENncm code, I tried locating the WIEN2k version that it was 
developed from.  In December 2023, I had traced it back to being about 
WIEN2k 6.4 as seen in the post at [1].

On the WIEN2k updates page [2] under VERSION_12.1: 22.7.2012, there is:

SRC_lapw1: important fix for blocksize when using *recent 
*(12.x)*versions of mkl* (dscgst.F, zhcgst.F) leading to core dumps

We were experiencing lapw1 segmentation faulting particularly bad with 
the newer Intel compilers/mkl until that was fixed.  You should find the 
fix described in the post at [3].  Though, it would be hard to know if 
this would be the only change possibly needed as you can see other 
changes were made to lapw1 between WIEN2k 6.4 and 23.2.

[1] 
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg22933.html
[2] http://www.wien2k.at/reg_user/updates/
[3] 
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg07567.html

Kind Regards,

Gavin
WIEN2k user


On 7/8/2024 9:15 AM, Fecher, Gerhard wrote:
> Hallo Peter or anyone else who has an idea,
> I have a "problem" in the NCM Version, I need to reduce RKmax down to 4.0, otherwise I receive segmentation faults from lapw1.
> (probably during allocation or reallocation in modules.F,  INIT_MATRICES)
> I needed to set NMATMAX = 128 000 that RKmax=4.0 works, but 5.0 crashes already for a 14 atom system.
> (Note in the regular (not ncm) 23.2 version the systems run with NMATMAX = 29 000 at RKmax=7.0)
>
> How can I determine easily how large NMATMAX should be for a given matrix size and memory?
> The manual tells: "(..., should be chosen according to the memory of your hardware, see chapter 11.2.3!)
> As mentioned for the regular version in 11.2.3 NMATMAX is reduced by sqrt(2), I am not shure whether or not this holds in ncm that uses only lapw1c.
> As seen below a matrix size of 840 works at NKMAX=128000 in the NCM version, whreas 1100 is already too large.
> In the regular version NKMAX=29000 works for a matric size of aboz 2400 (most probably also for much larger size).
>
> Or is there any other possibility to use larger RKmax, maybe by changing something in the code.
>
> PS.: Just for info, I have between 3 and 4GB RAM per core available on each node.
>
> PSS: Examples: for pure Fe, rkmax=8.0 works (2 atoms in the conventional cell),
>       for a system with 14 atoms (Sr2FeO4) I need to lower RKmax to 4.0 because 4.5 crashes already
>       whereas the regular lapw1 runs with at least 3 times larger matrix size at a quarter of NKMAX.
>
> Some numbers for the 14 atom case
> * Regular Version: NKMAX =  29000
> RKmax=7.0 MATRIX SIZE  1606 LOs:  96  RKM= 6.99 (has inversion, not complex, lapw1)
> RKmax=8.0 MATRIX SIZE  2388 LOs:  96  RKM= 8.00
> * NCM Version: NKMAX = 128000
> RKmax=4.0: MATRIX SIZE  840 LOs: 196  RKM= 3.98 has NO problem (always complex, lapw1c of NCM)
> RKmax=4.5: MATRIX SIZE 1100 LOs: 196  RKM= 4.44 crashes for sequential and k-parallel
> RKmax=5.0: MATRIX SIZE 1408 LOs: 196  RKM= 4.99 crashes
>
> for comparison pure Fe (NCM Version mit NKMAX = 128000) runs with RKmax up to 8.0 without problems
> RKmax=5.0: MATRIX SIZE  104 in the ncm Version (conventional cell, 2 atoms)
> RKmax=6.0: MATRIX SIZE  118 LOs:  52  RKM= 5.42
> RKmax=7.0: MATRIX SIZE  214
> RKmax=8.0: MATRIX SIZE  238 LOs:  52  RKM= 7.66
>
>
> Ciao
> Gerhard
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://zeus.theochem.tuwien.ac.at/pipermail/wien/attachments/20240708/d5138727/attachment.htm>


More information about the Wien mailing list