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