cp2k / dbcsr

DBCSR: Distributed Block Compressed Sparse Row matrix library
https://cp2k.github.io/dbcsr/
GNU General Public License v2.0
135 stars 47 forks source link

Workarounds for nvfortran compiler #635

Closed oschuett closed 1 year ago

codecov[bot] commented 1 year ago

Codecov Report

Base: 66.1% // Head: 66.1% // No change to project coverage :thumbsup:

Coverage data is based on head (6c0758e) compared to base (bfb28f6). Patch coverage: 90.9% of modified lines in pull request are covered.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## develop #635 +/- ## ======================================= Coverage 66.1% 66.1% ======================================= Files 103 103 Lines 28593 28593 ======================================= Hits 18919 18919 Misses 9674 9674 ``` | Flag | Coverage Δ | | |---|---|---| | unittests | `66.1% <90.9%> (ø)` | | | with-blas | `66.1% <90.9%> (ø)` | | | with-libxsmm | `66.2% <90.9%> (ø)` | | | with-mpi | `66.6% <90.9%> (ø)` | | | with-openmp | `65.4% <90.9%> (ø)` | | | without-mpi | `61.6% <90.9%> (ø)` | | | without-openmp | `65.3% <90.9%> (ø)` | | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cp2k#carryforward-flags-in-the-pull-request-comment) to find out more. | [Impacted Files](https://codecov.io/gh/cp2k/dbcsr/pull/635?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cp2k) | Coverage Δ | | |---|---|---| | [src/dbcsr\_api.F](https://codecov.io/gh/cp2k/dbcsr/pull/635/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cp2k#diff-c3JjL2RiY3NyX2FwaS5G) | `38.2% <0.0%> (ø)` | | | [src/ops/dbcsr\_operations.F](https://codecov.io/gh/cp2k/dbcsr/pull/635/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cp2k#diff-c3JjL29wcy9kYmNzcl9vcGVyYXRpb25zLkY=) | `42.2% <ø> (ø)` | | | [src/tensors/dbcsr\_tensor\_types.F](https://codecov.io/gh/cp2k/dbcsr/pull/635/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cp2k#diff-c3JjL3RlbnNvcnMvZGJjc3JfdGVuc29yX3R5cGVzLkY=) | `76.8% <100.0%> (ø)` | | Help us with your feedback. Take ten seconds to tell us [how you rate us](https://about.codecov.io/nps?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cp2k). Have a feature suggestion? [Share it here.](https://app.codecov.io/gh/feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cp2k)

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

hfp commented 1 year ago

Thank you for the fix! Precommit is currently broken and unrelated to your PR.

alazzaro commented 1 year ago

Out of curiosity, are we able to run CP2K with the nvidia compiler? (former PGI compiler) In the past there were several issues...

hfp commented 1 year ago

I have not checked. I can only confirm: the PGI/Nvidia Compiler is part of LIBXSMM's CI and passes our standard set of "quick-tests".

oschuett commented 1 year ago

Yes, I've manged to build CP2K with nvfortan:

  cd cp2k/exts/dbcsr
  git fetch origin
  git checkout origin/develop

  cd ../../tools/docker/
  docker build -f ./Dockerfile.test_nvhpc ../../

Unfortunately, many of the regtests are failing. The bigger issues, though, is that the build itself is very slow. So I think we first have to speed it up before we can start debugging.

alazzaro commented 1 year ago

In the past (i.e. 3 years ago) even -O0 was making tests crashing... In particular, there was a serious issue with INTENT policy in the compiler. Good that you are resuming it, but maybe we should get more help by nvidia...

Talking about compilers, I would like to have NAG because it has the best error checking (see https://www.fortranplus.co.uk/app/download/32186747/fortran_compiler_diagnostic_capability_revision_5.pdf )

oschuett commented 1 year ago

but maybe we should get more help by nvidia...

I was actually contacted by an engineer from the NVIDIA compiler team. They are working on it :-)

I would like to have NAG...

Yeah, me too. Unfortunately, their website does not even list a price, which usually means it's super expensive. I guess we could try to get a sponsorship, but the easier route is probably to run the tests at some HPC center that already owns a license.