Update Eigen submodule to fix build on macOS with aarch64 #3619
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Checklist before submitting
Description
On my computer (macOS 12.4, M1 Pro) this fixes building Horovod with PyTorch. Note that the problem does not occur if one builds with TensorFlow, too.
We need to make sure to build with a version of Eigen that's recent enough to include the commit https://gitlab.com/libeigen/eigen/-/commit/fd1dcb6b45a2c797ad4c4d6cc7678ee70763b4ed; else we get duplicate symbol errors. The latest release 3.4.0 includes the fix, which is why I opted for that version: https://gitlab.com/libeigen/eigen/-/tags/3.4.0 (commit hash 3147391d).
When we build with TensorFlow, we don't use Eigen from the submodule, but we use the version of the library that ships with the TF package. For that reason I believe that this change will not affect anything running in the CI: As far as I know, there, we always build with all three frameworks TensorFlow, PyTorch, and MXNet.
Fixes #3605 and #3587.
Review process to land