คู่มือนักพัฒนาซอฟต์แวร์ XLA

คู่มือนี้จะแสดงวิธีเริ่มต้นพัฒนาโปรเจ็กต์ XLA

ก่อนเริ่มต้น โปรดทำตามขั้นตอนเบื้องต้นต่อไปนี้

  1. ไปที่ CONTRIBUTING.md และตรวจสอบกระบวนการร่วมให้คำบรรยาย
  2. หากยังไม่ได้ดำเนินการ ให้ลงนามในข้อตกลงใบอนุญาตสำหรับ Contributor
  3. ติดตั้งหรือกำหนดค่าทรัพยากร Dependency ต่อไปนี้

จากนั้นทำตามขั้นตอนด้านล่างเพื่อรับซอร์สโค้ด ตั้งค่าสภาพแวดล้อม สร้างที่เก็บ และสร้างคำขอพุล

รับโค้ด

  1. สร้างส้อมของที่เก็บ XLA
  2. โคลนส้อมของที่เก็บ โดยแทนที่ <USER> ด้วยชื่อผู้ใช้ GitHub:

    git clone <a href="https://github.com/">https://github.com/</a><USER>/xla.git
    
  3. เปลี่ยนเป็นไดเรกทอรี xla: cd xla

  4. กำหนดค่าที่เก็บอัปสตรีมระยะไกลดังนี้

    git remote add upstream <a href="https://github.com/openxla/xla.git">https://github.com/openxla/xla.git</a>
    

ตั้งค่าสภาพแวดล้อม

  1. ติดตั้ง Bazel

    คุณต้องติดตั้ง Bazel เพื่อสร้าง XLA วิธีที่แนะนำในการติดตั้ง Bazel คือการใช้ Bazelisk ซึ่งจะดาวน์โหลด Bazel เวอร์ชันที่ถูกต้องสำหรับ XLA โดยอัตโนมัติ หาก Bazelisk ไม่พร้อมใช้งาน คุณสามารถติดตั้ง Bazel ด้วยตัวเองได้

  2. สร้างและเรียกใช้คอนเทนเนอร์ TensorFlow Docker

    หากต้องการรับอิมเมจ TensorFlow Docker สำหรับ CPU ให้เรียกใช้คำสั่งต่อไปนี้

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

    หรือหากต้องการรับอิมเมจ TensorFlow Docker สำหรับ GPU ให้เรียกใช้คำสั่งต่อไปนี้

    docker run --name xla_gpu -w /xla -it -d --rm -v $PWD:/xla tensorflow/tensorflow:devel-gpu bash
    

สร้าง

สร้างมาเพื่อ CPU:

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

สร้างมาเพื่อ GPU:

docker exec -e TF_NEED_CUDA=1 xla_gpu ./configure
docker exec xla_gpu bazel build --test_output=all --spawn_strategy=sandboxed //xla/...

บิลด์แรกของคุณจะใช้เวลาสักพักเนื่องจากต้องสร้างทั้งสแต็ก ซึ่งรวมถึง XLA, MLIR และ StableHLO

ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้าง XLA ได้ที่สร้างจากแหล่งที่มา

สร้างคำขอพุล

เมื่อคุณพร้อมที่จะส่งการเปลี่ยนแปลงเข้ารับการตรวจสอบ ให้สร้างคำขอแบบพุล

หากต้องการเรียนรู้เกี่ยวกับปรัชญาการตรวจสอบโค้ด XLA โปรดดูรีวิวโค้ด