Description of problem: (re)building mpi packages can fail with openmpi, as openmpi does not run by default if oversubscribed. This can be avoided by exporting the env variable export OMPI_MCA_rmaps_base_oversubscribe=yes Typically that is required in the check section, but sometimes it works fine on koji, but fails on copr, as copr has fewer cores available, the recent sundials update is an example. Rather then ensuring that every package exports this in the %check section, openmpi could set this flag in %_openmpi_load Version-Release number of selected component (if applicable): current rawhide How reproducible: if check oversubscribes, always Additional info: Normally this is good to not oversubscribe, but we only want to check the package works, and oversubscription is generally accepted for testing. devel thread that inspired this: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/M4EZN5P6SYNLSL5NQZM6EG32TQVEUCJN/
I like it. Let's give it a try. Thanks.
I think it's worth more follow up on this. I got another recommendation for setting `OMPI_MCA_hwloc_base_binding_policy=none` [1]. In that case I've made sure to not oversubscribe, but still the OpenMPI runner is significantly slower than the MPICH one. I am also asking around for some feedback on how to write the spec file to be legible, easy to maintain and use the native macros [2]. [1]: https://github.com/cp2k/cp2k/pull/3268#discussion_r1521234892 [2]: https://pagure.io/packaging-committee/issue/1320#comment-899983