Source Code Compilation and Build
Obtain the TensorFlow source code. Before building a Python wheel package, configure the CUDA environment, install the build product, and configure the runtime library path.
- Obtain the TensorFlow 2.21.0 source code.
1git clone --recursive --branch v2.21.0 https://github.com/tensorflow/tensorflow.git
- Configure the CUDA build environment.
1 2 3 4 5 6 7
cd tensorflow export PYTHON_BIN_PATH=$(command -v python3) export TF_NEED_CUDA=1 export TF_CUDA_COMPUTE_CAPABILITIES=8.0 export CUDA_HOME=/usr/local/cuda export PATH=${CUDA_HOME}/bin:${PATH} export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH:-}
- Generate the build configuration.
1python3 configure.py - Build the Python wheel package.
1bazelisk build --config=opt --config=cuda //tensorflow/tools/pip_package:wheel
- Install the build product.
1python3 -m pip install "bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-*.whl[and-cuda]"
- Configure the path of the CUDA runtime library installed using the NVIDIA pip package.
1 2 3 4 5 6 7 8 9 10 11 12
export LD_LIBRARY_PATH=/usr/lib64:\ /usr/local/lib/python3.11/site-packages/nvidia/cublas/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/cuda_cupti/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/cuda_nvrtc/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/cuda_runtime/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/cudnn/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/cufft/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/curand/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/cusolver/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/cusparse/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/nccl/lib:\ /usr/local/lib/python3.11/site-packages/nvidia/nvjitlink/lib:${LD_LIBRARY_PATH:-}
Parent topic: Developer Guide