W tym dokumencie opisano tworzenie komponentów XLA.
Jeśli nie sklonowałeś(-aś) repozytorium XLA ani nie zainstalowałeś(-aś) usługi Bazel, zapoznaj się z „Rozpocznij” dokumentu README.
Linux
Skonfiguruj
Kompilacje XLA są konfigurowane przez plik .bazelrc
w katalogu głównym repozytorium
katalogu. Za pomocą skryptu ./configure.py
można dostosowywać typowe ustawienia.
Jeśli musisz zmienić konfigurację, uruchom skrypt ./configure.py
z
w katalogu głównym repozytorium. Ten skrypt ma flagi lokalizacji XLA
zależności i dodatkowych opcji konfiguracji kompilacji (flagi kompilatora,
). Szczegółowe informacje znajdziesz w sekcji Przykładowa sesja.
Obsługa procesora
Do kompilacji/testowania XLA zalecamy użycie odpowiedniego kontenera Dockera, takiego jak Kontener Dockera TensorFlow:
docker run --name xla -w /xla -it -d --rm -v $PWD:/xla tensorflow/build:latest-python3.9 bash
Za pomocą kontenera Dockera możesz utworzyć XLA z obsługą procesora przy użyciu polecenia:
docker exec xla ./configure.py --backend=CPU
docker exec xla bazel build //xla/... --spawn_strategy=sandboxed --test_output=all
Jeśli chcesz utworzyć cele XLA z obsługą procesora bez Dockera, musisz: Zainstaluj clang. XLA obecnie opiera się na CI z użyciem clang-17, ale we wcześniejszych wersjach też powinna działać:
apt install clang
Następnie skonfiguruj i utwórz cele, używając tych poleceń:
./configure.py --backend=CPU
bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
Obsługa GPU
Do utworzenia XLA z GPU zalecamy użycie tego samego kontenera Dockera co powyżej. pomoc:
docker run --name xla_gpu -w /xla -it -d --rm -v $PWD:/xla tensorflow/build:latest-python3.9 bash
Aby utworzyć XLA z obsługą GPU, użyj tego polecenia:
docker exec xla_gpu ./configure.py --backend=CUDA
docker exec xla_gpu bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
Więcej informacji na temat: Obrazy Dockera GPU TensorFlow, które możesz zobaczyć w tym dokumencie
Możesz także tworzyć cele XLA z obsługą GPU bez Dockera. Skonfiguruj i utwórz cele, używając tych poleceń:
./configure.py --backend=CUDA
bazel build --test_output=all --spawn_strategy=sandboxed //xla/...
Więcej informacji na temat: hermetycznej CUDA znajdziesz w tym dokumencie.