本指南說明如何開始開發 XLA 專案。
在開始之前,請先完成下列必要條件:
- 前往 CONTRIBUTING.md 並查看捐款程序。
- 如果您尚未簽署《Contributor License Agreement》,請先簽署。
- 安裝或設定下列依附元件:
然後按照下列步驟取得原始碼、設定環境、建構存放區及建立提取要求。
取得程式碼
- 建立 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 安裝 Bazelisk,藉此自動下載 XLA 適用的 Bazel 版本。如果無法使用 Bazelisk,您可以手動安裝 Bazel。
建立並執行 TensorFlow Docker 容器。
如要取得 CPU 適用的 TensorFlow Docker 映像檔,請執行下列指令:
docker run --name xla -w /xla -it -d --rm -v $PWD:/xla tensorflow/build:latest-python3.9 bash
或者,如要取得 GPU 適用的 TensorFlow Docker 映像檔,請執行下列指令:
docker run --name xla_gpu -w /xla -it -d --rm -v $PWD:/xla tensorflow/tensorflow:devel-gpu bash
建構
針對 CPU 進行建構:
docker exec xla ./configure
docker exec xla bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
針對 GPU 進行建構:
docker exec -e TF_NEED_CUDA=1 xla_gpu ./configure
docker exec xla_gpu bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
您的第一個版本會需要花很多時間,因為必須建構整個堆疊,包括 XLA、MLIR 和 StableHLO。
如要進一步瞭解如何建構 XLA,請參閱「從原始碼開始建構」。
建立提取要求
準備好將變更送審時,請建立提取要求。
如要瞭解 XLA 程式碼審查的運作方式,請參閱「程式碼審查」。