소스에서 빌드

소스에서 TensorFlow pip 패키지를 빌드하여 Ubuntu Linux와 macOS에 설치하세요. 이 지침은 다른 시스템에서도 작동할 수 있지만, Ubuntu와 macOS에서만 테스트 및 지원됩니다.

Linux 및 macOS 설정

다음 빌드 도구를 설치하여 개발 환경을 구성하세요.

Python 및 TensorFlow 패키지 종속성 설치

우분투

sudo apt install python3-dev python3-pip

맥OS

Xcode 9.2 이상이 필요합니다.

Homebrew 패키지 관리자를 사용하여 설치하세요.

brew install python

TensorFlow pip 패키지 종속성을 설치합니다(가상 환경을 사용하는 경우 --user 인수를 생략합니다).

pip install -U --user pip

Bazel 설치

TensorFlow를 빌드하려면 Bazel을 설치해야 합니다. Bazelisk는 Bazel을 설치하는 간편한 방법이며, TensorFlow에 맞는 Bazel 버전을 자동으로 다운로드합니다. 사용 편의성을 위해 Bazelisk를 PATHbazel 실행 파일로 추가하세요.

Bazelisk를 사용할 수 없는 경우 Bazel을 수동으로 설치할 수 있습니다. TensorFlow의 .bazelversion 파일에서 올바른 Bazel 버전을 설치하세요.

Clang은 LLVM 기반 C++로 컴파일된 C/C++/Objective-C 컴파일러입니다. TensorFlow 2.13부터 TensorFlow 빌드의 기본 컴파일러입니다. 현재 지원되는 버전은 LLVM/Clang 17입니다.

LLVM Debian/Ubuntu 야간 패키지는 Linux에서 수동 설치를 위한 자동 설치 스크립트와 패키지를 제공합니다. 패키지 소스에 llvm apt 저장소를 수동으로 추가하는 경우 다음 명령을 실행하세요.

sudo apt-get update && sudo apt-get install -y llvm-17 clang-17

이 경우 /usr/lib/llvm-17/bin/clang 이 clang의 실제 경로입니다.

또는 사전 빌드된 Clang + LLVM 17을 다운로드하여 압축을 풀 수 있습니다.

