สร้างจากซอร์ส

เอกสารนี้จะอธิบายวิธีสร้างคอมโพเนนต์ XLA

หากคุณไม่ได้โคลนที่เก็บ XLA หรือติดตั้ง Bazel โปรดดูที่ "เริ่มต้นใช้งาน" ของเอกสาร README

Linux

กำหนดค่า

บิลด์ XLA มีการกำหนดค่าโดยไฟล์ .bazelrc ในรูทของที่เก็บ ไดเรกทอรี คุณใช้สคริปต์ ./configure.py เพื่อปรับการตั้งค่าทั่วไปได้

หากต้องการเปลี่ยนการกำหนดค่า ให้เรียกใช้สคริปต์ ./configure.py จาก ไดเรกทอรีรากของที่เก็บ สคริปต์นี้มีแฟล็กสำหรับตำแหน่งของ XLA ทรัพยากร Dependency และตัวเลือกการกำหนดค่าบิลด์เพิ่มเติม (แฟล็กคอมไพเลอร์ ตัวอย่าง) ดูรายละเอียดได้ในส่วนเซสชันตัวอย่าง

การรองรับ CPU

เราขอแนะนำให้ใช้คอนเทนเนอร์ Docker ที่เหมาะสมในการสร้าง/ทดสอบ XLA เช่น คอนเทนเนอร์ Docker ของ TensorFlow:

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

การใช้คอนเทนเนอร์ Docker คุณจะสร้าง XLA ที่รองรับ CPU ได้โดยใช้สิ่งต่อไปนี้ คำสั่ง:

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

หากต้องการสร้างเป้าหมาย XLA ด้วยการรองรับ CPU โดยไม่ต้องมี Docker คุณต้องทำดังนี้ ติดตั้ง clang ปัจจุบัน XLA สร้างบน CI โดยมี clang-17 แต่เวอร์ชันก่อนหน้า ก็ควรใช้งานได้

apt install clang

จากนั้นกำหนดค่าและสร้างเป้าหมายโดยใช้คำสั่งต่อไปนี้

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

การรองรับ GPU

เราขอแนะนำให้ใช้คอนเทนเนอร์ Docker เดียวกันกับด้านบนเพื่อสร้าง XLA ด้วย GPU การสนับสนุน:

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

หากต้องการสร้าง XLA ที่มีการรองรับ GPU ให้ใช้คำสั่งต่อไปนี้

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

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับ อิมเมจ Docker GPU ของ TensorFlow ที่คุณดูเอกสารนี้ได้

คุณสามารถสร้างเป้าหมาย XLA ด้วยการรองรับ GPU โดยไม่ต้องมี Docker ได้เช่นกัน กำหนดค่าและ เป้าหมายของบิลด์โดยใช้คำสั่งต่อไปนี้

./configure.py --backend=CUDA

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

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับ CUDA แบบสัณฐาน โดยคุณสามารถดูเอกสารนี้ได้