מטא משיקה את MetaRoCE: פרוטוקול RDMA חדש שנבנה מאפס לאימון מודלים בקנה מידה עצום

מטא (Meta) חשפה השבוע את MetaRoCE, פרוטוקול תעבורה RDMA שפותח מאפס (clean-sheet) עבור עומסי עבודה של בינה מלאכותית על גבי אתרנט (Ethernet) סטנדרטי. בניגוד ל-RoCE הסטנדרטי, שמניח שהרשת תספק כל פריים בסדר ותלויה ב-PFC (Priority-based Flow Control) למניעת אובדן, MetaRoCE מתייחס לבד (fabric) כאל סביבה מאבדת (lossy) ומעביר את האחריות לסידור מחדש, בחירת נתיב והתאוששות אל כרטיס הרשת (NIC). החברה משחררת את המפרט, מימוש תוכנה רפרנס (reference implementation) וסוויטת בדיקות תאימות (compliance test suite) דרך פרויקט Open Compute Project (OCP).
עדיין לא ניתן לפריסה בייצור
הארטיפקטים צפויים להגיע רק באוקטובר 2026, ככל הנראה בפסגת OCP Global Summit השנתית. לעת עתה מדובר בהחלטת ארכיטקטורת בד, לא בהחלטת רכש: מטא הוכיחה את הפרוטוקול על גבי כרטיסי NIC מתוכנתים של AMD Pensando, ומימושים נוספים מצד ספקים אחרים נמצאים בעבודה. מי שמחפש פתרון מוכן להטמעה מיידית יצטרך להמתין.
הבעיה: הבד רואה חבילות, ה-NIC רואה כוונה
מטא הגדילה את האשכולות שלה למאות אלפי GPU על פני מספר מרכזי נתונים ואזורים. בגודל כזה הרשת יושבת בנתיב הקריטי (critical path) של כל צעד אימון. פעולות קולקטיביות כמו all-reduce ו-all-to-all מסנכרנות אלפי מאיצים, וההעברה האיטית ביותר קובעת את הקצב של המשימה כולה. RoCE הסטנדרטי הוא צוואר הבקבוק: הוא מצפה לאספקה בסדר, נשען על PFC, ומדכא את ה-packet spraying, פיזור חבילות על פני נתיבים מרובים, שדווקא מספק ביצועים ברשתות מרובות מישורים (multiplane) ובקנה מידה גדול.
שש החלטות עיצוב שמשנות את התמונה
MetaRoCE הופך את המודל: האינטליגנציה עוברת לקצה (endpoint), והרשת מתפרקת לנתיבים לוגיים דקים, שלכל אחד טלמטריה בזמן אמת, RTT פר-נתיב, מצב ECN וניצולת. המשלוח מחוץ לסדר (out-of-order) הוא ברירת המחדל: חבילות מפוזרות על פני נתיבים רבים ומגיעות שלא בסדר בכוונה. כל חבילה נושאת את היעד שלה, כך שהנתונים נכתבים ישירות למיקום הסופי בזמן הנחיתה, בלי באפר סידור מחדש (reorder buffer) ובלי חסימת ראש-תור (head-of-line blocking). מולטיפאת'ינג (multipathing) הוא מובנה: כל נתיב נושא פורט מקור UDP שונה כ-entropy ל-ECMP, וה-NIC יכול לשנות אותו בכל רגע כדי להסיט תעבורה מנתיב גרוע. מכיוון שלכל נתיב חלון משלו ואומדן זמן-הקפה (round-trip) משלו, התעבורה יכולה להבחין בין גודש לכשל ולאזן מחדש במפורש.
סובלנות אובדן במקום אובדן-אפס
MetaRoCE מתייחס לבד כמאבד, בלי PFC, בלי פריימי השהיה (pause frames). פער ב-bitvector אישור סלקטיבי (selective acknowledgment) של 256 סיביות הוא ראיה לאובדן ולא לסידור מחדש, ולכן מפעיל שידור חוזר מדויק של החבילה החסרה על הנתיב שאיבד אותה. בקרת גודש (congestion control) רצה משני הקצוות: AIMD מבוסס ECN בצד השולח משולב עם רמזי קצב הוגן (fair-share rate hints) בצד המקבל. בכל אישור המקבל מחזיר את נתח רוחב הפס הנכנס שהקצה לאותו שולח, כך שהשולחים מתקרבים למהירות הנכונה ישירות במקום לחפש אותה. מצב incast, שבו מקבלים רבים שולחים בו-זמנית למקבל אחד, נפתר בסיבוב הקפה אחד או שניים.
עצמאות טופולוגיה ומינימום דרישות מהמתגים
MetaRoCE מבקש מהבד שני דברים שכל מתג מודרני כבר תומך בהם: סימון ECN ו-ECMP. הוא אינו דורש חיתוך חבילות (packet trimming), טלמטריה ברשת (in-network telemetry), בקרת זרימה מבוססת קרדיט (credit-based flow control) או החלפת פרוטוקול במתגים. העבודה נשענת ישירות על עבודת RoCE-at-scale של מטא מ-2024 ועל האבולוציה הרחבה יותר של התשתית שלה.