아래는 Debian/Ubuntu 운영 체제에서 다운로드한 Clang + LLVM 17 바이너리를 설정하는 데 사용할 수 있는 단계의 예입니다.

  1. 원하는 대상 디렉토리로 변경: cd <desired directory>

  2. 아카이브 파일을 로드하고 추출합니다...(사용자의 아키텍처에 적합):

    wget https://github.com/llvm/llvm-project/releases/download/llvmorg-17.0.2/clang+llvm-17.0.2-x86_64-linux-gnu-ubuntu-22.04.tar.xz
    
    tar -xvf clang+llvm-17.0.2-x86_64-linux-gnu-ubuntu-22.04.tar.xz
    

  3. 압축 해제된 내용(디렉토리 및 파일)을 /usr 에 복사합니다(sudo 권한이 필요할 수 있으며, 올바른 디렉터리는 배포판에 따라 다를 수 있습니다). 이렇게 하면 Clang과 LLVM이 설치되고 경로에 추가됩니다. 이전에 설치한 파일이 있는 경우를 제외하고는 아무것도 변경할 필요가 없습니다. 이전에 설치한 파일이 있는 경우 다음 파일을 변경해야 합니다.

    cp -r clang+llvm-17.0.2-x86_64-linux-gnu-ubuntu-22.04/* /usr

  4. 얻은 Clang + LLVM 17 바이너리 버전을 확인하세요:

    clang --version

  5. 이제 /usr/bin/clang 이 새 clang의 실제 경로입니다. ./configure 스크립트를 실행하거나 CCBAZEL_COMPILER 환경 변수를 이 경로에 수동으로 설정할 수 있습니다.

GPU 지원 설치(선택 사항, Linux만 해당)

macOS에서는 GPU를 지원 하지 않습니다 .

GPU 지원 가이드를 읽고 GPU에서 TensorFlow를 실행하는 데 필요한 드라이버와 추가 소프트웨어를 설치하세요.

TensorFlow 소스 코드를 다운로드하세요

Git을 사용하여 TensorFlow 저장소를 복제합니다.

git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow

저장소는 기본적으로 master 개발 브랜치로 설정됩니다. 릴리스 브랜치 를 체크아웃하여 빌드할 수도 있습니다.

git checkout branch_name  # r2.2, r2.3, etc.

빌드 구성

TensorFlow 빌드는 저장소 루트 디렉터리의 .bazelrc 파일을 통해 구성됩니다. ./configure 또는 ./configure.py 스크립트를 사용하여 일반적인 설정을 조정할 수 있습니다.

저장소의 루트 디렉터리에서 ./configure 스크립트를 실행하세요. 이 스크립트는 TensorFlow 종속성의 위치를 ​​묻고 추가 빌드 구성 옵션(예: 컴파일러 플래그)을 묻습니다. 자세한 내용은 샘플 세션 섹션을 참조하세요.

./configure

이 스크립트의 Python 버전인 ./configure.py 도 있습니다. 가상 환경을 사용하는 경우, python configure.py 환경 내의 경로를 우선시하는 반면, ./configure 환경 외부의 경로를 우선시합니다. 두 경우 모두 기본값을 변경할 수 있습니다.

샘플 세션

다음은 ./configure 스크립트의 샘플 실행을 보여줍니다(세션에 따라 다를 수 있음).

구성 옵션

GPU 지원

v.2.18.0부터

GPU 지원을 위해 구성 과정에서 cuda=Y 설정하고 필요한 경우 CUDA 및 cuDNN 버전을 지정하세요. Bazel은 CUDA 및 CUDNN 패키지를 자동으로 다운로드하거나 필요한 경우 로컬 파일 시스템에 있는 CUDA/CUDNN/NCCL 재배포 파일을 가리킵니다.

v.2.18.0 이전

GPU 지원을 위해 구성 과정에서 cuda=Y 를 설정하고 CUDA 및 cuDNN 버전을 지정하세요. 시스템에 여러 버전의 CUDA 또는 cuDNN이 설치된 경우 기본값을 사용하지 않고 버전을 명시적으로 설정하세요. ./configure 는 시스템의 CUDA 라이브러리에 대한 심볼릭 링크를 생성하므로 CUDA 라이브러리 경로를 업데이트하는 경우 빌드하기 전에 이 구성 단계를 다시 실행해야 합니다.

최적화

컴파일 최적화 플래그의 경우, 기본값( -march=native )은 생성된 코드를 머신의 CPU 유형에 맞게 최적화합니다. 하지만 다른 CPU 유형에 맞춰 TensorFlow를 빌드하는 경우, 더 구체적인 최적화 플래그를 고려하세요. GCC 매뉴얼 에서 예시를 확인하세요.

사전 구성된 구성

bazel build 명령에 추가할 수 있는 미리 구성된 빌드 구성이 몇 가지 있습니다. 예를 들어 다음과 같습니다.

  • --config=dbg —디버그 정보를 사용하여 빌드합니다. 자세한 내용은 CONTRIBUTING.md를 참조하세요.
  • --config=mkl —Intel® MKL-DNN 지원.
  • --config=monolithic —대부분 정적인 모놀리식 빌드에 대한 구성입니다.

pip 패키지를 빌드하고 설치합니다.

Bazel 빌드 옵션

빌드 옵션 에 대한 자세한 내용은 Bazel 명령줄 참조를 참조하세요.

소스에서 TensorFlow를 빌드하면 많은 RAM을 사용할 수 있습니다. 시스템 메모리가 부족한 경우 --local_ram_resources=2048 옵션을 사용하여 Bazel의 RAM 사용량을 제한하세요.

공식 TensorFlow 패키지는 manylinux2014 패키지 표준을 준수하는 Clang 툴체인으로 빌드되었습니다.

패키지 빌드

pip 패키지를 빌드하려면 --repo_env=WHEEL_NAME 플래그를 지정해야 합니다. 제공된 이름에 따라 패키지가 생성됩니다. 예:

tensorflow CPU 패키지를 빌드하려면:

bazel build //tensorflow/tools/pip_package:wheel --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow_cpu

tensorflow GPU 패키지를 빌드하려면:

bazel build //tensorflow/tools/pip_package:wheel --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow --config=cuda --config=cuda_wheel

tensorflow TPU 패키지를 빌드하려면:

bazel build //tensorflow/tools/pip_package:wheel --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow_tpu --config=tpu

야간 패키지를 빌드하려면 tensorflow 대신 tf_nightly 설정합니다. 예를 들어 CPU 야간 패키지를 빌드하려면 다음과 같습니다.

bazel build //tensorflow/tools/pip_package:wheel --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tf_nightly_cpu

결과적으로 생성된 휠은 다음 위치에 위치하게 됩니다.

bazel-bin/tensorflow/tools/pip_package/wheel_house/

패키지를 설치하세요

생성된 .whl 파일의 파일 이름은 TensorFlow 버전과 플랫폼에 따라 달라집니다. pip install 사용하여 패키지를 설치하세요. 예:

pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl

Docker Linux 빌드

TensorFlow의 Docker 개발 이미지를 사용하면 소스에서 Linux 패키지를 빌드할 수 있는 환경을 쉽게 설정할 수 있습니다. 이 이미지에는 TensorFlow 빌드에 필요한 소스 코드와 종속성이 이미 포함되어 있습니다. 설치 지침과 사용 가능한 이미지 태그 목록은 TensorFlow Docker 가이드 를 참조하세요.

CPU 전용

다음 예제에서는 :devel 이미지를 사용하여 최신 TensorFlow 소스 코드에서 CPU 전용 패키지를 빌드합니다. 사용 가능한 TensorFlow -devel 태그는 Docker 가이드를 참조하세요.

최신 개발 이미지를 다운로드하고 pip 패키지를 빌드하는 데 사용할 Docker 컨테이너를 시작합니다.

docker pull tensorflow/tensorflow:devel
docker run -it -w /tensorflow_src -v $PWD:/mnt -e HOST_PERMS="$(id -u):$(id -g)" \
    tensorflow/tensorflow:devel bash

git pull  # within the container, download the latest source code

위의 docker run 명령어는 소스 트리의 루트인 /tensorflow_src 디렉터리에서 셸을 시작합니다. 호스트의 현재 디렉터리를 컨테이너의 /mnt 디렉터리에 마운트하고, 호스트 사용자 정보를 환경 변수(권한 설정에 사용됨. Docker에서는 이 과정이 까다로울 수 있음)를 통해 컨테이너에 전달합니다.

또는 컨테이너 내에서 TensorFlow의 호스트 복사본을 빌드하려면 컨테이너의 /tensorflow 디렉터리에 호스트 소스 트리를 마운트합니다.

docker run -it -w /tensorflow -v /path/to/tensorflow:/tensorflow -v $PWD:/mnt \
    -e HOST_PERMS="\\((id -u):\\)(id -g)" tensorflow/tensorflow:devel bash

소스 트리가 설정되면 컨테이너의 가상 환경 내에서 TensorFlow 패키지를 빌드합니다.

  1. 선택 사항: 빌드를 구성합니다. 이렇게 하면 사용자에게 빌드 구성 질문에 답하라는 메시지가 표시됩니다.
  2. pip 패키지를 빌드합니다.
  3. 컨테이너 외부의 파일 소유권 권한을 조정합니다.
./configure  # if necessary


bazel build //tensorflow/tools/pip_package:wheel \
--repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow_cpu --config=opt

`
chown $HOST_PERMS bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl

컨테이너 내에 패키지를 설치하고 확인하세요.

pip uninstall tensorflow  # remove current version

pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl
cd /tmp  # don't import from source directory
python -c "import tensorflow as tf; print(tf.__version__)"

호스트 머신에서 TensorFlow pip 패키지는 현재 디렉토리(호스트 사용자 권한 포함)에 있습니다. ./tensorflow- version - tags .whl

GPU 지원

Docker는 호스트 머신에 NVIDIA® 드라이버 만 설치하면 되므로 TensorFlow에 대한 GPU 지원을 구축하는 가장 쉬운 방법입니다( NVIDIA® CUDA® 툴킷은 설치할 필요가 없습니다). nvidia-docker를 설정하려면 GPU 지원 가이드 와 TensorFlow Docker 가이드를 참조하세요(Linux만 해당).

다음 예제는 TensorFlow :devel-gpu 이미지를 다운로드하고 nvidia-docker 사용하여 GPU 지원 컨테이너를 실행합니다. 이 개발 이미지는 GPU를 지원하는 pip 패키지를 빌드하도록 구성되어 있습니다.

docker pull tensorflow/tensorflow:devel-gpu
docker run --gpus all -it -w /tensorflow -v $PWD:/mnt -e HOST_PERMS="$(id -u):$(id -g)" \
    tensorflow/tensorflow:devel-gpu bash
git pull  # within the container, download the latest source code

그런 다음 컨테이너의 가상 환경 내에서 GPU 지원이 포함된 TensorFlow 패키지를 빌드합니다.

./configure  # if necessary


bazel build //tensorflow/tools/pip_package:wheel \
--repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow --config=cuda \
--config=cuda_wheel --config=opt


chown $HOST_PERMS bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl

컨테이너 내에 패키지를 설치하고 검증하고 GPU를 확인하세요.

pip uninstall tensorflow  # remove current version

pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl
cd /tmp  # don't import from source directory
python -c "import tensorflow as tf; print(\"Num GPUs Available: \", len(tf.config.list_physical_devices('GPU')))"

테스트된 빌드 구성

리눅스

CPU

버전 파이썬 버전 컴파일러 빌드 도구
텐서플로우-2.20.0 3.9-3.13 클랭 18.1.8 바젤 7.4.1
텐서플로우-2.19.0 3.9-3.12 클랭 18.1.8 바젤 6.5.0
텐서플로우-2.18.0 3.9-3.12 클랭 17.0.6 바젤 6.5.0
텐서플로우-2.17.0 3.9-3.12 클랭 17.0.6 바젤 6.5.0
텐서플로우-2.16.1 3.9-3.12 클랭 17.0.6 바젤 6.5.0
텐서플로우-2.15.0 3.9-3.11 클랭 16.0.0 바젤 6.1.0
텐서플로우-2.14.0 3.9-3.11 클랭 16.0.0 바젤 6.1.0
텐서플로우-2.13.0 3.8-3.11 클랭 16.0.0 바젤 5.3.0
텐서플로우-2.12.0 3.8-3.11 GCC 9.3.1 바젤 5.3.0
텐서플로우-2.11.0 3.7-3.10 GCC 9.3.1 바젤 5.3.0
텐서플로우-2.10.0 3.7-3.10 GCC 9.3.1 바젤 5.1.1
텐서플로우-2.9.0 3.7-3.10 GCC 9.3.1 바젤 5.0.0
텐서플로우-2.8.0 3.7-3.10 GCC 7.3.1 바젤 4.2.1
텐서플로우-2.7.0 3.7-3.9 GCC 7.3.1 바젤 3.7.2
텐서플로우-2.6.0 3.6-3.9 GCC 7.3.1 바젤 3.7.2
텐서플로우-2.5.0 3.6-3.9 GCC 7.3.1 바젤 3.7.2
텐서플로우-2.4.0 3.6-3.8 GCC 7.3.1 바젤 3.1.0
텐서플로우-2.3.0 3.5-3.8 GCC 7.3.1 바젤 3.1.0
텐서플로우-2.2.0 3.5-3.8 GCC 7.3.1 바젤 2.0.0
텐서플로우-2.1.0 2.7, 3.5-3.7 GCC 7.3.1 바젤 0.27.1
텐서플로우-2.0.0 2.7, 3.3-3.7 GCC 7.3.1 바젤 0.26.1
텐서플로우-1.15.0 2.7, 3.3-3.7 GCC 7.3.1 바젤 0.26.1
텐서플로우-1.14.0 2.7, 3.3-3.7 GCC 4.8 바젤 0.24.1
텐서플로우-1.13.1 2.7, 3.3-3.7 GCC 4.8 바젤 0.19.2
텐서플로우-1.12.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.15.0
텐서플로우-1.11.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.15.0
텐서플로우-1.10.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.15.0
텐서플로우-1.9.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.11.0
텐서플로우-1.8.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.10.0
텐서플로우-1.7.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.10.0
텐서플로우-1.6.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.9.0
텐서플로우-1.5.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.8.0
텐서플로우-1.4.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.5.4
텐서플로우-1.3.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.4.5
텐서플로우-1.2.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.4.5
텐서플로우-1.1.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.4.2
텐서플로우-1.0.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.4.2

그래픽 카드

버전 파이썬 버전 컴파일러 빌드 도구 cuDNN 쿠다
텐서플로우-2.20.0 3.9-3.13 클랭 18.1.8 바젤 7.4.1 9.3 12.5
텐서플로우-2.19.0 3.9-3.12 클랭 18.1.8 바젤 6.5.0 9.3 12.5
텐서플로우-2.18.0 3.9-3.12 클랭 17.0.6 바젤 6.5.0 9.3 12.5
텐서플로우-2.17.0 3.9-3.12 클랭 17.0.6 바젤 6.5.0 8.9 12.3
텐서플로우-2.16.1 3.9-3.12 클랭 17.0.6 바젤 6.5.0 8.9 12.3
텐서플로우-2.15.0 3.9-3.11 클랭 16.0.0 바젤 6.1.0 8.9 12.2
텐서플로우-2.14.0 3.9-3.11 클랭 16.0.0 바젤 6.1.0 8.7 11.8
텐서플로우-2.13.0 3.8-3.11 클랭 16.0.0 바젤 5.3.0 8.6 11.8
텐서플로우-2.12.0 3.8-3.11 GCC 9.3.1 바젤 5.3.0 8.6 11.8
텐서플로우-2.11.0 3.7-3.10 GCC 9.3.1 바젤 5.3.0 8.1 11.2
텐서플로우-2.10.0 3.7-3.10 GCC 9.3.1 바젤 5.1.1 8.1 11.2
텐서플로우-2.9.0 3.7-3.10 GCC 9.3.1 바젤 5.0.0 8.1 11.2
텐서플로우-2.8.0 3.7-3.10 GCC 7.3.1 바젤 4.2.1 8.1 11.2
텐서플로우-2.7.0 3.7-3.9 GCC 7.3.1 바젤 3.7.2 8.1 11.2
텐서플로우-2.6.0 3.6-3.9 GCC 7.3.1 바젤 3.7.2 8.1 11.2
텐서플로우-2.5.0 3.6-3.9 GCC 7.3.1 바젤 3.7.2 8.1 11.2
텐서플로우-2.4.0 3.6-3.8 GCC 7.3.1 바젤 3.1.0 8.0 11.0
텐서플로우-2.3.0 3.5-3.8 GCC 7.3.1 바젤 3.1.0 7.6 10.1
텐서플로우-2.2.0 3.5-3.8 GCC 7.3.1 바젤 2.0.0 7.6 10.1
텐서플로우-2.1.0 2.7, 3.5-3.7 GCC 7.3.1 바젤 0.27.1 7.6 10.1
텐서플로우-2.0.0 2.7, 3.3-3.7 GCC 7.3.1 바젤 0.26.1 7.4 10.0
텐서플로우_gpu-1.15.0 2.7, 3.3-3.7 GCC 7.3.1 바젤 0.26.1 7.4 10.0
텐서플로우_gpu-1.14.0 2.7, 3.3-3.7 GCC 4.8 바젤 0.24.1 7.4 10.0
텐서플로우_gpu-1.13.1 2.7, 3.3-3.7 GCC 4.8 바젤 0.19.2 7.4 10.0
텐서플로우_GPU-1.12.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.15.0 7 9
텐서플로우_gpu-1.11.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.15.0 7 9
텐서플로우_gpu-1.10.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.15.0 7 9
텐서플로우_GPU-1.9.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.11.0 7 9
텐서플로우_GPU-1.8.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.10.0 7 9
텐서플로우_GPU-1.7.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.9.0 7 9
텐서플로우_GPU-1.6.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.9.0 7 9
텐서플로우_GPU-1.5.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.8.0 7 9
텐서플로우_GPU-1.4.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.5.4 6 8
텐서플로우_GPU-1.3.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.4.5 6 8
텐서플로우_GPU-1.2.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.4.5 5.1 8
텐서플로우_GPU-1.1.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.4.2 5.1 8
텐서플로우_gpu-1.0.0 2.7, 3.3-3.6 GCC 4.8 바젤 0.4.2 5.1 8

맥OS

CPU

버전 파이썬 버전 컴파일러 빌드 도구
텐서플로우-2.16.1 3.9-3.12 Xcode 13.6의 Clang 바젤 6.5.0
텐서플로우-2.15.0 3.9-3.11 xcode 10.15의 Clang 바젤 6.1.0
텐서플로우-2.14.0 3.9-3.11 xcode 10.15의 Clang 바젤 6.1.0
텐서플로우-2.13.0 3.8-3.11 xcode 10.15의 Clang 바젤 5.3.0
텐서플로우-2.12.0 3.8-3.11 xcode 10.15의 Clang 바젤 5.3.0
텐서플로우-2.11.0 3.7-3.10 xcode 10.14의 Clang 바젤 5.3.0
텐서플로우-2.10.0 3.7-3.10 xcode 10.14의 Clang 바젤 5.1.1
텐서플로우-2.9.0 3.7-3.10 xcode 10.14의 Clang 바젤 5.0.0
텐서플로우-2.8.0 3.7-3.10 xcode 10.14의 Clang 바젤 4.2.1
텐서플로우-2.7.0 3.7-3.9 xcode 10.11의 Clang 바젤 3.7.2
텐서플로우-2.6.0 3.6-3.9 xcode 10.11의 Clang 바젤 3.7.2
텐서플로우-2.5.0 3.6-3.9 xcode 10.11의 Clang 바젤 3.7.2
텐서플로우-2.4.0 3.6-3.8 xcode 10.3의 Clang 바젤 3.1.0
텐서플로우-2.3.0 3.5-3.8 xcode 10.1의 Clang 바젤 3.1.0
텐서플로우-2.2.0 3.5-3.8 xcode 10.1의 Clang 바젤 2.0.0
텐서플로우-2.1.0 2.7, 3.5-3.7 xcode 10.1의 Clang 바젤 0.27.1
텐서플로우-2.0.0 2.7, 3.5-3.7 xcode 10.1의 Clang 바젤 0.27.1
텐서플로우-2.0.0 2.7, 3.3-3.7 xcode 10.1의 Clang 바젤 0.26.1
텐서플로우-1.15.0 2.7, 3.3-3.7 xcode 10.1의 Clang 바젤 0.26.1
텐서플로우-1.14.0 2.7, 3.3-3.7 xcode에서 Clang 바젤 0.24.1
텐서플로우-1.13.1 2.7, 3.3-3.7 xcode에서 Clang 바젤 0.19.2
텐서플로우-1.12.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.15.0
텐서플로우-1.11.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.15.0
텐서플로우-1.10.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.15.0
텐서플로우-1.9.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.11.0
텐서플로우-1.8.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.10.1
텐서플로우-1.7.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.10.1
텐서플로우-1.6.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.8.1
텐서플로우-1.5.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.8.1
텐서플로우-1.4.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.5.4
텐서플로우-1.3.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.4.5
텐서플로우-1.2.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.4.5
텐서플로우-1.1.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.4.2
텐서플로우-1.0.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.4.2

그래픽 카드

버전 파이썬 버전 컴파일러 빌드 도구 cuDNN 쿠다
텐서플로우_GPU-1.1.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.4.2 5.1 8
텐서플로우_gpu-1.0.0 2.7, 3.3-3.6 xcode에서 Clang 바젤 0.4.2 5.1 8