Zaak, I use ‘execute_process (${MPIEXEC} --version)’ and match the output to a string (Open MPI, ALPS, MPICH). This isn’t the most elegant solution, but it seems fairly robust.
-kt From: CMake [mailto:cmake-boun...@cmake.org] On Behalf Of Zaak Beekman Sent: Thursday, June 16, 2016 9:14 AM To: cmake@cmake.org Subject: [CMake] oversubscribing OpenMPI in tests Does anyone know a good way to determine if `find_package(MPI REQUIRED)` is returning OpenMPI? I need to know, because OpenMPI does not handle oversubscribed (more ranks than cores) tests well without explicitly telling OpenMPI that you are oversubscribing. This can be done by creating a hosts file, and passing some flags to `mpirun` to tell it to use the hosts file, or can be accomplished by passing the `--oversubscribe` flag. The problem is that MPICH has different flags/host-file syntax. (I am oversubscribing some of the project's tests because this will often find correctness problems due to race conditions or other parallel programming errors that are not always exposed otherwise.)
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake