Guia do desenvolvedor de XLA

Este guia mostra como começar a desenvolver o projeto XLA.

Antes de começar, conclua os seguintes pré-requisitos:

  1. Acesse CONTRIBUTING.md e analise o processo de contribuição.
  2. Se ainda não tiver feito isso, assine o Contrato de licença do colaborador.
  3. Instale ou configure as seguintes dependências:

Em seguida, siga as etapas abaixo para acessar o código-fonte, configurar um ambiente, criar o repositório e criar uma solicitação de pull.

Acessar o código

  1. Crie uma bifurcação do repositório XLA.
  2. 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
    
  3. Mude para o diretório xla: cd xla

  4. 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

  1. Instale o Bazel.

    Para criar o XLA, você precisa ter o Bazel instalado. A forma recomendada de instalar O Bazel está usando o Bazelisk (link em inglês). que faz o download automático da versão correta do Bazel para o XLA. Se o Bazelisk não estiver disponível, você poderá instalar o Bazel manualmente.

  2. Crie e execute um contêiner do Docker do TensorFlow.

    Para acessar a imagem do Docker do TensorFlow para criação de CPU e GPU, execute o comando abaixo:

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

Criar

Criação para CPU:

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

Criar para GPU:

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

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

O primeiro build vai demorar um pouco porque precisa criar toda a pilha, incluindo XLA, MLIR e StableHLO.

Para saber mais sobre como criar XLA, consulte Criar a partir da fonte.

Criar uma solicitação de envio

Quando estiver tudo pronto para enviar as mudanças para revisão, crie uma pull request.

Para saber mais sobre a filosofia da revisão de código do XLA, consulte Processo de Revisão.