Aus Quelle erstellen

In diesem Dokument wird die Erstellung von XLA-Komponenten beschrieben.

Wenn Sie das XLA-Repository nicht geklont oder Bazel nicht installiert haben, lesen Sie die ersten Abschnitte des XLA-Entwicklerleitsfadens.

Linux

Konfigurieren

XLA-Builds werden über die Datei .bazelrc im Stammverzeichnis des Repositories konfiguriert. Mit dem ./configure.py-Script können häufig verwendete Einstellungen angepasst werden.

Wenn Sie die Konfiguration ändern möchten, führen Sie das ./configure.py-Script aus dem Stammverzeichnis des Repositorys aus. Dieses Skript hat Flags für den Speicherort von XLA-Abhängigkeiten und zusätzliche Build-Konfigurationsoptionen (z. B. Compiler-Flags). Weitere Informationen finden Sie im Abschnitt Beispielsitzung.

CPU-Unterstützung

Wir empfehlen, einen geeigneten Docker-Container zum Erstellen und Testen von XLA zu verwenden, z. B. den Docker-Container von TensorFlow:

docker run --name xla -w /xla -it -d --rm -v $PWD:/xla tensorflow/build:latest-python3.9 bash

Mit einem Docker-Container können Sie XLA mit CPU-Unterstützung mit den folgenden Befehlen erstellen:

docker exec xla ./configure.py --backend=CPU
docker exec xla bazel build //xla/...  --spawn_strategy=sandboxed --test_output=all

Wenn Sie XLA-Ziele mit CPU-Unterstützung ohne Docker erstellen möchten, müssen Sie clang installieren. XLA baut derzeit auf CI mit Clang-17 auf, aber frühere Versionen sollten auch funktionieren:

apt install clang

Konfigurieren und erstellen Sie dann Ziele mit den folgenden Befehlen:

./configure.py --backend=CPU
bazel build --test_output=all --spawn_strategy=sandboxed //xla/...

GPU-Unterstützung

Wir empfehlen, denselben Docker-Container wie oben zu verwenden, um XLA mit GPU-Unterstützung zu erstellen:

docker run --name xla_gpu -w /xla -it -d --rm -v $PWD:/xla tensorflow/build:latest-python3.9 bash

Verwenden Sie den folgenden Befehl, um XLA mit GPU-Unterstützung zu erstellen:

docker exec xla_gpu ./configure.py --backend=CUDA
docker exec xla_gpu bazel build --test_output=all --spawn_strategy=sandboxed //xla/...

Weitere Informationen zu den GPU-Docker-Images von TensorFlow finden Sie in diesem Dokument.

Sie können XLA-Ziele auch ohne Docker mit GPU-Unterstützung erstellen. Konfigurieren und erstellen Sie Ziele mit den folgenden Befehlen:

./configure.py --backend=CUDA

bazel build --test_output=all --spawn_strategy=sandboxed //xla/...

Weitere Informationen zu hermetischer CUDA finden Sie in diesem Dokument.