คู่มือทางเทคนิค

ความเท่าเทียมของเทนเซอร์สำหรับรุ่นขนาดใหญ่

วิธีแบ่งคณิตศาสตร์ภายในเลเยอร์โครงข่ายประสาทเทียมเดียวบน GPU หลายตัว เพื่อให้โมเดลที่ใหญ่เกินไปสำหรับอุปกรณ์หนึ่งเครื่องยังคงสามารถทำงานได้

อ่าน 2 นาทีอัปเดตล่าสุด

ภาพรวม

It matters because frontier models have hundreds of billions of parameters that no single GPU can hold or compute fast enough alone.

เจาะลึก

ความเท่าเทียมของเทนเซอร์ (หรือที่เรียกว่าความเท่าเทียมของโมเดลภายในเลเยอร์) จะแบ่งเมทริกซ์น้ำหนักแต่ละตัวออกจาก GPU แทนที่จะวางทั้งเลเยอร์บนอุปกรณ์แยกกัน ในหม้อแปลงไฟฟ้า การคูณเมทริกซ์ขนาดใหญ่—การฉายภาพความสนใจและ MLP แบบฟีดไปข้างหน้า—จะถูกแยกออก: ตัวอย่างเช่น เมทริกซ์น้ำหนักตัวแรกของ MLP จะถูกแบ่งพาร์ติชันด้วยคอลัมน์ และเมทริกซ์ตัวที่สองต่อแถว ดังนั้น GPU แต่ละตัวจะคำนวณชิ้นส่วนและการลดทั้งหมดเพียงครั้งเดียวจะรวมผลลัพธ์เข้าด้วยกัน ความสนใจจะถูกแยกออกไปตามหัวต่างๆ โดย GPU แต่ละตัวจะจัดการชุดย่อย เนื่องจาก GPU ทุกตัวเป็นส่วนหนึ่งของทุกเลเยอร์พร้อมกัน ความขนานของเทนเซอร์จึงลดหน่วยความจำต่อ GPU และเพิ่มความเร็วในการประมวลผล แต่ต้องใช้การสื่อสารที่มีแบนด์วิธสูงบ่อยครั้งระหว่าง GPU แต่ละเลเยอร์ ด้วยเหตุนี้จึงมักจะถูกจำกัดอยู่ภายในโหนดที่เชื่อมต่อด้วย NVLink และรวมกับไปป์ไลน์และข้อมูลแบบขนานสำหรับการฝึกอบรมและงานเสิร์ฟขนาดใหญ่มาก

ข้อมูลเชิงลึกทางเทคนิค

เคล็ดลับที่ Megatron-LM ได้รับความนิยมคือการเลือกขนาดพาร์ติชันเพื่อให้การสื่อสารน้อยที่สุด การแยกเมทริกซ์ MLP แรกตามคอลัมน์จะทำให้ GPU แต่ละตัวใช้ความไม่เชิงเส้นในเครื่องโดยไม่มีการซิงค์ การแยกแถวที่สองออกหมายความว่าเอาต์พุตต้องลดทั้งหมดหนึ่งครั้งเพื่อรวมผลลัพธ์บางส่วน แต่ละชั้นจึงต้องมีการย่อทั้งหมดประมาณสองครั้ง (ไปข้างหน้า) และอีกสองครั้ง (ย้อนกลับ) เนื่องจากกลุ่มเหล่านี้เกิดขึ้นทุกๆ เลเยอร์ เวลาแฝงจึงครอบงำ ดังนั้นความเท่าเทียมของเทนเซอร์จึงอยู่หลังลิงก์ภายในโหนดที่รวดเร็ว เช่น NVLink แทนที่จะเป็นเครือข่ายระหว่างโหนดที่ช้ากว่า

ผลกระทบเชิงกลยุทธ์

ต้นทุนและงบประมาณ

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

การตัดสินใจที่ชัดเจนยิ่งขึ้น

การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด

การควบคุมคุณภาพ

ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต

อนาคตของความเท่าเทียมของเทนเซอร์สำหรับโมเดลขนาดใหญ่

ความเท่าเทียมของเทนเซอร์ยังคงเป็นพื้นฐาน แต่มีการผสมผสานกันมากขึ้นใน 'ความเท่าเทียม 3 มิติ' (เทนเซอร์ + ไปป์ไลน์ + ข้อมูล) และรวมกับความเท่าเทียมของผู้เชี่ยวชาญสำหรับโมเดล Mixture-of-Experts เฟรมเวิร์กเช่น Megatron-LM, DeepSpeed ​​และ vLLM จะทำให้การแบ่งส่วนเป็นอัตโนมัติ เนื่องจากการเชื่อมต่อระหว่าง GPU (NVLink, NVSwitch) และออปติคอลแฟบริคเร็วขึ้น ขีดจำกัดขอบเขตของโหนดจะผ่อนคลายลง ทำให้กลุ่มเทนเซอร์ขนานกว้างขึ้น คาดว่าจะมีการทำงานแบบขนานอัตโนมัติที่ชาญฉลาดยิ่งขึ้น โดยเลือกขนาดชาร์ดและขนาดกลุ่มเพื่อลดการสื่อสารสำหรับโทโพโลยีคลัสเตอร์ที่กำหนด

