การปรับขนาดภาระงาน AI ให้เหมาะสม: การจับคู่ทรัพยากร GPU กับความต้องการของโมเดล
อัปเดต 11 ธันวาคม 2025
อัปเดตธันวาคม 2025: 67% ของทีม AI ขนาดเล็กจับคู่ฮาร์ดแวร์แรกกับความต้องการภาระงานไม่ตรงกัน—40% จัดสรรเกินหรือต่ำกว่าความต้องการ เครื่องมือ Zoomer ของ Meta สร้างรายงานการวิเคราะห์ประสิทธิภาพหลายหมื่นรายงานต่อวัน กลายเป็นมาตรฐานอุตสาหกรรม ภายในปี 2025 76% ของภาระงาน AI ระดับองค์กรต้องการการเพิ่มประสิทธิภาพทรัพยากรแบบอัตโนมัติ VRAM ยังคงเป็นข้อจำกัดหลัก แต่แบนด์วิดท์ PCIe, การจัดวาง NUMA และปริมาณงานจัดเก็บข้อมูลเป็นตัวกำหนดประสิทธิภาพจริงมากขึ้นเรื่อยๆ
เครื่องมือ Zoomer ของ Meta ได้กลายเป็นมาตรฐานโดยพฤตินัยทั่วทั้งบริษัทสำหรับการเพิ่มประสิทธิภาพภาระงาน GPU โดยสร้างรายงานการวิเคราะห์ประสิทธิภาพหลายหมื่นรายงานต่อวัน[^1] ทำงานข้ามภาระงานการฝึกและการอนุมานทั้งหมด Zoomer ช่วยลดเวลาการฝึกและปรับปรุง QPS อย่างมีนัยสำคัญผ่านการดีบักและการเพิ่มประสิทธิภาพอัจฉริยะ เครื่องมือนี้แสดงให้เห็นถึงการพัฒนาของการปรับขนาดภาระงานให้เหมาะสมจากการปรับแต่งด้วยมือไปสู่การเพิ่มประสิทธิภาพแบบอัตโนมัติและต่อเนื่องที่ทำงานในระดับ hyperscale
การศึกษาแสดงให้เห็นว่าเกือบ 67% ของทีม AI ขนาดเล็กจับคู่ฮาร์ดแวร์แรกกับความต้องการภาระงานจริงไม่ตรงกัน โดย 40% จัดสรรเกินหรือต่ำกว่าความต้องการ[^2] ปัญหาเหล่านี้เกิดขึ้นเมื่อทีมมุ่งเน้นเฉพาะ VRAM และละเลยขีดจำกัดที่เชื่อมโยงกัน เช่น แบนด์วิดท์ PCIe, การจัดวาง NUMA และปริมาณงานจัดเก็บข้อมูล การวิเคราะห์ตลาดชี้ให้เห็นว่าภายในปี 2025 ประมาณ 76% ของภาระงาน AI ระดับองค์กรจะต้องการการเพิ่มประสิทธิภาพทรัพยากรแบบอัตโนมัติในรูปแบบใดรูปแบบหนึ่งเพื่อรักษาความคุ้มค่า[^3] วิธีการปรับขนาดให้เหมาะสมเปลี่ยนการจัดสรรทรัพยากร GPU จากการคาดเดาให้เป็นหลักวิศวกรรม
การทำความเข้าใจความต้องการของภาระงาน
การปรับขนาดให้เหมาะสมอย่างมีประสิทธิภาพต้องการความเข้าใจลักษณะภาระงานในหลายมิติของทรัพยากร
ความต้องการหน่วยความจำ
ความจุ VRAM กำหนดโมเดลที่ใหญ่ที่สุดที่สามารถใส่ใน GPU ได้โดยไม่ต้องถ่ายโอนหรือแบ่งพาร์ติชัน โมเดล Transformer เติบโตเชิงเส้นตามจำนวนพารามิเตอร์ ความยาวบริบท และขนาดแบตช์ โมเดล 7B พารามิเตอร์ที่ความแม่นยำ FP16 ต้องการประมาณ 14GB เฉพาะสำหรับน้ำหนัก บวกหน่วยความจำเพิ่มเติมสำหรับ activations, optimizer states และ KV cache
แบนด์วิดท์หน่วยความจำส่งผลต่อปริมาณงานสำหรับภาระงานที่ถูกจำกัดด้วยหน่วยความจำ ภาระงานการอนุมานมักติดคอที่แบนด์วิดท์หน่วยความจำมากกว่าความจุการประมวลผล A100 ให้แบนด์วิดท์ HBM 2 TB/s ในขณะที่ L40S ให้ 864 GB/s ส่งผลต่อปริมาณงานการอนุมานตามสัดส่วนสำหรับโมเดลที่ถูกจำกัดด้วยหน่วยความจำ
ความต้องการความจุหน่วยความจำแตกต่างกันอย่างมากระหว่างการฝึกและการอนุมาน การฝึกต้องการหน่วยความจำสำหรับน้ำหนักโมเดล, gradients, optimizer states และ activations การอนุมานต้องการเฉพาะน้ำหนักและ activations ในเวลาอนุมาน โมเดลที่ต้องการการฝึกด้วย 8-GPU อาจให้บริการการอนุมานบน GPU เดียวด้วยการเพิ่มประสิทธิภาพที่เหมาะสม
ความต้องการการประมวลผล
ความจุ FLOPS กำหนดปริมาณงานสูงสุดสำหรับภาระงานที่ถูกจำกัดด้วยการประมวลผล การฝึกโมเดลขนาดใหญ่มักเป็นการทำงานที่ถูกจำกัดด้วยการประมวลผล ได้ประโยชน์จาก GPU ที่มี FLOPS สูงกว่า การดำเนินการเมทริกซ์หนาแน่นใช้ทรัพยากรการประมวลผล GPU อย่างเต็มที่เมื่อกำหนดค่าอย่างเหมาะสม
การดำเนินการแบบ sparse และ attention แสดงรูปแบบการประมวลผลที่แตกต่างกัน Flash attention และการเพิ่มประสิทธิภาพที่คล้ายกันเปลี่ยนการแลกเปลี่ยนระหว่างการประมวลผลและหน่วยความจำ เปลี่ยนภาระงานบางส่วนจากการถูกจำกัดด้วยหน่วยความจำเป็นการถูกจำกัดด้วยการประมวลผล การวิเคราะห์ภาระงานต้องคำนึงถึงการเพิ่มประสิทธิภาพอัลกอริทึมเหล่านี้
การเลือกความแม่นยำส่งผลต่อทั้งความต้องการหน่วยความจำและการประมวลผล การฝึก FP16 และ BF16 ใช้หน่วยความจำครึ่งหนึ่งของ FP32 ในขณะที่เพิ่มปริมาณงานบน tensor cores การ quantization INT8 และ INT4 ลดความต้องการเพิ่มเติมสำหรับการอนุมาน ความแม่นยำที่เลือกสำหรับภาระงานกำหนดรูปร่างพื้นฐานของความต้องการฮาร์ดแวร์
ความต้องการการเชื่อมต่อ
ภาระงานหลาย GPU ต้องการแบนด์วิดท์การเชื่อมต่อที่ตรงกับกลยุทธ์ parallelism Tensor parallelism ข้าม GPU ต้องการแบนด์วิดท์สูงสุด ได้ประโยชน์จาก aggregate ของ NVLink ที่ 900 GB/s Pipeline parallelism ทนต่อแบนด์วิดท์ต่ำกว่าที่มี latency สูงกว่า การซิงโครไนซ์ gradient ของ Data parallelism ต้องการแบนด์วิดท์ปานกลางที่ปรับขนาดตามขนาดโมเดล
ภาระงาน GPU เดียวอาจยังต้องการแบนด์วิดท์ PCIe สำหรับการโหลดข้อมูล การให้บริการการอนุมานปริมาณงานสูงอ่านอินพุตโมเดลและเขียนเอาต์พุตอย่างต่อเนื่อง PCIe Gen5 ให้ 64 GB/s ที่การอนุมานแบตช์สูงสามารถใช้จนเต็ม
การวิเคราะห์ประสิทธิภาพและการวัด
การปรับขนาดให้เหมาะสมต้องการการวัดมากกว่าการคาดเดาเกี่ยวกับพฤติกรรมภาระงาน
เครื่องมือวิเคราะห์ประสิทธิภาพ
NVIDIA Nsight Systems ให้การวิเคราะห์ระดับระบบที่แสดงกิจกรรม CPU, GPU และการเชื่อมต่อตลอดเวลา[^4] มุมมองไทม์ไลน์เผยให้เห็นช่วงเวลาว่าง, การเรียก kernel และการถ่ายโอนข้อมูล การวิเคราะห์ระบุว่าภาระงานถูกจำกัดด้วยการประมวลผล, หน่วยความจำ หรือประสบกับคอขวดอื่นๆ
Nsight Compute ให้การวิเคราะห์ระดับ kernel โดยละเอียดที่แสดง achieved occupancy, ปริมาณงานหน่วยความจำ และการใช้งานการประมวลผล[^5] การวิเคราะห์ระบุโอกาสในการเพิ่มประสิทธิภาพภายใน kernel แต่ละตัว เครื่องมือแนะนำการเพิ่มประสิทธิภาพโค้ดที่เปลี่ยนความต้องการฮาร์ดแวร์
PyTorch Profiler และ TensorFlow Profiler รวมการวิเคราะห์เข้ากับเฟรมเวิร์ก ML[^6] การรวมนี้ทำให้การวิเคราะห์ภาระงาน ML ง่ายขึ้นโดยไม่ต้องเรียนรู้เครื่องมือแยกต่างหาก ข้อมูลเชิงลึกเฉพาะเฟรมเวิร์กเสริมการวิเคราะห์ระดับ GPU
เมตริกสำคัญ
เปอร์เซ็นต์การใช้งาน GPU แสดงเศษส่วนของเวลาที่ GPU รัน kernel การใช้งานต่ำบ่งบอกถึงคอขวด CPU, ปัญหาการโหลดข้อมูล หรือช่วงว่างระหว่างการดำเนินการ การใช้งานสูงบ่งบอกว่าภาระงานใช้ GPU ที่จัดสรรอย่างมีประสิทธิภาพ
การใช้งานหน่วยความจำติดตามการใช้หน่วยความจำสูงสุดและเฉลี่ย หน่วยความจำสูงสุดกำหนดความต้องการหน่วยความจำ GPU ขั้นต่ำ หน่วยความจำเฉลี่ยบ่งบอกถึงศักยภาพในการแบ่งปันหรือการจัดสรร GPU ขนาดเล็กลงหากสามารถลดยอดสูงสุดได้
SM (Streaming Multiprocessor) occupancy วัดว่าทรัพยากรการประมวลผลถูกใช้อย่างเต็มที่เพียงใด Occupancy ต่ำที่มีการใช้งานสูงบ่งบอกถึง overhead ของการเรียก kernel การเพิ่มประสิทธิภาพสามารถปรับปรุงปริมาณงานโดยไม่ต้องเปลี่ยนฮาร์ดแวร์
การมาตรฐาน Benchmark
MLPerf benchmarks ให้การเปรียบเทียบภาระงานมาตรฐานข้ามการกำหนดค่าฮาร์ดแวร์[^7] Benchmarks ครอบคลุมสถานการณ์การฝึกและการอนุมานด้วยโมเดลตัวแทน ผลลัพธ์ MLPerf เปิดใช้งานการเปรียบเทียบฮาร์ดแวร์อย่างเป็นกลางโดยไม่ต้องพึ่งพาการอ้างสิทธิ์ทางการตลาดของผู้จำหน่าย
แพลตฟอร์ม NVIDIA ส่งมอบเวลาการฝึกเร็วที่สุดใน MLPerf Training v5.1 benchmark ทุกตัว โดยมีนวัตกรรมข้ามชิป, ระบบ และซอฟต์แวร์ที่ทำให้ความเป็นผู้นำด้านประสิทธิภาพการฝึกยั่งยืน[^8] MLPerf v5.1 แทนที่ BERT-Large และ Stable Diffusion เก่าด้วย Llama 3.1 8B และ FLUX.1 สะท้อนภูมิทัศน์ภาระงาน AI ที่พัฒนาขึ้น[^9]
วิธีการปรับขนาดให้เหมาะสม
การปรับขนาดให้เหมาะสมอย่างเป็นระบบตามกระบวนการที่มีโครงสร้างจากความต้องการผ่านการตรวจสอบ
การรวบรวมความต้องการ
จัดทำเอกสารสถาปัตยกรรมโมเดลรวมถึงจำนวนพารามิเตอร์, ประเภทเลเยอร์ และความต้องการความแม่นยำ สถาปัตยกรรมจำกัดความต้องการหน่วยความจำและการประมวลผลโดยพื้นฐาน Large language models, vision transformers และ diffusion models มีโปรไฟล์ทรัพยากรที่แตกต่างกัน
กำหนดความต้องการประสิทธิภาพรวมถึงเป้าหมายปริมาณงาน, SLA latency และความคาดหวังขนาดแบตช์ ความต้องการกำหนดว่าการกำหนดค่าเพียงพอหรือไม่ ไม่ใช่แค่ว่ามันทำงานได้ การกำหนดค่าที่ทำงานได้แต่พลาดเป้าหมาย latency ยังคงมีขนาดเล็กเกินไป
ระบุความต้องการการปรับขนาดและความคาดหวังการเติบโต โครงสร้างพื้นฐานควรรองรับการเติบโตของภาระงานที่วางแผนไว้โดยไม่ต้องเปลี่ยนทั้งหมด การปรับขนาดให้เหมาะสมสำหรับภาระงานวันนี้ในขณะที่วางแผนสำหรับวันพรุ่งนี้หลีกเลี่ยงการล้าสมัยก่อนเวลาอันควร
การเลือกตัวเลือก
ระบุตัวเลือก GPU ที่ตรงกับความต้องการพื้นฐาน ความจุหน่วยความจำกรองตัวเลือกที่ไม่สามารถใส่ภาระงานได้ ความสามารถการประมวลผลกรองตัวเลือกที่ไม่สามารถตอบสนองความต้องการปริมาณงาน จุดตัดกำหนดตัวเลือกที่เป็นไปได้
พิจารณารุ่นและสถาปัตยกรรม GPU สถาปัตยกรรมใหม่กว่าเช่น Blackwell ให้ประสิทธิภาพต่อวัตต์ที่ดีกว่าแต่ต้นทุนการได้มาสูงกว่า สถาปัตยกรรมเก่ากว่าเช่น Ampere ให้ต้นทุนต่ำกว่าด้วยประสิทธิภาพที่เพียงพอสำหรับภาระงานหลายอย่าง เศรษฐศาสตร์ขึ้นอยู่กับลักษณะภาระงานและระยะเวลาการใช้งาน
ประเมินการแลกเปลี่ยนระหว่าง cloud และ on-premises Cloud ให้ความยืดหยุ่นในการทดลองกับ GPU หลายประเภทก่อนตัดสินใจ On-premises ให้ต้นทุนระยะยาวต่ำกว่าสำหรับภาระงานที่คาดการณ์ได้และยั่งยืน แนวทางไฮบริดใช้ cloud สำหรับการทดลองและ on-premises สำหรับการผลิต
การทดสอบตรวจสอบ
รันภาระงานจริงบนการกำหนดค่าตัวเลือกที่วัดประสิทธิภาพจริง Synthetic benchmarks อาจไม่แสดงพฤติกรรมภาระงานจริง การทดสอบที่เป็นตัวแทนการผลิตตรวจสอบว่าตัวเลือกตรงตามความต้องการ
ทดสอบที่ระดับโหลดที่คาดหวังและเกินกว่า การกำหนดค่าที่ทำงานได้ดีที่โหลดเบาอาจมีปัญหาที่การใช้งานเต็มที่ การทดสอบความเครียดเผยให้เห็นขีดจำกัดความจุก่อนการใช้งานจริง
วัดประสิทธิภาพต้นทุนข้ามตัวเลือก GPU ที่แพงกว่าให้ปริมาณงาน 3 เท่าอาจมีต้นทุนต่อการอนุมานน้อยกว่า GPU ที่ถูกกว่าที่ปริมาณงานต่ำกว่า การวิเคราะห์ต้นทุนรวมของการเป็นเจ้าของแนะนำการเลือกขั้นสุดท้าย
Autoscaling และการจัดสรรแบบไดนามิก
การปรับขนาดแบบคงที่ทำให้ทรัพยากรว่างในช่วงที่ความต้องการต่ำ การจัดสรรแบบไดนามิกปรับทรัพยากรให้ตรงกับความต้องการจริง
Horizontal pod autoscaling
Kubernetes Horizontal Pod Autoscaler (HPA) ปรับขนาดจำนวน replica ตามเมตริก[^10] เมตริกการใช้งาน GPU กระตุ้นการตัดสินใจปรับขนาด Replica มากขึ้นจัดการโหลดที่เพิ่มขึ้นในขณะที่ replica น้อยลงลดต้นทุนในช่วงเวลาที่เงียบ
Autoscaling ที่รับรู้ GPU ต้องการแหล่งเมตริกที่เหมาะสม NVIDIA DCGM ให้เมตริก GPU ที่ HPA สามารถใช้ผ่าน Prometheus adapter ท่อเมตริกจาก GPU ถึง HPA กำหนดความตอบสนองของการปรับขนาด
KEDA และการปรับขนาดที่ขับเคลื่อนด้วยเหตุการณ์
KEDA (Kubernetes Event-Driven Autoscaling) เปิดใช้งานการปรับขนาดตามเมตริกภายนอกและความยาวคิว[^11] ภาระงานการอนุมานสามารถปรับขนาดตามความลึกคิวคำขอแทนการใช้งาน GPU แนวทางที่ขับเคลื่อนด้วยเหตุการณ์ให้การปรับขนาดที่ตอบสนองมากขึ้นสำหรับภาระงานที่มีการเปลี่ยนแปลงรวดเร็ว
KEDA อำนวยความสะดวกในการปล่อยโควตาอัตโนมัติโดยอ้างสิทธิ์โควตาจากภาระงานที่ว่าง เมื่อภาระงานเสร็จสิ้นแต่ไม่ถูกลบ KEDA ตรวจสอบเมตริกว่างและกระตุ้นการลดขนาดเป็นศูนย์ replica ลดต้นทุนการดำเนินงานอย่างมีนัยสำคัญ[^11]
Scheduler ที่รับรู้ GPU
Scheduler อัจฉริยะพิจารณา topology ของ GPU เมื่อวางภาระงาน งานหลาย GPU ได้ประโยชน์จาก GPU ที่มีการเชื่อมต่อ NVLink Scheduler พิจารณา topology การเชื่อมต่อควบคู่กับความพร้อมใช้งานทรัพยากร
AI Computing Broker ของ Fujitsu ใช้การจัดเรียงที่รับรู้รันไทม์ ตรวจสอบภาระงานแบบเรียลไทม์และกำหนด GPU แบบไดนามิกไปยังที่ที่ต้องการมากที่สุด[^12] แนวทางนี้แสดงถึงการคิดใหม่โดยพื้นฐานจากการจัดสรรแบบคงที่ไปสู่การเพิ่มประสิทธิภาพอย่างต่อเนื่อง
ข้อผิดพลาดทั่วไปในการปรับขนาดให้เหมาะสม
องค์กรทำผิดพลาดที่คาดเดาได้ซึ่งวิธีการที่เหมาะสมหลีกเลี่ยงได้
การจัดสรรเกินความต้องการ
ทีมมักระบุ GPU ที่ใหญ่ที่สุดที่มี "เพื่อความปลอดภัย" สิ้นเปลืองทรัพยากรจำนวนมากกับภาระงานที่ไม่ต้องการ โมเดลที่ทำงานได้ดีบน L4 ที่ใช้งานบน H100 สิ้นเปลืองทั้งเงินและความจุ GPU ระดับสูงที่หายาก
การจัดสรรเกินมักเป็นผลมาจากการวิเคราะห์ที่ไม่เพียงพอ ทีมคาดว่าภาระงานต้องการมากกว่าที่เป็นจริงโดยไม่มีการวัด การวิเคราะห์เผยให้เห็นความต้องการจริงที่มักทำให้ทีมประหลาดใจที่คาดหวังความต้องการสูงกว่า
การจัดสรรต่ำกว่าความต้องการ
การกำหนดค่าที่มีขนาดเล็กเกินที่ทำงานได้ในทางเทคนิคแต่พลาดเป้าหมายประสิทธิภาพทำให้เกิดปัญหาการดำเนินงานอย่างต่อเนื่อง ทีมยอมรับการฝึกช้าหรือ latency การอนุมานสูงแทนที่จะยอมรับข้อผิดพลาดในการกำหนดขนาดเริ่มต้น
ข้อจำกัดหน่วยความจำที่บังคับให้ offloading มากเกินไปหรือขนาดแบตช์เล็กลดปริมาณงานที่มีประสิทธิภาพ GPU ที่ใหญ่กว่าเล็กน้อยอาจให้ประสิทธิภาพที่ดีขึ้นอย่างมากโดยการกำจัดข้อจำกัดเหล่านี้
การละเลยความสมดุลของระบบทั้งหมด
การมุ่งเน้นเฉพาะข้อมูลจำเพาะ GPU ในขณะที่ละเลย CPU, storage และ network สร้างคอขวดของระบบ การโหลดข้อมูลที่ไม่สามารถป้อน GPU ได้เพียงพอสิ้นเปลืองความจุ GPU คอขวด Network ระหว่างการฝึกแบบกระจายลดการปรับขนาดที่มีประสิทธิภาพ
ประมาณ 40% ของทีมจัดสรรต่ำกว่าความต้องการ
[เนื้อหาถูกตัดสำหรับการแปล]