I filed https://github.com/open-mpi/ompi/issues/9795 to track the issue; let's followup there.
I tried to tag everyone on this thread; feel free to subscribe to the issue if I didn't guess your github ID properly. -- Jeff Squyres jsquy...@cisco.com ________________________________________ From: users <users-boun...@lists.open-mpi.org> on behalf of Jeff Squyres (jsquyres) via users <users@lists.open-mpi.org> Sent: Thursday, December 30, 2021 4:39 PM To: Matt Thompson Cc: Jeff Squyres (jsquyres); Open MPI Users Subject: Re: [OMPI users] NAG Fortran 2018 bindings with Open MPI 4.1.2 Sweet; thanks! The top-level Fortran test is here: https://github.com/open-mpi/ompi/blob/master/config/ompi_setup_mpi_fortran.m4 That file invokes a lot of subtests, all of which are named config/ompi_fortran_*.m4. People who aren't familiar with the GNU Autotools may make the mistake of trying to read the configure script itself. But that's generated code, and pretty impossible to read. Perhaps this is what the NAG people did...? While m4 isn't a picnic to read, it should be quite a bit more readable than the configure script itself. Finally, the generated config.log file itself should have at least a decent amount of information in terms of stdout / stderr from running each test. If there's a test that should be passing that isn't, config.log is a good place to start. It will show some level of detail about what test failed and why, and with some creative grepping, you should be able to find the corresponding .m4 file for the test source code. -- Jeff Squyres jsquy...@cisco.com ________________________________________ From: Matt Thompson <fort...@gmail.com> Sent: Thursday, December 30, 2021 4:01 PM To: Jeff Squyres (jsquyres) Cc: Wadud Miah; Open MPI Users Subject: Re: [OMPI users] NAG Fortran 2018 bindings with Open MPI 4.1.2 Jeff, I'll take a look when I'm back at work next week. I work with someone on the Fortran Standards Committee, so if I can find the code, we can probably figure out how to fix it. That said, I know juuuuust enough Autotools to cause massive damage and fix a minor bugs. Can you give me a pointer as to where to look for the Fortran tests the configure scripts runs? conftest.f90 is the "generic" name I assume Autotools uses for tests, so I'm guessing there is an... m4 script somewhere generating it? In config/ maybe? Matt On Thu, Dec 30, 2021 at 10:27 AM Jeff Squyres (jsquyres) <jsquy...@cisco.com<mailto:jsquy...@cisco.com>> wrote: Snarky comments from the NAG tech support people aside, if they could be a little more specific about what non-conformant Fortran code they're referring to, we'd be happy to work with them to get it fixed. I'm one of the few people in the Open MPI dev community who has a clue about Fortran, and I'm *very far* from being a Fortran expert. Modern Fortran is a legitimately complicated language. So it doesn't surprise me that we might have some code in our configure tests that isn't quite right. Let's also keep in mind that the state of F2008 support varies widely across compilers and versions. The current Open MPI configure tests straddle the line of trying to find *enough* F2008 support in a given compiler to be sufficient for the mpi_f08 module without being so overly proscriptive as to disqualify compilers that aren't fully F2008-compliant. Frankly, the state of F2008 support across the various Fortran compilers was a mess when we wrote those configure tests; we had to cobble together a variety of complicated tests to figure out if any given compiler supported enough F2008 support for some / all of the mpi_f08 module. That's why the configure tests are... complicated. -- Jeff Squyres jsquy...@cisco.com<mailto:jsquy...@cisco.com> ________________________________________ From: users <users-boun...@lists.open-mpi.org<mailto:users-boun...@lists.open-mpi.org>> on behalf of Matt Thompson via users <users@lists.open-mpi.org<mailto:users@lists.open-mpi.org>> Sent: Thursday, December 23, 2021 11:41 AM To: Wadud Miah Cc: Matt Thompson; Open MPI Users Subject: Re: [OMPI users] NAG Fortran 2018 bindings with Open MPI 4.1.2 I heard back from NAG: Regarding OpenMPI, we have attempted the build ourselves but cannot make sense of the configure script. Only the OpenMPI maintainers can do something about that and it looks like they assume that all compilers will just swallow non-conforming Fortran code. The error downgrading options for NAG compiler remain "-dusty", "-mismatch" and "-mismatch_all" and none of them seem to help with the mpi_f08 module of OpenMPI. If there is a bug in the NAG Fortran Compiler that is responsible for this, we would love to hear about it, but at the moment we are not aware of such. So it might mean the configure script itself might need to be altered to use F2008 conforming code? On Thu, Dec 23, 2021 at 8:31 AM Wadud Miah <wmiah...@gmail.com<mailto:wmiah...@gmail.com><mailto:wmiah...@gmail.com<mailto:wmiah...@gmail.com>>> wrote: You can contact NAG support at supp...@nag.co.uk<mailto:supp...@nag.co.uk><mailto:supp...@nag.co.uk<mailto:supp...@nag.co.uk>> but they will look into this in the new year. Regards, On Thu, 23 Dec 2021, 13:18 Matt Thompson via users, <users@lists.open-mpi.org<mailto:users@lists.open-mpi.org><mailto:users@lists.open-mpi.org<mailto:users@lists.open-mpi.org>>> wrote: Oh. Yes, I am on macOS. The Linux cluster I work on doesn't have NAG 7.1 on it...mainly because I haven't asked for it. Until NAG fix the bug we are seeing, I figured why bother the admins. Still, it does *seem* like it should work. I might ask NAG support about it. On Wed, Dec 22, 2021 at 6:28 PM Tom Kacvinsky <tkacv...@gmail.com<mailto:tkacv...@gmail.com><mailto:tkacv...@gmail.com<mailto:tkacv...@gmail.com>>> wrote: On Wed, Dec 22, 2021 at 5:45 PM Tom Kacvinsky <tkacv...@gmail.com<mailto:tkacv...@gmail.com><mailto:tkacv...@gmail.com<mailto:tkacv...@gmail.com>>> wrote: > > On Wed, Dec 22, 2021 at 4:11 PM Matt Thompson > <fort...@gmail.com<mailto:fort...@gmail.com><mailto:fort...@gmail.com<mailto:fort...@gmail.com>>> > wrote: > > > > All, > > > > When I build Open MPI with NAG, I have to pass in: > > > > FCFLAGS"=-mismatch_all -fpp" > > > > this flag tells nagfor to downgrade some errors with interfaces to warnings: > > > > -mismatch_all > > Further downgrade consistency checking of procedure > > argument lists so that calls to routines in the same file which are > > incorrect will produce warnings instead of error messages. > > This option disables -C=calls. > > > > The fpp flag is how you tell NAG to do preprocessing (it doesn't > > automatically do it with .F90 files). > > > > I also have to pass in a lot of other flags as seen here: > > > > https://github.com/mathomp4/parcelmodulefiles/blob/main/Compiler/nag-7.1_7101/openmpi/4.1.2.lua > > > > Now I hadn't yet tried NAG 7.1 with Open MPI because NAG 7.1 has a bug with > > a library I depend on, but it does promise better F2008 support. To see > > what happens, I tried myself and added --enable-mpi-fortran=all, but: > > > > checking if building Fortran 'use mpi_f08' bindings... no > > configure: error: Cannot build requested Fortran bindings, aborting > > > > Unfortunately, the NAG Fortran guru I work with is off until the new year. > > When he comes back, I might ask him about this. He might know something we > > can do to make NAG happy with mpif08. > > > > The very curious thing about this is that NAG 7.1 is that mpif08 > configured properly with the macOS (Intel architecture) flavor of > it. But as this thread seems to indicate, it barfs on Linux. Just > an extra data point. > I'd like to recall that statement, I was not looking at the config.log carefully enough. I see this still, even on macOS checking if building Fortran 'use mpi_f08' bindings... no -- Matt Thompson “The fact is, this is about us identifying what we do best and finding more ways of doing less of it better” -- Director of Better Anna Rampton -- Matt Thompson “The fact is, this is about us identifying what we do best and finding more ways of doing less of it better” -- Director of Better Anna Rampton -- Matt Thompson “The fact is, this is about us identifying what we do best and finding more ways of doing less of it better” -- Director of Better Anna Rampton