В этом руководстве показано, как приступить к разработке проекта XLA.
Прежде чем начать, выполните следующие предварительные условия:
- Перейдите на страницу «Внесение вклада» и просмотрите процесс внесения вклада.
- Если вы еще этого не сделали, подпишите Лицензионное соглашение для участников .
- Установите или настройте следующие зависимости:
Затем выполните следующие действия, чтобы получить исходный код, настроить среду, построить репозиторий и создать запрос на включение.
Получить код
- Создайте форк репозитория XLA .
Клонируйте свою вилку репозитория, заменив
{USER}
своим именем пользователя GitHub:git clone <a href="https://github.com/">https://github.com/</a>{USER}/xla.git
Перейдите в каталог
xla
:cd xla
Настройте удаленный восходящий репозиторий:
git remote add upstream <a href="https://github.com/openxla/xla.git">https://github.com/openxla/xla.git</a>
Настройка среды
Установите Базель .
Для сборки XLA у вас должен быть установлен Bazel. Рекомендуемый способ установки Bazel — использование Bazelisk , который автоматически загружает правильную версию Bazel для XLA. Если Bazelisk недоступен, вы можете установить Bazel вручную.
Создайте и запустите 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/...
./configure.py --backend=CUDA
bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
Ваша первая сборка займет довольно много времени, поскольку она должна собрать весь стек, включая XLA, MLIR и StableHLO.
Дополнительные сведения о сборке XLA см. в разделе Сборка из исходного кода .
Создать запрос на включение
Когда вы будете готовы отправить изменения на проверку, создайте запрос на включение .
Чтобы узнать о философии проверки кода XLA, см. раздел «Процесс проверки» .