Rate This Document
Findability
Accuracy
Completeness
Readability

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.

  1. Obtain the TensorFlow 2.21.0 source code.
    1
    git clone --recursive --branch v2.21.0 https://github.com/tensorflow/tensorflow.git
    
  2. 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:-}
    
  3. Generate the build configuration.
    1
    python3 configure.py
    
  4. Build the Python wheel package.
    1
    bazelisk build --config=opt --config=cuda //tensorflow/tools/pip_package:wheel
    
  5. Install the build product.
    1
    python3 -m pip install "bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-*.whl[and-cuda]"
    
  6. 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:-}