Guida per gli sviluppatori XLA

Questa guida mostra come iniziare a sviluppare il progetto XLA.

Prima di iniziare, completa i seguenti prerequisiti:

  1. Vai a CONTRIBUTING.md ed esamina la procedura di contribuzione.
  2. Se non l'hai ancora fatto, firma il Contratto di licenza di Collaboratori.
  3. Installa o configura le seguenti dipendenze:

Quindi segui i passaggi riportati di seguito per ottenere il codice sorgente, configurare un ambiente, creare il repository e creare una richiesta di pull.

Ottieni il codice

  1. Crea un fork del repository XLA.
  2. Clona il fork del repository, sostituendo <USER> con il tuo nome utente GitHub:

    git clone <a href="https://github.com/">https://github.com/</a><USER>/xla.git
    
  3. Cambia nella directory xla: cd xla

  4. Configura il repository upstream remoto:

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

Configura un ambiente

  1. Installa Bazel.

    Per creare XLA, devi avere installato Bazel. Il metodo consigliato per installare Bazel è utilizzare Bazelisk, che scarica automaticamente la versione Bazel corretta per XLA. Se Bazelisk non è disponibile, puoi installare Bazel manualmente.

  2. Crea ed esegui un container Docker TensorFlow.

    Per ottenere l'immagine Docker TensorFlow per la CPU, esegui questo comando:

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

    In alternativa, per ottenere l'immagine Docker di TensorFlow per GPU, esegui questo comando:

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

Build

Crea per la CPU:

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

Crea per GPU:

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

La tua prima build richiederà un po' di tempo perché deve creare l'intero stack, inclusi XLA, MLIR e StableHLO.

Per scoprire di più sulla creazione di XLA, consulta Creare dal codice sorgente.

Crea una richiesta di pull

Quando è tutto pronto per inviare le modifiche per la revisione, crea una richiesta di pull.

Per scoprire di più sulla filosofia di revisione del codice XLA, consulta Recensioni sul codice.