XLA-Entwicklerleitfaden

In diesem Leitfaden erfährst du, wie du mit der Entwicklung des XLA-Projekts beginnen kannst.

Bevor Sie beginnen, müssen Sie die folgenden Voraussetzungen erfüllen:

  1. Rufe CONTRIBUTING.md auf und überprüfe den Beitragsprozess.
  2. Unterzeichnen Sie bitte die Lizenzvereinbarung für Beitragende, falls noch nicht geschehen.
  3. Installieren oder konfigurieren Sie die folgenden Abhängigkeiten:

Führen Sie dann die folgenden Schritte aus, um den Quellcode abzurufen, eine Umgebung einzurichten, das Repository und eine Pull-Anfrage zu erstellen.

Code abrufen

  1. Erstellen Sie eine Verzweigung des XLA-Repositorys.
  2. Klonen Sie den Fork des Repositorys und ersetzen Sie dabei <USER> durch Ihren GitHub-Nutzernamen:

    git clone <a href="https://github.com/">https://github.com/</a><USER>/xla.git
    
  3. Wechseln Sie zum Verzeichnis xla: cd xla

  4. Konfigurieren Sie das Remote-Upstream-Repository:

    git remote add upstream <a href="https://github.com/openxla/xla.git">https://github.com/openxla/xla.git</a>
    

Umgebung einrichten

  1. Installieren Sie Bazel.

    Zum Erstellen von XLA muss Bazel installiert sein. Die empfohlene Methode für die Installation von Baizel ist die Verwendung von Bazelisk. Damit wird automatisch die richtige Bazel-Version für XLA heruntergeladen. Wenn Bazelisk nicht verfügbar ist, können Sie Balken manuell installieren.

  2. Erstellen Sie einen TensorFlow-Docker-Container und führen Sie ihn aus.

    Führen Sie den folgenden Befehl aus, um das TensorFlow Docker-Image für die CPU abzurufen:

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

    Alternativ können Sie den folgenden Befehl ausführen, um das TensorFlow-Docker-Image für die GPU abzurufen:

    docker run --name xla_gpu -w /xla -it -d --rm -v $PWD:/xla tensorflow/tensorflow:devel-gpu bash
    

Build

Für CPU entwickeln:

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

Für GPU entwickeln:

docker exec -e TF_NEED_CUDA=1 xla_gpu ./configure
docker exec xla_gpu bazel build --test_output=all --spawn_strategy=sandboxed //xla/...

Ihr erster Build wird einige Zeit in Anspruch nehmen, da er den gesamten Stack einschließlich XLA, MLIR und StableHLO erstellt hat.

Weitere Informationen zum Erstellen von XLA finden Sie unter Aus der Quelle erstellen.

Pull-Anfrage erstellen

Wenn Sie die Änderungen zur Überprüfung senden möchten, erstellen Sie eine Pull-Anfrage.

Weitere Informationen zur XLA-Codeüberprüfungsphilosophie finden Sie unter Codeüberprüfungen.