Membangun dari sumber

Dokumen ini menjelaskan cara membuat komponen XLA.

Jika Anda tidak meng-clone repositori XLA atau menginstal Bazel, lihat bagian "Mulai" dari dokumen README.

Linux

Konfigurasi

Build XLA dikonfigurasi oleh file .bazelrc di direktori root repositori. Skrip ./configure.py dapat digunakan untuk menyesuaikan setelan umum.

Jika Anda perlu mengubah konfigurasi, jalankan skrip ./configure.py dari direktori utama repositori. Skrip ini memiliki flag untuk lokasi dependensi XLA dan opsi konfigurasi build tambahan (misalnya, flag compiler). Lihat bagian Contoh sesi untuk mengetahui detailnya.

Dukungan CPU

Sebaiknya gunakan container docker yang sesuai untuk mem-build/menguji XLA, seperti container docker TensorFlow:

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

Dengan container docker, Anda dapat mem-build XLA dengan dukungan CPU menggunakan perintah berikut:

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

Jika ingin membangun target XLA dengan dukungan CPU tanpa Docker, Anda perlu menginstal clang. XLA saat ini dibangun berdasarkan CI dengan clang-17, tetapi versi sebelumnya juga harus berfungsi:

apt install clang

Kemudian, konfigurasikan dan buat target menggunakan perintah berikut:

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

Dukungan GPU

Sebaiknya gunakan container docker yang sama seperti di atas untuk membangun XLA dengan dukungan GPU:

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

Untuk mem-build XLA dengan dukungan GPU, gunakan perintah berikut:

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

Jika ingin membangun target XLA dengan dukungan GPU tanpa Docker, Anda harus menginstal dependensi tambahan berikut: cuda-12.3, cuDNN-8.9.

Kemudian, konfigurasikan dan buat target menggunakan perintah berikut:

./configure.py --backend=CUDA

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

Untuk detail selengkapnya tentang gambar docker GPU TensorFlow, Anda dapat melihat dokumen ini.