Tạo từ nguồn

Tài liệu này mô tả cách tạo các thành phần XLA.

Nếu bạn chưa nhân bản kho lưu trữ XLA hoặc cài đặt Bazel, hãy xem các phần ban đầu của Hướng dẫn dành cho nhà phát triển XLA.

Linux

Định cấu hình

Các bản dựng XLA được định cấu hình bằng tệp .bazelrc trong thư mục gốc của kho lưu trữ. Bạn có thể dùng tập lệnh ./configure.py để điều chỉnh các chế độ cài đặt phổ biến.

Nếu bạn cần thay đổi cấu hình, hãy chạy tập lệnh ./configure.py trong thư mục gốc của kho lưu trữ. Tập lệnh này có các cờ cho vị trí của các phần phụ thuộc XLA và các tuỳ chọn cấu hình bản dựng bổ sung (ví dụ: cờ trình biên dịch). Hãy tham khảo phần Phiên mẫu để biết thông tin chi tiết.

Hỗ trợ CPU

Bạn nên sử dụng một vùng chứa Docker phù hợp để tạo/kiểm thử XLA, chẳng hạn như vùng chứa Docker của TensorFlow:

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

Khi sử dụng vùng chứa Docker, bạn có thể tạo XLA có hỗ trợ CPU bằng các lệnh sau:

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

Nếu muốn tạo các mục tiêu XLA có hỗ trợ CPU mà không cần Docker, bạn cần cài đặt clang. XLA hiện xây dựng trên CI với clang-17, nhưng các phiên bản trước đó cũng sẽ hoạt động:

apt install clang

Sau đó, hãy định cấu hình và tạo mục tiêu bằng các lệnh sau:

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

Hỗ trợ GPU

Bạn nên sử dụng cùng một vùng chứa Docker như trên để tạo XLA có hỗ trợ GPU:

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

Để tạo XLA có hỗ trợ GPU, hãy sử dụng lệnh sau:

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

Để biết thêm thông tin chi tiết về các hình ảnh GPU Docker của TensorFlow, bạn có thể xem tài liệu này.

Bạn cũng có thể tạo các mục tiêu XLA có hỗ trợ GPU mà không cần Docker. Định cấu hình và tạo mục tiêu bằng các lệnh sau:

./configure.py --backend=CUDA

bazel build --test_output=all --spawn_strategy=sandboxed //xla/...

Để biết thêm thông tin chi tiết về CUDA kín, bạn có thể xem tài liệu này.