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.
Initially, PyTorch/XLA was built with C++11 ABI, which was a more modern ABI (e.g. small string optimizations). However, that conflicts with the ABI of upstream PyTorch, so #5650 disabled the C++11 ABI. It turns out that C++11 ABI improves LazyTensor tracing performance drastically for some large models. We can't go back to C++11 ABI due to conflict with upstream, so this PR adds additional nightly build variants that enable C++11 ABI next to the existing wheels and dockers.
The docker images will be tagged like "nightly_3.10_tpuvm_cxx11_20241023" instead of "nightly_3.10_tpuvm_20241023".
The wheels will be named like
"torch_xla-2.6.0.dev20241023.cxx11-cp310-cp310-linux_x86_64.whl" instead of "torch_xla-2.6.0.dev20241023-cp310-cp310-linux_x86_64.whl".
This PR also adds support for building C++11 ABI variants for stable branches, but we don't activate it yet.
Fixes #8306.