Cherry-picked #5775 to resolve the single-precision version error. #6418
Cherry-picked #5775 to resolve the single-precision version error. #6418dyzheng merged 3 commits intodeepmodeling:LTSfrom zgn-26714:LTS
Conversation
* use psi_initializer * fix compile * same results of random init * make atomic initialized results right * finish refactor * fix compile * fix compile * fix UTs * update results * update results * update GPU results * update * refactor pw * change 108_PW_RE_PINT_RKS results * update results * remove openmp for random generate * update * remove psi_initializer in Doc * remove omp2 * fix compile
|
It seems to me that the PR does not belong to LTS version |
…est/test_hsolver_sdft.cpp file cherry-pick #5775 has resolved the issue of single-precision version errors Tests were conducted locally on the previous and subsequent versions of cherry-pick, and it was found that the failed samples of both were almost the same. It was concluded that the problem was not caused by cherry-pick
|
Thanks for the PR. |
I have checked the tests with this PR carefully, I think this refactoring would not include high risk into LTS branch, the main change of this refactoring is dropping the old wavefunction initialization code. In my opinion, it is okay to accept this PR. |
|
OK @dyzheng if you consider this is OK, you can go ahead and merge the PR |
Adding the option "precision = single" to the INPUT file caused the simulation to fail.

The single-precision simulation crash bug does not exist on the develop branch.
A specific commit was identified where the single-precision bug exists in versions prior to this commit but is absent in versions after it. Therefore, this commit was cherry-picked onto the LTS branch.
Resolved two conflicts arising from two cherry-picks.
* source/module_hsolver/test/test_hsolver_sdft.cpp
* source/module_psi/psi_initializer_nao.cpp
After the cherry-pick, the program runs normally with precision = single.


The results of the same test case in single vs. double precision are compared below.( Double-precision is presented first)