本指南介绍如何开始开发 XLA 项目。
在开始之前,请完成以下前提条件:
- 前往 CONTRIBUTING.md 并查看贡献流程。
- 如果您尚未签署贡献者许可协议,请签署该协议。
- 安装或配置以下依赖项:
然后,按照以下步骤获取源代码、设置环境、构建代码库并创建拉取请求。
获取代码
- 创建 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>
设置环境
安装 Bazel。
要构建 XLA,您必须安装 Bazel。建议使用 Bazelisk 安装 Bazel,它会自动为 XLA 下载正确的 Bazel 版本。如果没有 Bazelisk,您可以手动安装 Bazel。
创建并运行 TensorFlow Docker 容器。
如需获取用于 CPU 和 GPU 构建的 TensorFlow Docker 映像,请运行 以下命令:
docker run --name xla -w /xla -it -d --rm -v $PWD:/xla tensorflow/build:latest-python3.9 bash
构建
针对 CPU 进行构建:
docker exec xla ./configure.py --backend=CPU
docker exec xla bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
针对 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/...
第一次构建需要很长时间,因为它必须构建整个堆栈,包括 XLA、MLIR 和 StableHLO。
如需详细了解如何构建 XLA,请参阅从源代码构建。
创建拉取请求
当您准备好将更改送审时, 拉取请求。
如需了解 XLA 代码审核理念,请参阅审核流程。