Closed coderodyhpc closed 1 year ago
At this point, we only support gfortran and ifort. If you want to provide us with the necessary code/build changes so that the code works with nvfortran, we will certainly welcome your contribution.
NCEPLIBS will not build with compilers other than GNU/Intel without some work. Many of the libraries rely on specific compiler flags such as -fdefault-real-8
(GNU), -r8
(Intel) to be compiled correctly. So, each library's build would have to be updated for a new compiler and the correct flags added. We do not use the Nvidia compilers.
Hi @kgerheiser & @climbfuji, It sounds like a very time-consuming task. I have neither the time (nor maybe the skills) to go on this trip. Maybe I'll take a look at it next month (time permitting). Therefore I will close the thread for the time being and will reopen if I make any progress (alternatively push a PR). Thanks.
@coderodyhpc If I am not mistaken, CMake recognizes NVIDIA compilers as "PGI". If the NCEPlibs team could port a couple of libraries to PGI, it would open the pathway to building with the NVIDIA toolkit. After that:
FC=pgfortran CC=pgcc CXX=pgc++ cmake -B build
I can look into it. Looks like the Nvidia (PGI) compilers are free to download now.
They are free to download but (as usual) they ask you to read the SLA carefully. A word of caution is that the Nvidia people don't like when others keep referring to them as the PGI compilers, although they sometimes (have to) refer to them as PGI legacy. Just my two cents.
The code should build with any standard fortran compiler, and we need to make the cmake build smart enough to do that.
I've started working on this starting with NCEPLIBS-sp (https://github.com/NOAA-EMC/NCEPLIBS-sp/pull/56). I'll work my way through the libraries.
Hello, I'm getting a long list of errors that begin with:
This cascades down and the compilation fails. I'm also getting Compiler not officially supported: NVHP, which I have already bumped into with UPP. It seems that the Fortran compiler is more sensitive than GCC (or whichever compiler the NCEPLIBS Team is using). Is this a dead end, is there any way to push through the compilation or any of the branches trying to find a workaround? Thanks.