Skip to content
This repository was archived by the owner on Aug 15, 2025. It is now read-only.

Conversation

zhuhong61
Copy link
Contributor

The target of this commit is to add the support for a new linux
cpu conda wheel file built with _GLIBCXX_USE_CXX11_ABI=1.

we add a Dockerfile (conda/Dockerfile_cxx11-abi) with CentOS8 as base image to
support CXX11_ABI=1.

To build the new docker image with CXX11_ABI support, run:
CUDA_VERSION=cpu-cxx11-abi conda/build_docker.sh
or
conda/build_all_docker.sh

To build a linux cpu conda wheel with CXX11_ABI within this image, run:
// the below settings are special for this image
export DESIRED_CUDA=cpu-cxx11-abi # change from cpu for wheel name
export GPU_ARCH_TYPE=cpu-cxx11-abi # change from cpu for build.sh
export DOCKER_IMAGE=pytorch/conda-builder:cpu-cxx11-abi
export DESIRED_DEVTOOLSET=cxx11-abi

// the below settings are as usual
export BINARY_ENV_FILE=/tmp/env
export BUILDER_ROOT=/builder
export DESIRED_PYTHON=3.7 # or 3.8, 3.9, etc.
export IS_GHA=1
export PACKAGE_TYPE=conda
export PYTORCH_FINAL_PACKAGE_DIR=/artifacts
export PYTORCH_ROOT=/pytorch
export GITHUB_WORKSPACE=/your_path_to_workspace

// the '-e DESIRED_DEVTOOLSET' below is newly added for this container,
// others are as usual
set -x
mkdir -p artifacts/
container_name=$(docker run
-e BINARY_ENV_FILE
-e BUILDER_ROOT
-e DESIRED_CUDA
-e DESIRED_PYTHON
-e GPU_ARCH_TYPE
-e IS_GHA
-e PACKAGE_TYPE
-e PYTORCH_FINAL_PACKAGE_DIR
-e PYTORCH_ROOT
-e DOCKER_IMAGE
-e DESIRED_DEVTOOLSET
--tty
--detach
-v "${GITHUB_WORKSPACE}/pytorch:/pytorch"
-v "${GITHUB_WORKSPACE}/builder:/builder"
-v "${RUNNER_TEMP}/artifacts:/artifacts"
-w /
"${DOCKER_IMAGE}"
)

// build conda wheel as usual,
// and the built wheel file name looks like: pytorch-1.13.0.dev20220616-py3.7_cpu_0.tar.bz2
docker exec -t -w "${PYTORCH_ROOT}" "${container_name}" bash -c "bash .circleci/scripts/binary_populate_env.sh"
docker exec -t "${container_name}" bash -c "source ${BINARY_ENV_FILE} && bash /builder/conda/build.sh"

// to verify the built wheel file, we'll see 'True'
$ conda install pytorch-1.13.0.dev20220616-py3.7_cpu_0.tar.bz2
$ python -c 'import torch; print(torch._C._GLIBCXX_USE_CXX11_ABI)'
True

Co-authored-by: Zhu Hong [email protected]
Co-authored-by: Guo Yejun [email protected]

@gujinghui
Copy link

@atalman @malfet
This is new copy of #1062
We cannot reproduce this error. Could you help give more info? Thanks.

@malfet
Copy link
Contributor

malfet commented Aug 10, 2022

The right way of doing it is to create a PR against pytorch/pytorch that uses the package and validate that it finishes correctly, here are the few example: #1012 (see test PR pytorch/pytorch#74141 )

@zhuhong61
Copy link
Contributor Author

The right way of doing it is to create a PR against pytorch/pytorch that uses the package and validate that it finishes correctly, here are the few example: #1012 (see test PR pytorch/pytorch#74141 )

Hi @malfet We submitted this PR pytorch/pytorch#83253 to validate the conda wheel. Could you please help check the ci issues? pytorch/pytorch#83253 (comment) Thanks!

@zhuhong61 zhuhong61 force-pushed the zh/conda_abi branch 3 times, most recently from 85dc5ca to 335435e Compare September 7, 2022 05:10
@zhuhong61
Copy link
Contributor Author

Hi @malfet Could you help check ci failure issues in pytorch/pytorch#83253, thanks!

@zhuhong61 zhuhong61 force-pushed the zh/conda_abi branch 2 times, most recently from ed29e03 to de7815d Compare November 21, 2022 05:12
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants