Este guia mostra como começar a desenvolver o projeto do XLA.
Antes de começar, conclua os seguintes pré-requisitos:
- Acesse CONTRIBUTING.md e analise o processo de contribuição.
- Se você ainda não fez isso, assine o Contrato de licença de colaborador.
- Instale ou configure as seguintes dependências:
Em seguida, siga as etapas abaixo para conseguir o código-fonte, configurar um ambiente, criar o repositório e criar uma solicitação de envio.
Acessar o código
- Crie uma bifurcação do repositório do XLA.
Clone a bifurcação do repositório, substituindo
<USER>
pelo seu nome de usuário do GitHub:git clone <a href="https://github.com/">https://github.com/</a><USER>/xla.git
Mude para o diretório
xla
:cd xla
Configure o repositório upstream remoto:
git remote add upstream <a href="https://github.com/openxla/xla.git">https://github.com/openxla/xla.git</a>
Configurar um ambiente
Instale o Bazel.
Para criar o XLA, você precisa ter o Bazel instalado. A maneira recomendada de instalar o Bazel é usando o Bazelisk, que faz o download automático da versão correta do Bazel para o XLA. Se o Bazelisk estiver indisponível, você poderá instalar o Bazel manualmente.
Crie e execute um contêiner do TensorFlow Docker.
Para conseguir a imagem Docker do TensorFlow para CPU, execute o seguinte comando:
docker run --name xla -w /xla -it -d --rm -v $PWD:/xla tensorflow/build:latest-python3.9 bash
Como alternativa, para receber a imagem do Docker do TensorFlow para GPU, execute o seguinte comando:
docker run --name xla_gpu -w /xla -it -d --rm -v $PWD:/xla tensorflow/tensorflow:devel-gpu bash
Criar
Criação para CPU:
docker exec xla ./configure
docker exec xla bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
Criação para GPU:
docker exec -e TF_NEED_CUDA=1 xla_gpu ./configure
docker exec xla_gpu bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
Seu primeiro build vai demorar um pouco porque precisa criar toda a pilha, incluindo XLA, MLIR e StableHLO.
Para saber mais sobre a criação de XLA, consulte Criar a partir da origem.
Criar uma solicitação de envio
Quando estiver tudo pronto para enviar as mudanças para revisão, crie uma solicitação de envio.
Para saber mais sobre a filosofia de revisão de código do XLA, consulte Avaliações de código.