Horovod auto-selection of g++ version #1199
g++ version selection has been a long-standing pain point. TensorFlow from PyPI requires g++ 4.8.5 or 4.9, PyTorch from PyPI requires g++ 4.9+, and Conda versions require g++ 5.4.0+.
This change introduces the ability of Horovod to use different compiler per framework and provide users with meaningful error messages when it's known that given compiler/framework combination will not work.
Additionally, this change allows us to remove cherry-picked g++-4.9 and use g++-7 & g++-4.8.5 combination.
cc @zsh-thu, this breaks Gloo since Gloo is compiled separately. Unfortunately, since each plugin can be compiled with its own compiler (and with a different CXX ABI settings), we need to build Gloo together with each plugin. Can you make a PR with that change?