Hướng dẫn cho nhà phát triển XLA

Hướng dẫn này sẽ hướng dẫn bạn cách bắt đầu phát triển dự án XLA.

Trước khi bắt đầu, hãy hoàn thành các điều kiện tiên quyết sau:

  1. Truy cập vào trang Đóng góp và xem lại quy trình đóng góp.
  2. Hãy ký Thoả thuận cấp phép cho người đóng góp nếu bạn chưa ký.
  3. Cài đặt hoặc định cấu hình các phần phụ thuộc sau:

Sau đó, hãy làm theo các bước bên dưới để lấy mã nguồn, thiết lập môi trường, tạo kho lưu trữ và tạo yêu cầu kéo.

Lấy mã

  1. Tạo một nhánh của kho lưu trữ XLA.
  2. Sao chép nhánh của kho lưu trữ, thay thế <USER> bằng tên người dùng GitHub của bạn:

        
            git clone https://github.com//xla.git
        
    

  3. Chuyển sang thư mục xla: cd xla

  4. Định cấu hình kho lưu trữ ngược từ xa:

        
            git remote add upstream https://github.com/openxla/xla.git
        
    

Thiết lập môi trường

  1. Cài đặt Bazel.

    Để tạo XLA, bạn phải cài đặt Bazel. Bạn nên cài đặt Bazel bằng Bazelisk. Công cụ này sẽ tự động tải phiên bản Bazel chính xác cho XLA xuống. Nếu không có Bazelisk, bạn có thể cài đặt Bazel theo cách thủ công.

  2. Tạo và chạy vùng chứa Docker TensorFlow.

    Để có hình ảnh TensorFlow Docker cho cả quá trình tạo CPU và GPU, hãy chạy lệnh sau:

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

Tạo

Xây dựng cho CPU:

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

Xây dựng cho 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/...

Bản dựng đầu tiên sẽ mất khá nhiều thời gian vì phải tạo toàn bộ ngăn xếp, bao gồm cả XLA, MLIR và StableHLO.

Để tìm hiểu thêm về cách tạo XLA, hãy xem phần Tạo từ nguồn.

Tạo yêu cầu kéo

Khi bạn đã sẵn sàng gửi các thay đổi để được xem xét, hãy tạo một yêu cầu kéo.

Để tìm hiểu về quy trình xem xét mã XLA, hãy xem Quy trình xem xét.