XLA 開發人員指南

本指南說明如何開始開發 XLA 專案。

在開始之前,請先完成下列必要條件:

  1. 前往 CONTRIBUTING.md 並查看捐款程序。
  2. 如果您尚未簽署《Contributor License Agreement》,請先簽署。
  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. 安裝 Bazel

    如要建構 XLA,您必須安裝 Bazel。建議您使用 Bazelisk 安裝 Bazelisk,藉此自動下載 XLA 適用的 Bazel 版本。如果無法使用 Bazelisk,您可以手動安裝 Bazel

  2. 建立並執行 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 程式碼審查的運作方式,請參閱「程式碼審查」。