การใช้งานจริงในโลกแห่งความเป็นจริง

ฝึกฝนโมเดลพารามิเตอร์ 175B โดยการแบ่งส่วนเมทริกซ์น้ำหนักของแต่ละเลเยอร์บน GPU 8 ตัวในโหนดที่เชื่อมต่อกับ NVLink หนึ่งโหนดโดยใช้ Megatron-LM

ให้บริการโมเดลการแชทแบบพารามิเตอร์ 70B ใน vLLM ด้วย tensor_parallel_size=4 เพื่อให้น้ำหนักพอดีกับ GPU สี่ตัวและตอบสนองแบบเรียลไทม์

การแยกความสนใจของหม้อแปลงไปยัง GPU เพื่อให้แต่ละอุปกรณ์คำนวณชุดย่อย จากนั้นจึงต่อเอาต์พุตสำหรับเลเยอร์ถัดไป

การผสมผสานความขนานของเทนเซอร์ภายในโหนดและความขนานของไปป์ไลน์ข้ามโหนดเพื่อฝึกโมเดลล้านล้านพารามิเตอร์บนคลัสเตอร์ GPU ขนาดใหญ่

ความเสี่ยงและรั้ว

การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้

ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป

ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น

แผนงานการดำเนินงาน

1

กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน

2

เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง

3

การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้

4

เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด

สำรวจต่อไป

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Tensor Parallelism for Large Models quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

เริ่มแบบทดสอบ

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

คำแนะนำต่อไป

โมเดลและความเท่าเทียมของท่อ

คำถามที่พบบ่อย

What is Tensor Parallelism for Large Models?

วิธีแบ่งคณิตศาสตร์ภายในเลเยอร์โครงข่ายประสาทเทียมเดียวบน GPU หลายตัว เพื่อให้โมเดลที่ใหญ่เกินไปสำหรับอุปกรณ์หนึ่งเครื่องยังคงสามารถทำงานได้ สิ่งสำคัญคือเนื่องจากโมเดล Frontier มีพารามิเตอร์นับแสนล้านรายการที่ไม่มี GPU ตัวใดสามารถเก็บหรือประมวลผลได้เร็วพอเพียงลำพัง

ความเท่าเทียมของเทนเซอร์แบ่งตาม GPU อย่างไร

ความขนานของเทนเซอร์ (ในเลเยอร์) จะแบ่งส่วนเมทริกซ์น้ำหนักภายในเลเยอร์ ดังนั้น GPU ทุกตัวจะคำนวณส่วนหนึ่งของเลเยอร์เดียวกัน ซึ่งแตกต่างไปจากไปป์ไลน์ขนานซึ่งวางทั้งเลเยอร์บน GPU ที่แตกต่างกัน

ในการแยก MLP แบบเมกะตรอน เมทริกซ์น้ำหนักสองตัวจะถูกแบ่งพาร์ติชันเพื่อลดการสื่อสารอย่างไร

การแยกเมทริกซ์แรกตามคอลัมน์ทำให้ GPU แต่ละตัวใช้ความไม่เชิงเส้นในเครื่อง การแยกวินาทีทีละแถวหมายถึงการลดผลรวมของเอาต์พุตบางส่วนเพียงครั้งเดียว ซึ่งช่วยลดการซิงโครไนซ์ให้เหลือน้อยที่สุด

เหตุใดความเท่าเทียมของเทนเซอร์จึงมักถูกเก็บไว้ภายในโหนดเดียว

แต่ละเลเยอร์จะทริกเกอร์การสื่อสารแบบรวม (ลดทั้งหมด) ดังนั้นการรับส่งข้อมูลจำนวนมากและไวต่อความหน่วงจึงต้องการลิงก์ภายในโหนดที่รวดเร็ว เช่น NVLink แทนที่จะเป็นเครือข่ายระหว่างโหนดที่ช้ากว่า

โดยทั่วไปแล้วกลไกความสนใจจะขนานกันภายใต้ความเท่าเทียมของเทนเซอร์อย่างไร

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

การดำเนินการโดยรวมแบบใดที่มักรวมผลลัพธ์บางส่วนไว้ในความเท่าเทียมของเทนเซอร์

ลดผลรวมของเอาต์พุตบางส่วนที่คำนวณบน GPU แต่ละตัวทั้งหมด เพื่อให้สอดคล้องกับผลลัพธ์ของเลเยอร์ สิ่งนี้เกิดขึ้นหลายครั้งต่อเลเยอร์ในการส่งต่อและย้อนกลับ