Questa guida mostra come iniziare a sviluppare il progetto XLA.
Prima di iniziare, completa i seguenti prerequisiti:
- Vai a CONTRIBUTING.md ed esamina la procedura di contribuzione.
- Se non l'hai ancora fatto, firma il Contratto di licenza di Collaboratori.
- 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
- Crea un fork del repository XLA.
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
Cambia nella directory
xla
:cd xla
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
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.
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.