Dokumen ini menjelaskan cara membangun komponen XLA.
Jika Anda tidak meng-clone repositori XLA atau menginstal Bazel, lihat bagian "Mulai" di dokumen README.
Linux
Mengonfigurasi
Build XLA dikonfigurasi oleh file .bazelrc
di direktori root
repositori. Skrip ./configure
atau ./configure.py
dapat digunakan untuk menyesuaikan setelan umum.
Jika Anda perlu mengubah konfigurasi, jalankan skrip ./configure
dari
direktori utama repositori. Skrip ini akan meminta lokasi dependensi XLA
dan meminta opsi konfigurasi build tambahan (misalnya, tanda compiler). Lihat bagian Contoh sesi untuk mengetahui detailnya.
./configure
Ada juga versi python dari skrip ini, ./configure.py
. Jika menggunakan
lingkungan virtual, python configure.py
akan memprioritaskan jalur di dalam
lingkungan, sedangkan ./configure
akan memprioritaskan jalur di luar lingkungan. Dalam
kedua kasus, Anda dapat mengubah setelan default.
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/tensorflow:latest-gpu bash
Dengan menggunakan container docker, Anda dapat mem-build XLA dengan dukungan CPU menggunakan perintah berikut:
docker exec xla ./configure
docker exec xla bazel build //xla/... --spawn_strategy=sandboxed --test_output=all
Jika Anda ingin membangun target XLA dengan dukungan CPU tanpa Docker, Anda harus menginstal gcc-10:
apt install gcc-10 g++-10
Kemudian, konfigurasikan dan buat target menggunakan perintah berikut:
yes '' | GCC_HOST_COMPILER_PATH=/usr/bin/gcc-10 CC=/usr/bin/gcc-10 TF_NEED_ROCM=0 TF_NEED_CUDA=0 TF_CUDA_CLANG=0 ./configure
bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
Dukungan GPU
Sebaiknya gunakan container docker GPU untuk mem-build XLA dengan dukungan GPU, seperti:
docker run --name xla_gpu -w /xla -it -d --rm -v $PWD:/xla tensorflow/tensorflow:devel-gpu bash
Untuk membangun XLA dengan dukungan GPU, gunakan perintah berikut:
docker exec -e TF_NEED_CUDA=1 xla_gpu ./configure
docker exec xla_gpu bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
Jika ingin membangun target XLA dengan dukungan GPU tanpa Docker, Anda perlu menginstal dependensi tambahan berikut ke dependensi CPU: cuda-11.2
, cuDNN-8.1
.
Kemudian, konfigurasikan dan buat target menggunakan perintah berikut:
yes '' | GCC_HOST_COMPILER_PATH=/usr/bin/gcc-10 CC=/usr/bin/gcc-10 TF_NEED_ROCM=0 TF_NEED_CUDA=1 TF_CUDA_CLANG=0 ./configure
bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
Untuk detail selengkapnya mengenai gambar docker GPU TensorFlow, Anda dapat melihat dokumen ini.