[MacPorts] #62783: openmpi: validate that buildbot binaries are hardware-independent
MacPorts
noreply at macports.org
Fri Apr 30 16:14:19 UTC 2021
#62783: openmpi: validate that buildbot binaries are hardware-independent
----------------------+----------------------
Reporter: mascguy | Owner: mascguy
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: openmpi |
----------------------+----------------------
Comment (by mascguy):
After re-reviewing the various OpenMPI docs, configure arguments,
articles, etc, it doesn't appear that binaries are hardware-dependent: The
only real dependence is whether it's a 32-bit vs. 64-bit build. But
MacPorts ensures that the appropriate binary - or build flags, if
installing from source - is used for the user's machine. So it's not an
issue.
I've also validated the buildbot-generated binaries, via several MPI test
programs, across the following selection of openmpi-* ports. These were
run on my 2008-era MacPro, to ensure the binaries run on older CPUs:
* openmpi-default
* openmpi-clang90
* openmpi-clang10
* openmpi-clang11
* openmpi-gcc8
* openmpi-gcc9
* openmpi-gcc10
All work without issue.
The only hardware dependency that comes into play, occurs when running
across a cluster of machines: If the CPU endiness is different between
members, then OpenMPI must be compiled with flag `--enable-heterogeneous`
to work properly. That ensures that any primitive data like integers and
floating point values, are properly converted to the proper byte order.
All of this isn't an issue with Intel and ARM-based Macs, as both are
little-endian. However, if the cluster contains members with big-endian
architectures - like PowerPC - the '--enable-heterogeneous' option must be
enabled.
Conclusion: While buildbot binaries are fine to use as-is, we should add a
new variant `hetereogeneous` to support users who want to run as part of a
heterogeneous cluster.
--
Ticket URL: <https://trac.macports.org/ticket/62783#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list