Crea un pacchetto pip TensorFlow dal sorgente e installalo su Ubuntu Linux e macOS. Anche se le istruzioni potrebbero funzionare per altri sistemi, sono testate e supportate solo per Ubuntu e macOS.
Configurazione per Linux e macOS
Installa i seguenti strumenti di compilazione per configurare il tuo ambiente di sviluppo.
Installa Python e le dipendenze del pacchetto TensorFlow
Ubuntu
sudo apt install python3-dev python3-pip
macOS
Richiede Xcode 9.2 o successivo.
Installa utilizzando il gestore pacchetti Homebrew :
brew install python
Installa le dipendenze del pacchetto pip TensorFlow (se utilizzi un ambiente virtuale, ometti l'argomento --user
):
pip install -U --user pip
Installa Bazel
Per creare TensorFlow, dovrai installare Bazel. Bazelisk è un modo semplice per installare Bazel e scarica automaticamente la versione Bazel corretta per TensorFlow. Per facilità d'uso, aggiungi Bazelisk come eseguibile bazel
nel tuo PATH
.
Se Bazelisk non è disponibile, puoi installare manualmente Bazel . Assicurati di installare la versione corretta di Bazel dal file .bazelversion di TensorFlow.
Installa Clang (consigliato, solo Linux)
Clang è un compilatore C/C++/Objective-C compilato in C++ basato su LLVM. È il compilatore predefinito per creare TensorFlow a partire da TensorFlow 2.13. La versione attualmente supportata è LLVM/Clang 17.
I pacchetti notturni LLVM Debian/Ubuntu forniscono uno script di installazione automatica e pacchetti per l'installazione manuale su Linux. Assicurati di eseguire il comando seguente se aggiungi manualmente il repository llvm apt alle origini del pacchetto:
sudo apt-get update && sudo apt-get install -y llvm-17 clang-17
Ora che /usr/lib/llvm-17/bin/clang
è il percorso effettivo per clang in questo caso.
In alternativa, puoi scaricare e decomprimere il Clang + LLVM 17 precompilato.
Di seguito è riportato un esempio dei passaggi che è possibile eseguire per configurare i file binari Clang + LLVM 17 scaricati sui sistemi operativi Debian/Ubuntu:
Passare alla directory di destinazione desiderata:
cd <desired directory>
Carica ed estrai un file di archivio...(adatto alla tua architettura):
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
Copia i contenuti estratti (directory e file) in
/usr
(potresti aver bisogno delle autorizzazioni sudo e la directory corretta può variare in base alla distribuzione). Questo installa effettivamente Clang e LLVM e lo aggiunge al percorso. Non dovresti dover sostituire nulla, a meno che tu non abbia un'installazione precedente, nel qual caso dovresti sostituire i file:cp -r clang+llvm-17.0.2-x86_64-linux-gnu-ubuntu-22.04/* /usr
Controlla la versione dei binari Clang + LLVM 17 ottenuta:
clang --version
Ora che
/usr/bin/clang
è il percorso effettivo per il tuo nuovo clang. È possibile eseguire lo script./configure
o impostare manualmente le variabili di ambienteCC
eBAZEL_COMPILER
su questo percorso.
Installa il supporto GPU (opzionale, solo Linux)
Non è disponibile il supporto GPU per macOS.
Leggi la guida al supporto GPU per installare i driver e il software aggiuntivo necessari per eseguire TensorFlow su una GPU.
Scarica il codice sorgente di TensorFlow
Usa Git per clonare il repository TensorFlow :
git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow
Per impostazione predefinita il repository è il ramo di sviluppo master
. Puoi anche controllare un ramo di rilascio per creare:
git checkout branch_name # r2.2, r2.3, etc.
Configura la build
Le build di TensorFlow sono configurate dal file .bazelrc
nella directory root del repository. Gli script ./configure
o ./configure.py
possono essere utilizzati per regolare le impostazioni comuni.
Esegui lo script ./configure
dalla directory root del repository. Questo script ti chiederà la posizione delle dipendenze di TensorFlow e richiederà ulteriori opzioni di configurazione della build (flag del compilatore, ad esempio). Fare riferimento alla sezione Sessione di esempio per i dettagli.
./configure
Esiste anche una versione Python di questo script, ./configure.py
. Se si utilizza un ambiente virtuale, python configure.py
dà la priorità ai percorsi all'interno dell'ambiente, mentre ./configure
dà la priorità ai percorsi all'esterno dell'ambiente. In entrambi i casi è possibile modificare l'impostazione predefinita.
Sessione di esempio
Di seguito viene mostrato un esempio di esecuzione dello script ./configure
(la sessione potrebbe differire):
Opzioni di configurazione
Supporto GPU
dalla versione 2.18.0
Per il supporto GPU , imposta cuda=Y
durante la configurazione e specifica le versioni di CUDA e cuDNN, se richiesto. Bazel scaricherà automaticamente i pacchetti CUDA e CUDNN o punterà alle ridistribuzioni CUDA/CUDNN/NCCL sul file system locale, se necessario.
prima della versione 2.18.0
Per il supporto GPU , imposta cuda=Y
durante la configurazione e specifica le versioni di CUDA e cuDNN. Se sul tuo sistema sono installate più versioni di CUDA o cuDNN, imposta esplicitamente la versione invece di fare affidamento su quella predefinita. ./configure
crea collegamenti simbolici alle librerie CUDA del tuo sistema, quindi se aggiorni i percorsi delle librerie CUDA, questo passaggio di configurazione deve essere eseguito nuovamente prima della creazione.
Ottimizzazioni
Per i flag di ottimizzazione della compilazione, il valore predefinito ( -march=native
) ottimizza il codice generato per il tipo di CPU della macchina. Tuttavia, se crei TensorFlow per un tipo di CPU diverso, considera un flag di ottimizzazione più specifico. Controlla il manuale GCC per esempi.
Configurazioni preconfigurate
Sono disponibili alcune configurazioni di build preconfigurate che possono essere aggiunte al comando bazel build
, ad esempio:
-
--config=dbg
—Crea con informazioni di debug. Vedi CONTRIBUTING.md per i dettagli. -
--config=mkl
: supporto per Intel® MKL-DNN . -
--config=monolithic
—Configurazione per una build prevalentemente statica e monolitica.
Compila e installa il pacchetto pip
Opzioni di costruzione Bazel
Fare riferimento al riferimento della riga di comando di Bazel per le opzioni di creazione .
La creazione di TensorFlow dal sorgente può utilizzare molta RAM. Se il tuo sistema ha limiti di memoria, limita l'utilizzo della RAM di Bazel con: --local_ram_resources=2048
.
I pacchetti TensorFlow ufficiali sono realizzati con una toolchain Clang conforme allo standard dei pacchetti manylinux2014.
Costruisci il pacchetto
Per creare un pacchetto pip, è necessario specificare il flag --repo_env=WHEEL_NAME
. a seconda del nome fornito, verrà creato il pacchetto, ad esempio:
Per creare il pacchetto CPU tensorflow:
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_cpu
Per creare il pacchetto GPU tensorflow:
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow --config=cuda --config=cuda_wheel
Per creare il pacchetto TPU tensorflow:
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_tpu --config=tpu
Per creare un pacchetto notturno, imposta tf_nightly
invece di tensorflow
, ad esempio per creare un pacchetto notturno della CPU:
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tf_nightly_cpu
Di conseguenza, la ruota generata verrà posizionata in
bazel-bin/tensorflow/tools/pip_package/wheel_house/
Installa il pacchetto
Il nome del file .whl
generato dipende dalla versione di TensorFlow e dalla tua piattaforma. Utilizzare pip install
per installare il pacchetto, ad esempio:
pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl
Compilazione di Docker Linux
Le immagini di sviluppo Docker di TensorFlow rappresentano un modo semplice per configurare un ambiente per creare pacchetti Linux dal sorgente. Queste immagini contengono già il codice sorgente e le dipendenze necessarie per creare TensorFlow. Vai alla guida TensorFlow Docker per le istruzioni di installazione e l' elenco dei tag immagine disponibili .
Solo CPU
L'esempio seguente utilizza l'immagine :devel
per creare un pacchetto solo CPU dal codice sorgente TensorFlow più recente. Controlla la guida Docker per i tag TensorFlow -devel
disponibili.
Scarica l'immagine di sviluppo più recente e avvia un contenitore Docker che utilizzerai per creare il pacchetto pip :
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
Il comando docker run
precedente avvia una shell nella directory /tensorflow_src
, la radice dell'albero dei sorgenti. Monta la directory corrente dell'host nella directory /mnt
del contenitore e passa le informazioni dell'utente host al contenitore tramite una variabile ambientale (utilizzata per impostare le autorizzazioni: Docker può rendere la cosa complicata).
In alternativa, per creare una copia host di TensorFlow all'interno di un contenitore, monta l'albero di origine dell'host nella directory /tensorflow
del contenitore:
docker run -it -w /tensorflow -v /path/to/tensorflow:/tensorflow -v $PWD:/mnt \ -e HOST_PERMS="\\((id -u):\\)(id -g)" tensorflow/tensorflow:devel bash
Con l'albero di origine configurato, crea il pacchetto TensorFlow all'interno dell'ambiente virtuale del contenitore:
- Facoltativo: configura la build: questo richiede all'utente di rispondere alle domande sulla configurazione della build.
- Costruisci il pacchetto pip .
- Modifica le autorizzazioni di proprietà del file per l'esterno del contenitore.
./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
Installa e verifica il pacchetto all'interno del contenitore:
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__)"
Sul computer host, il pacchetto pip TensorFlow si trova nella directory corrente (con le autorizzazioni dell'utente host): ./tensorflow- version - tags .whl
Supporto GPU
Docker è il modo più semplice per creare supporto GPU per TensorFlow poiché il computer host richiede solo il driver NVIDIA® (non è necessario installare NVIDIA® CUDA® Toolkit ). Fare riferimento alla guida al supporto GPU e alla guida TensorFlow Docker per configurare nvidia-docker (solo Linux).
L'esempio seguente scarica l'immagine TensorFlow :devel-gpu
e utilizza nvidia-docker
per eseguire il contenitore abilitato per GPU. Questa immagine di sviluppo è configurata per creare un pacchetto pip con supporto GPU:
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
Quindi, all'interno dell'ambiente virtuale del contenitore, crea il pacchetto TensorFlow con supporto GPU:
./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
Installa e verifica il pacchetto all'interno del contenitore e controlla la presenza di una 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')))"
Configurazioni di build testate
Linux
processore
Versione | Versione pitone | Compilatore | Costruisci strumenti |
---|---|---|---|
tensorflow-2.17.0 | 3.9-3.12 | Clang 17.0.6 | Bazel 6.5.0 |
tensorflow-2.16.1 | 3.9-3.12 | Clang 17.0.6 | Bazel 6.5.0 |
tensorflow-2.15.0 | 3.9-3.11 | Clang 16.0.0 | Bazel 6.1.0 |
tensorflow-2.14.0 | 3.9-3.11 | Clang 16.0.0 | Bazel 6.1.0 |
tensorflow-2.13.0 | 3.8-3.11 | Clang 16.0.0 | Bazel 5.3.0 |
tensorflow-2.12.0 | 3.8-3.11 | CCG 9.3.1 | Bazel 5.3.0 |
tensorflow-2.11.0 | 3.7-3.10 | CCG 9.3.1 | Bazel 5.3.0 |
tensorflow-2.10.0 | 3.7-3.10 | CCG 9.3.1 | Bazel 5.1.1 |
tensorflow-2.9.0 | 3.7-3.10 | CCG 9.3.1 | Bazel 5.0.0 |
tensorflow-2.8.0 | 3.7-3.10 | CCG 7.3.1 | Bazel 4.2.1 |
tensorflow-2.7.0 | 3.7-3.9 | CCG 7.3.1 | Bazel 3.7.2 |
tensorflow-2.6.0 | 3.6-3.9 | CCG 7.3.1 | Bazel 3.7.2 |
tensorflow-2.5.0 | 3.6-3.9 | CCG 7.3.1 | Bazel 3.7.2 |
tensorflow-2.4.0 | 3.6-3.8 | CCG 7.3.1 | Bazel 3.1.0 |
tensorflow-2.3.0 | 3.5-3.8 | CCG 7.3.1 | Bazel 3.1.0 |
tensorflow-2.2.0 | 3.5-3.8 | CCG 7.3.1 | Bazel 2.0.0 |
tensorflow-2.1.0 | 2.7, 3.5-3.7 | CCG 7.3.1 | Bazel 0.27.1 |
tensorflow-2.0.0 | 2.7, 3.3-3.7 | CCG 7.3.1 | Bazel 0.26.1 |
tensorflow-1.15.0 | 2.7, 3.3-3.7 | CCG 7.3.1 | Bazel 0.26.1 |
tensorflow-1.14.0 | 2.7, 3.3-3.7 | CCG 4.8 | Bazel 0.24.1 |
tensorflow-1.13.1 | 2.7, 3.3-3.7 | CCG 4.8 | Bazel 0.19.2 |
tensorflow-1.12.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.15.0 |
tensorflow-1.11.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.15.0 |
tensorflow-1.10.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.15.0 |
tensorflow-1.9.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.11.0 |
tensorflow-1.8.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.10.0 |
tensorflow-1.7.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.10.0 |
tensorflow-1.6.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.9.0 |
tensorflow-1.5.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.8.0 |
tensorflow-1.4.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.5.4 |
tensorflow-1.3.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.4.5 |
tensorflow-1.2.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.4.5 |
tensorflow-1.1.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.4.2 |
tensorflow-1.0.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.4.2 |
GPU
Versione | Versione pitone | Compilatore | Costruisci strumenti | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow-2.17.0 | 3.9-3.12 | Clang 17.0.6 | Bazel 6.5.0 | 8.9 | 12.3 |
tensorflow-2.16.1 | 3.9-3.12 | Clang 17.0.6 | Bazel 6.5.0 | 8.9 | 12.3 |
tensorflow-2.15.0 | 3.9-3.11 | Clang 16.0.0 | Bazel 6.1.0 | 8.9 | 12.2 |
tensorflow-2.14.0 | 3.9-3.11 | Clang 16.0.0 | Bazel 6.1.0 | 8.7 | 11.8 |
tensorflow-2.13.0 | 3.8-3.11 | Clang 16.0.0 | Bazel 5.3.0 | 8.6 | 11.8 |
tensorflow-2.12.0 | 3.8-3.11 | CCG 9.3.1 | Bazel 5.3.0 | 8.6 | 11.8 |
tensorflow-2.11.0 | 3.7-3.10 | CCG 9.3.1 | Bazel 5.3.0 | 8.1 | 11.2 |
tensorflow-2.10.0 | 3.7-3.10 | CCG 9.3.1 | Bazel 5.1.1 | 8.1 | 11.2 |
tensorflow-2.9.0 | 3.7-3.10 | CCG 9.3.1 | Bazel 5.0.0 | 8.1 | 11.2 |
tensorflow-2.8.0 | 3.7-3.10 | CCG 7.3.1 | Bazel 4.2.1 | 8.1 | 11.2 |
tensorflow-2.7.0 | 3.7-3.9 | CCG 7.3.1 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow-2.6.0 | 3.6-3.9 | CCG 7.3.1 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow-2.5.0 | 3.6-3.9 | CCG 7.3.1 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow-2.4.0 | 3.6-3.8 | CCG 7.3.1 | Bazel 3.1.0 | 8.0 | 11.0 |
tensorflow-2.3.0 | 3.5-3.8 | CCG 7.3.1 | Bazel 3.1.0 | 7.6 | 10.1 |
tensorflow-2.2.0 | 3.5-3.8 | CCG 7.3.1 | Bazel 2.0.0 | 7.6 | 10.1 |
tensorflow-2.1.0 | 2.7, 3.5-3.7 | CCG 7.3.1 | Bazel 0.27.1 | 7.6 | 10.1 |
tensorflow-2.0.0 | 2.7, 3.3-3.7 | CCG 7.3.1 | Bazel 0.26.1 | 7.4 | 10.0 |
tensorflow_gpu-1.15.0 | 2.7, 3.3-3.7 | CCG 7.3.1 | Bazel 0.26.1 | 7.4 | 10.0 |
tensorflow_gpu-1.14.0 | 2.7, 3.3-3.7 | CCG 4.8 | Bazel 0.24.1 | 7.4 | 10.0 |
tensorflow_gpu-1.13.1 | 2.7, 3.3-3.7 | CCG 4.8 | Bazel 0.19.2 | 7.4 | 10.0 |
tensorflow_gpu-1.12.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.11.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.10.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.9.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.11.0 | 7 | 9 |
tensorflow_gpu-1.8.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.10.0 | 7 | 9 |
tensorflow_gpu-1.7.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.9.0 | 7 | 9 |
tensorflow_gpu-1.6.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.9.0 | 7 | 9 |
tensorflow_gpu-1.5.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.8.0 | 7 | 9 |
tensorflow_gpu-1.4.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.5.4 | 6 | 8 |
tensorflow_gpu-1.3.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.4.5 | 6 | 8 |
tensorflow_gpu-1.2.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.4.5 | 5.1 | 8 |
tensorflow_gpu-1.1.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.4.2 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 2.7, 3.3-3.6 | CCG 4.8 | Bazel 0.4.2 | 5.1 | 8 |
macOS
processore
Versione | Versione pitone | Compilatore | Costruisci strumenti |
---|---|---|---|
tensorflow-2.16.1 | 3.9-3.12 | Clang da Xcode 13.6 | Bazel 6.5.0 |
tensorflow-2.15.0 | 3.9-3.11 | Clang da xcode 10.15 | Bazel 6.1.0 |
tensorflow-2.14.0 | 3.9-3.11 | Clang da xcode 10.15 | Bazel 6.1.0 |
tensorflow-2.13.0 | 3.8-3.11 | Clang da xcode 10.15 | Bazel 5.3.0 |
tensorflow-2.12.0 | 3.8-3.11 | Clang da xcode 10.15 | Bazel 5.3.0 |
tensorflow-2.11.0 | 3.7-3.10 | Clang da xcode 10.14 | Bazel 5.3.0 |
tensorflow-2.10.0 | 3.7-3.10 | Clang da xcode 10.14 | Bazel 5.1.1 |
tensorflow-2.9.0 | 3.7-3.10 | Clang da xcode 10.14 | Bazel 5.0.0 |
tensorflow-2.8.0 | 3.7-3.10 | Clang da xcode 10.14 | Bazel 4.2.1 |
tensorflow-2.7.0 | 3.7-3.9 | Clang da xcode 10.11 | Bazel 3.7.2 |
tensorflow-2.6.0 | 3.6-3.9 | Clang da xcode 10.11 | Bazel 3.7.2 |
tensorflow-2.5.0 | 3.6-3.9 | Clang da xcode 10.11 | Bazel 3.7.2 |
tensorflow-2.4.0 | 3.6-3.8 | Clang da xcode 10.3 | Bazel 3.1.0 |
tensorflow-2.3.0 | 3.5-3.8 | Clang da xcode 10.1 | Bazel 3.1.0 |
tensorflow-2.2.0 | 3.5-3.8 | Clang da xcode 10.1 | Bazel 2.0.0 |
tensorflow-2.1.0 | 2.7, 3.5-3.7 | Clang da xcode 10.1 | Bazel 0.27.1 |
tensorflow-2.0.0 | 2.7, 3.5-3.7 | Clang da xcode 10.1 | Bazel 0.27.1 |
tensorflow-2.0.0 | 2.7, 3.3-3.7 | Clang da xcode 10.1 | Bazel 0.26.1 |
tensorflow-1.15.0 | 2.7, 3.3-3.7 | Clang da xcode 10.1 | Bazel 0.26.1 |
tensorflow-1.14.0 | 2.7, 3.3-3.7 | Clang da xcode | Bazel 0.24.1 |
tensorflow-1.13.1 | 2.7, 3.3-3.7 | Clang da xcode | Bazel 0.19.2 |
tensorflow-1.12.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.15.0 |
tensorflow-1.11.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.15.0 |
tensorflow-1.10.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.15.0 |
tensorflow-1.9.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.11.0 |
tensorflow-1.8.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.10.1 |
tensorflow-1.7.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.10.1 |
tensorflow-1.6.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.8.1 |
tensorflow-1.5.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.8.1 |
tensorflow-1.4.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.5.4 |
tensorflow-1.3.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.4.5 |
tensorflow-1.2.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.4.5 |
tensorflow-1.1.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.4.2 |
tensorflow-1.0.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.4.2 |
GPU
Versione | Versione pitone | Compilatore | Costruisci strumenti | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow_gpu-1.1.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.4.2 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 2.7, 3.3-3.6 | Clang da xcode | Bazel 0.4.2 | 5.1 | 8 |