Confusion About LibTorch Binary Naming and ABI on "Get Started" Page

Hey all,

I’m confused by the LibTorch binary naming and ABI labeling on the PyTorch “Get Started” page (https://pytorch.org/get-started/locally/). When selecting Linux and LibTorch with CUDA 12.6, the page provides the following:

  • Text: “Download here (cxx11 ABI)”

  • URL: https://download.pytorch.org/libtorch/cu126/libtorch-shared-with-deps-2.8.0%2Bcu126.zip

The flavor text indicates this is a C++11 ABI binary, but the filename does not include “cxx11-abi,” unlike other binaries, such as:

  • https://download.pytorch.org/libtorch/test/cpu/libtorch-cxx11-abi-shared-with-deps-latest.zip (linked here for example)

This inconsistency is confusing. I believe in older PyTorch versions, the libtorch-shared-with-deps filename typically indicated a Pre-cxx11 ABI binary, while libtorch-cxx11-abi-shared-with-deps was used for the C++11 ABI. Has the naming convention changed, or is the flavor text on the “Get Started” page incorrect? Is the libtorch-shared-with-deps-2.8.0+cu126.zip binary truly compiled with the C++11 ABI?

I’m using [GCC 9.3, and RL9] and would appreciate clarification on:

  1. Whether libtorch-shared-with-deps-2.8.0+cu126.zip is indeed a C++11 ABI binary.

  2. Any recommended steps to confirm the ABI of a LibTorch binary (e.g., via nm or a test program).

Thanks for any insights or confirmation!

All of our builds should use the cxx11 ABI now after dropping legacy CUDA 11.8 builds and the file name of our libtorch builds should not indicate any ABI tag anymore. You can check it by printing symbols and filtering for e.g. std::string which should indicate if cxx11 ABI is used.