Руководство разработчика XLA

В этом руководстве показано, как приступить к разработке проекта XLA.

Прежде чем начать, выполните следующие предварительные условия:

  1. Перейдите на CONTRIBUTING.md и просмотрите процесс внесения вклада.
  2. Если вы еще этого не сделали, подпишите Лицензионное соглашение для участников .
  3. Установите или настройте следующие зависимости:

Затем выполните следующие действия, чтобы получить исходный код, настроить среду, построить репозиторий и создать запрос на включение.

Получить код

  1. Создайте форк репозитория XLA .
  2. Клонируйте свою вилку репозитория, заменив <USER> своим именем пользователя GitHub:

    git clone <a href="https://github.com/">https://github.com/</a><USER>/xla.git
    
  3. Перейдите в каталог xla : cd xla

  4. Настройте удаленный восходящий репозиторий:

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

Настройка среды

  1. Установите Базель .

    Для сборки XLA у вас должен быть установлен Bazel. Рекомендуемый способ установки Bazel — использование Bazelisk , который автоматически загружает правильную версию Bazel для XLA. Если Bazelisk недоступен, вы можете установить Bazel вручную.

  2. Создайте и запустите Docker-контейнер TensorFlow .

    Чтобы получить образ TensorFlow Docker для сборки как процессора, так и графического процессора, выполните следующую команду:

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

Строить

Сборка для процессора:

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

Сборка для графического процессора:

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

Ваша первая сборка займет довольно много времени, поскольку она должна собрать весь стек, включая XLA, MLIR и StableHLO.

Дополнительные сведения о сборке XLA см. в разделе Сборка из исходного кода .

Создать запрос на включение

Когда вы будете готовы отправить изменения на проверку, создайте запрос на включение .

Чтобы узнать о философии проверки кода XLA, см. раздел «Проверки кода» .