เครื่องมือสร้างโปรไฟล์หน่วยความจำ

คุณสามารถใช้โปรไฟล์หน่วยความจําเพื่อแสดงภาพการใช้งานหน่วยความจําของ Accelerator เมื่อเวลาผ่านไป

แพลตฟอร์มที่รองรับ

TPU: รองรับ

GPU: รองรับ

การใช้เครื่องมือโปรไฟล์หน่วยความจำ

โปรไฟล์หน่วยความจํามีองค์ประกอบต่อไปนี้

  • ตัวเลือกรหัสหน่วยความจำที่ด้านบนของหน้าช่วยให้คุณมุ่งเน้นที่หน่วยความจำแบนด์วิดท์สูง (HBM) ที่แนบมากับตัวเร่งความเร็วอย่างใดอย่างหนึ่งที่อาจเชื่อมต่อกับโฮสต์ที่ทำการโปรไฟล์ หรือแม้แต่หน่วยความจำของโฮสต์ในบางกรณี
  • "กราฟไทม์ไลน์หน่วยความจํา" และ "สรุปโปรไฟล์หน่วยความจํา" จะบันทึกข้อมูลระดับสูงเกี่ยวกับการจอง การปลดปล่อย และการใช้งานหน่วยความจําในระหว่างเซสชันการโปรไฟล์ รวมถึงรายละเอียดเกี่ยวกับสแต็กและกอง และผลกระทบของการแยกส่วน
  • ตารางรายละเอียดหน่วยความจําให้ข้อมูลเกี่ยวกับโอเปอเรชันระดับเฟรมเวิร์กที่มีส่วนทำให้เกิดการใช้หน่วยความจํามากที่สุด นอกจากนี้ยังมีรายละเอียดเพิ่มเติมของแต่ละการดำเนินการ เช่น รูปร่าง ประเภทข้อมูล ฯลฯ หากคอมไพเลอร์ทำให้ข้อมูลนี้พร้อมใช้งานสำหรับ XProf ตารางจะแสดงรายละเอียดเหล่านี้ ณ จุดที่มีการใช้งานสูงสุดภายในกรอบเวลาการโปรไฟล์เพื่อช่วยแก้ไขข้อบกพร่องในกรณีที่หน่วยความจําไม่เพียงพอ (OOM)
  • การจัดสรรและการยกเลิกการจัดสรรจะได้รับการจัดการ (และเพิ่มลงในโปรไฟล์) โดยตัวจัดสรรรันไทม์ของ XLA ซึ่งเป็นเจ้าของพื้นที่หน่วยความจำ HBM ทั้งหมด
  • โปรดทราบว่าโดยทั่วไปแล้วโปรไฟล์หน่วยความจำจะมีประโยชน์และน่าสนใจมากกว่าสําหรับการโปรไฟล์ GPU มากกว่าภาระงาน TPU โดยทั่วไปแล้ว รูปแบบการเรียกใช้ TPU จะเกี่ยวข้องกับการจัดสรรล่วงหน้าจำนวนมากโดยคอมไพเลอร์ XLA แทนที่จะจัดสรรระหว่างการฝึกโมเดลหรือการอนุมาน คุณจึงมักจะเห็นว่าแผนภูมิการกําหนดค่ามีลักษณะเป็นเส้นนอนเรียบ การกําหนดค่าทั้งหมดอาจเกิดขึ้นที่จุดเริ่มต้นของโปรไฟล์ (หากเครื่องมือวิเคราะห์โปรไฟล์ทํางานอยู่ ณ จุดนั้นในการเรียกใช้) ทําให้มองเห็นได้ยาก
  • เมตริกการแยกส่วนในสรุปโปรไฟล์หน่วยความจำและกราฟไทม์ไลน์หน่วยความจำ (เป็นเปอร์เซ็นต์) จะช่วยระบุปัญหาการแยกส่วนของหน่วยความจำ ค่าการแยกส่วนสูงบ่งบอกว่าแม้ว่าอาจมีหน่วยความจำว่างทั้งหมดเพียงพอ แต่หน่วยความจำเหล่านั้นไม่ได้อยู่ติดกัน ดังนั้นคำขอจัดสรรขนาดใหญ่จึงอาจดำเนินการไม่สำเร็จ

ความแตกต่างที่สำคัญบางประการระหว่างเครื่องมือนี้กับเครื่องมือตรวจสอบหน่วยความจำมีดังนี้

  • เครื่องมือดูหน่วยความจำเป็นแบบคงที่โดยสมบูรณ์และมุ่งเน้นที่ลําดับโปรแกรม ส่วนโปรไฟล์หน่วยความจําจะแสดงมุมมองแบบไดนามิกเมื่อเวลาผ่านไปในช่วงที่ทําโปรไฟล์
  • เครื่องมือดูหน่วยความจําจะแสดงภาพการจัดสรรหน่วยความจําตามโมดูล XLA สำหรับภาระงานที่ประกอบด้วยโมดูล XLA หลายรายการ โปรไฟล์หน่วยความจําจะแสดงภาพรวมของหน่วยความจํา