소스에서 TensorFlow pip 패키지를 빌드하고 Ubuntu Linux 및 macOS에 설치합니다. 지침은 다른 시스템에서도 작동할 수 있지만 Ubuntu 및 macOS에서만 테스트되고 지원됩니다.
Linux 및 macOS용 설정
개발 환경을 구성하려면 다음 빌드 도구를 설치하세요.
Python 및 TensorFlow 패키지 종속 항목 설치
우분투
sudo apt install python3-dev python3-pip
macOS
Xcode 9.2 이상이 필요합니다.
Homebrew 패키지 관리자를 사용하여 설치합니다.
brew install python
TensorFlow pip 패키지 종속성을 설치합니다(가상 환경을 사용하는 경우 --user
인수 생략).
pip install -U --user pip
바젤 설치
TensorFlow를 빌드하려면 Bazel을 설치해야 합니다. Bazelisk는 Bazel을 설치하는 쉬운 방법이며 TensorFlow에 적합한 Bazel 버전을 자동으로 다운로드합니다. 사용 편의성을 위해 Bazelisk를 PATH
에 bazel
실행 파일로 추가하세요.
Bazelisk를 사용할 수 없는 경우 Bazel을 수동으로 설치할 수 있습니다. TensorFlow의 .bazelversion 파일에서 올바른 Bazel 버전을 설치했는지 확인하세요.
Clang 설치(권장, Linux에만 해당)
Clang은 LLVM 기반의 C++로 컴파일된 C/C++/Objective-C 컴파일러입니다. TensorFlow 2.13부터 TensorFlow를 빌드하는 기본 컴파일러입니다. 현재 지원되는 버전은 LLVM/Clang 17입니다.
LLVM Debian/Ubuntu nightly 패키지는 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 바이너리를 설정하기 위해 수행할 수 있는 단계의 예입니다.
원하는 대상 디렉터리로 변경합니다:
cd <desired directory>
아카이브 파일 로드 및 추출...(아키텍처에 적합):
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
추출된 내용(디렉터리 및 파일)을
/usr
에 복사합니다(Sudo 권한이 필요할 수 있으며 올바른 디렉터리는 배포판에 따라 다를 수 있음). 이렇게 하면 Clang 및 LLVM이 효과적으로 설치되고 경로에 추가됩니다. 이전 설치가 있는 경우를 제외하고 아무것도 바꿀 필요가 없습니다. 이 경우 파일을 바꿔야 합니다.cp -r clang+llvm-17.0.2-x86_64-linux-gnu-ubuntu-22.04/* /usr
획득한 Clang + LLVM 17 바이너리 버전을 확인하세요.
clang --version
이제
/usr/bin/clang
이 새 clang의 실제 경로입니다../configure
스크립트를 실행하거나 환경 변수CC
및BAZEL_COMPILER
이 경로로 수동으로 설정할 수 있습니다.
GPU 지원 설치(선택 사항, Linux에만 해당)
macOS에는 GPU 지원이 없습니다 .
GPU에서 TensorFlow를 실행하는 데 필요한 드라이버와 추가 소프트웨어를 설치하려면 GPU 지원 가이드를 읽어보세요.
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
- 인텔® MKL-DNN 지원. -
--config=monolithic
- 대부분 정적인 모놀리식 빌드를 위한 구성입니다.
pip 패키지 빌드 및 설치
Bazel 빌드 옵션
소스에서 TensorFlow를 빌드하면 많은 RAM이 사용될 수 있습니다. 시스템에 메모리가 제한된 경우 --local_ram_resources=2048
사용하여 Bazel의 RAM 사용량을 제한하세요.
공식 TensorFlow 패키지는 Manylinux2014 패키지 표준을 준수하는 Clang 도구 체인으로 구축되었습니다.
패키지 빌드
pip 패키지를 빌드하려면 --repo_env=WHEEL_NAME
플래그를 지정해야 합니다. 제공된 이름에 따라 패키지가 생성됩니다. 예:
텐서플로우 CPU 패키지를 빌드하려면:
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_cpu
텐서플로우 GPU 패키지를 빌드하려면:
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow --config=cuda --config=cuda_wheel
텐서플로우 TPU 패키지를 빌드하려면 다음 안내를 따르세요.
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_tpu --config=tpu
nightly 패키지를 빌드하려면 tensorflow
대신 tf_nightly
설정하세요. 예를 들어 CPU nightly 패키지를 빌드하려면:
bazel build //tensorflow/tools/pip_package:wheel --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 패키지를 빌드합니다.
- 선택 사항: 빌드 구성 - 사용자에게 빌드 구성 질문에 답하라는 메시지가 표시됩니다.
- pip 패키지를 빌드합니다.
- 컨테이너 외부에 대한 파일의 소유권 권한을 조정합니다.
./configure # if necessary
bazel build //tensorflow/tools/pip_package:wheel --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 지원
호스트 시스템에는 NVIDIA® 드라이버 만 필요하므로 Docker는 TensorFlow에 대한 GPU 지원을 구축하는 가장 쉬운 방법입니다( NVIDIA® CUDA® Toolkit을 설치할 필요가 없음). 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=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.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 |
GPU
버전 | 파이썬 버전 | 컴파일러 | 빌드 도구 | cuDNN | 쿠다 |
---|---|---|---|---|---|
텐서플로우-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 |
tensorflow_gpu-1.15.0 | 2.7, 3.3-3.7 | GCC 7.3.1 | 바젤 0.26.1 | 7.4 | 10.0 |
tensorflow_gpu-1.14.0 | 2.7, 3.3-3.7 | GCC 4.8 | 바젤 0.24.1 | 7.4 | 10.0 |
tensorflow_gpu-1.13.1 | 2.7, 3.3-3.7 | GCC 4.8 | 바젤 0.19.2 | 7.4 | 10.0 |
tensorflow_gpu-1.12.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.15.0 | 7 | 9 |
tensorflow_gpu-1.11.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.15.0 | 7 | 9 |
tensorflow_gpu-1.10.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.15.0 | 7 | 9 |
tensorflow_gpu-1.9.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.11.0 | 7 | 9 |
tensorflow_gpu-1.8.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.10.0 | 7 | 9 |
tensorflow_gpu-1.7.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.9.0 | 7 | 9 |
tensorflow_gpu-1.6.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.9.0 | 7 | 9 |
tensorflow_gpu-1.5.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.8.0 | 7 | 9 |
tensorflow_gpu-1.4.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.5.4 | 6 | 8 |
tensorflow_gpu-1.3.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.4.5 | 6 | 8 |
tensorflow_gpu-1.2.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.4.5 | 5.1 | 8 |
tensorflow_gpu-1.1.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.4.2 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 2.7, 3.3-3.6 | GCC 4.8 | 바젤 0.4.2 | 5.1 | 8 |
macOS
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의 클랭 | 바젤 3.1.0 |
텐서플로우-2.3.0 | 3.5-3.8 | xcode 10.1의 클랭 | 바젤 3.1.0 |
텐서플로우-2.2.0 | 3.5-3.8 | xcode 10.1의 클랭 | 바젤 2.0.0 |
텐서플로우-2.1.0 | 2.7, 3.5-3.7 | xcode 10.1의 클랭 | 바젤 0.27.1 |
텐서플로우-2.0.0 | 2.7, 3.5-3.7 | xcode 10.1의 클랭 | 바젤 0.27.1 |
텐서플로우-2.0.0 | 2.7, 3.3-3.7 | xcode 10.1의 클랭 | 바젤 0.26.1 |
텐서플로우-1.15.0 | 2.7, 3.3-3.7 | xcode 10.1의 클랭 | 바젤 0.26.1 |
텐서플로우-1.14.0 | 2.7, 3.3-3.7 | xcode의 클랭 | 바젤 0.24.1 |
텐서플로우-1.13.1 | 2.7, 3.3-3.7 | xcode의 클랭 | 바젤 0.19.2 |
텐서플로우-1.12.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.15.0 |
텐서플로우-1.11.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.15.0 |
텐서플로우-1.10.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.15.0 |
텐서플로우-1.9.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.11.0 |
텐서플로우-1.8.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.10.1 |
텐서플로우-1.7.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.10.1 |
텐서플로우-1.6.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.8.1 |
텐서플로우-1.5.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.8.1 |
텐서플로우-1.4.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.5.4 |
텐서플로우-1.3.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.4.5 |
텐서플로우-1.2.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.4.5 |
텐서플로우-1.1.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.4.2 |
텐서플로우-1.0.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.4.2 |
GPU
버전 | 파이썬 버전 | 컴파일러 | 빌드 도구 | cuDNN | 쿠다 |
---|---|---|---|---|---|
tensorflow_gpu-1.1.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.4.2 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 2.7, 3.3-3.6 | xcode의 클랭 | 바젤 0.4.2 | 5.1 | 8 |