[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