2025-11-24T21:52:17.543196

Instruction Set Migration at Warehouse Scale

Christopher, Crossan, Dobson et al.
Migrating codebases from one instruction set architecture (ISA) to another is a major engineering challenge. A recent example is the adoption of Arm (in addition to x86) across the major Cloud hyperscalers. Yet, this problem has seen limited attention by the academic community. Most work has focused on static and dynamic binary translation, and the traditional conventional wisdom has been that this is the primary challenge. In this paper, we show that this is no longer the case. Modern ISA migrations can often build on a robust open-source ecosystem, making it possible to recompile all relevant software from scratch. This introduces a new and multifaceted set of challenges, which are different from binary translation. By analyzing a large-scale migration from x86 to Arm at Google, spanning almost 40,000 code commits, we derive a taxonomy of tasks involved in ISA migration. We show how Google automated many of the steps involved, and demonstrate how AI can play a major role in automatically addressing these tasks. We identify tasks that remain challenging and highlight research challenges that warrant further attention.
academic

هجرة مجموعة التعليمات على نطاق مستودع البيانات

المعلومات الأساسية

  • معرّف الورقة: 2510.14928
  • العنوان: Instruction Set Migration at Warehouse Scale
  • المؤلفون: إريك كريستوفر، كيفن كروسان، وولف دوبسون، كريس كينيلي، درو لويس، كون لين، مارتن ماس، بارثاسارثي رانجاناثان، إيما رابتي، براين يانج (Google، الولايات المتحدة الأمريكية)
  • التصنيف: cs.SE (هندسة البرمجيات)، cs.LG (التعلم الآلي)
  • تاريخ النشر: 16 أكتوبر 2025 (نسخة أولية على arXiv)
  • رابط الورقة: https://arxiv.org/abs/2510.14928

الملخص

تطعن هذه الورقة في وجهات النظر التقليدية حول هجرة معمارية مجموعة التعليمات (ISA) من خلال تحليل هجرة واسعة النطاق من Google من x86 إلى Arm (تتضمن ما يقرب من 40,000 التزام برمجي). تُظهر الدراسة أن التحديات الرئيسية للهجرة الحديثة لمجموعة التعليمات لم تعد ترجمة الأكواد، بل مجموعة متنوعة من المهام الهندسية. تقدم الورقة تصنيفاً لمهام هجرة ISA، وتوضح كيفية أتمتة Google للعديد من خطوات الهجرة، وتثبت الدور المهم للذكاء الاصطناعي في أتمتة هذه المهام.

خلفية البحث والدافع

تعريف المشكلة

  1. المشكلة الأساسية: هجرة معمارية مجموعة التعليمات للمستودعات الضخمة تمثل تحدياً هندسياً كبيراً، لكن الأوساط الأكاديمية توليها اهتماماً محدوداً
  2. الاحتياجات العملية: تعتمد شركات الخدمات السحابية الرئيسية (Amazon، Google، Microsoft) على معمارية Arm لتكملة x86، وتحتاج إلى منهجية هجرة منظمة
  3. قيود وجهات النظر التقليدية: ركزت الأبحاث السابقة على الترجمة الثنائية الثابتة والديناميكية، معتبرة إياها التحدي الرئيسي لهجرة ISA

دافع البحث

  1. التغيير في البيئة التكنولوجية: تتمتع معمارية ISA الحديثة بدعم جيد في مترجمات المصدر المفتوح، مكتبات وقت التشغيل، وأنوية Linux، مما يجعل إعادة التجميع من المصدر ممكنة
  2. نقص الخبرة العملية: غياب التحليل المنظم للمهام المتعلقة بهجرة ISA الحديثة
  3. فرص الأتمتة: توفر أدوات هندسة البرمجيات الحديثة وتقنيات الذكاء الاصطناعي إمكانيات جديدة للأتمتة

المساهمات الأساسية

  1. أول تحليل منظم: توفير أول تفكيك وتصنيف مفصل لمهام هجرة ISA على نطاق واسع، بناءً على 38,156 التزاماً حقيقياً
  2. تحدي المعرفة التقليدية: إثبات أن تعقيد هجرة ISA لا يكمن في ترجمة الأكواد، بل يتعلق بشكل أساسي بإعادة كتابة ملفات البناء والتكوين
  3. إطار عمل الأتمتة: عرض الطبيعة القابلة للأتمتة العالية للعديد من مهام الهجرة، وتطوير أداة أتمتة مدفوعة بالذكاء الاصطناعي تسمى CogniPort
  4. إرشادات عملية: تحديد المهام التي تظل صعبة، وتوفير توجيهات لاتجاهات البحث المستقبلية

شرح المنهجية

تعريف المهمة

المهمة الأساسية للبحث هي: هجرة مستودع يحتوي على مليارات أسطر من الأكواد من معمارية x86 إلى بيئة متعددة المعمارية تدعم x86 و Arm

المدخلات: مستودع أكواد واسع النطاق بمعمارية واحدة (x86) المخرجات: مستودع أكواد يدعم معماريات متعددة (x86+Arm) القيود: الحفاظ على التكافؤ في الأداء والأمان والاستقرار

معمارية منهج التحليل

1. جمع البيانات والتصنيف

  • مصدر البيانات: 38,156 التزاماً متعلقاً بهجرة Arm من مستودع Google الموحد
  • التصنيف الآلي: استخدام نموذج Gemini 2.5 Flash LLM لتحليل الالتزامات على نطاق واسع
  • عملية التصنيف:
    1. إدخال رسائل الالتزام والفروقات البرمجية في نافذة السياق بحجم 1M رمز
    2. لكل مجموعة من 100 التزام، يختار النموذج من 20 فئة
    3. دمج 400×20 فئة إلى 50 فئة، وتحسينها يدوياً إلى 16 فئة

2. نموذج دورة حياة الهجرة

تحديد عملية هجرة من خمس خطوات:

  1. مرحلة الاختبار: إصلاح الاختبارات والبناء الفاشلة على معمارية جديدة
  2. إعداد CI متعدد المعمارية: تعديل ملفات Blueprint لضمان عدم الانحدار
  3. تكوين الإصدار: تعديل ملفات Blueprint لجعل الإصدار يدعم معماريات متعددة بشكل افتراضي
  4. نشر الملفات الثنائية الجديدة: تشغيل وتقييم استقرار الأداء على آلات ISA جديدة
  5. الإنتاج الكامل: السماح بجدولة مهام الإنتاج على آلات ISA جديدة

نقاط الابتكار التقني

1. تحليل الأكواد على نطاق واسع بناءً على LLM

  • استخدام مبتكر لنماذج اللغة الكبيرة لتحليل عشرات الآلاف من التزامات الأكواد
  • إنشاء تصنيف منظم لمهام هجرة ISA (17 فئة)

2. إطار عمل الأتمتة متعدد المستويات

  • التغييرات واسعة النطاق (LSCs): تحقيق تعديلات أكواد آلية واسعة النطاق من خلال أداة Rosie
  • نظام CHAMP: منصة مراقبة الصحة المستمرة، تقييم الفروقات السلوكية للتطبيقات المبنية على Arm تلقائياً
  • وكيل CogniPort AI: حلقات وكيل متداخلة ثلاثية المستويات، إصلاح أخطاء البناء والاختبار تلقائياً

3. وكيل الإصلاح المدفوع بالذكاء الاصطناعي

يتضمن CogniPort ثلاث حلقات وكيل متداخلة:

  • وكيل التنسيق: استدعاء وكلاء إصلاح البناء/الاختبار بناءً على حالة مساحة العمل
  • وكيل إصلاح البناء: محاولة بناء الهدف وتعديل الملفات حتى النجاح
  • وكيل إصلاح الاختبار: تشغيل الاختبارات وتعديل الأكواد حتى النجاح

إعداد التجارب

خصائص مجموعة البيانات

  • الحجم: 38,156 التزاماً، حوالي 700K سطر من تغييرات الأكواد
  • الفترة الزمنية: عملية هجرة تمتد عدة سنوات
  • نطاق التغطية: مجموعة تمثيلية من مليارات أسطر الأكواد الداخلية في Google

مؤشرات التقييم

  1. درجة الأتمتة: نسبة الالتزامات والأسطر البرمجية المُنتجة آلياً في كل فئة
  2. معدل نجاح إصلاح AI: معدل نجاح CogniPort في إصلاح 245 التزام اختبار
  3. تأثير الهجرة: ارتفاع معدل قبول التطبيقات من 4.8% إلى 59.6%، مع الحفاظ على معدل الاسترجاع أقل من 1.8%

منهج التجريب

  1. تحليل الالتزامات التاريخية: استعادة الالتزامات التاريخية وتقييم قدرة وكيل AI على الإصلاح
  2. التحقق من دقة التصنيف: فحص يدوي لمخرجات النموذج لضمان دقة التصنيف
  3. تقييم فعالية الأتمتة: إحصائيات تغطية أتمتة أنظمة LSC و CHAMP

نتائج التجارب

النتائج الرئيسية

1. تحليل توزيع المهام (الشكل 1)

  • هيمنة تكوين البناء: 84% من الالتزامات تتعلق بتكوين البناء والتعبئة و CI/CD (الفئة 8)
  • نسبة تعديل الأكواد ضئيلة جداً: تكييف الأكواد والتصحيحات (الفئات 1-5) تمثل فقط 1% من الالتزامات وأقل من 4% من أسطر الأكواد
  • أهمية تكييف الاختبارات: التعديلات المتعلقة بالاختبارات (الفئات 6-7) تحتل نسبة كبيرة

2. أنماط التطور الزمني (الشكل 3)

  • المرحلة المبكرة: تركيز على تطوير الأدوات وتكييف الاختبارات
  • المرحلة الوسيطة: زيادة نسبة التزامات تكييف الأكواد
  • المرحلة المتأخرة: تقريباً جميع الالتزامات تتعلق بملفات التكوين والعمليات الداعمة، مع نمو سريع في حجم الالتزامات

3. فعالية الأتمتة

  • معدل الأتمتة الإجمالي: 83.82% من الالتزامات و 14.15% من أسطر الأكواد تحقق الأتمتة
  • التزامات LSC المُنتجة: 31,984 التزام تم إنتاجه تلقائياً من خلال Rosie
  • ارتفاع معدل قبول التطبيقات: من 4.8% إلى 59.6%
  • معدل استرجاع منخفض: انخفض معدل الاسترجاع إلى أقل من 0.8% في المراحل النهائية

أداء وكيل AI (الشكل 4)

أداء CogniPort على 245 التزام اختبار:

  • معدل النجاح الإجمالي: 30%
  • أفضل الفئات: إصلاح الاختبارات، أكواد الشروط الخاصة بالمنصة، إصلاح تمثيل البيانات
  • الفئات الصعبة: نموذج الذاكرة، بيئة تنفيذ الاختبارات، تحسين الأداء

إمكانية أتمتة التصنيف (الشكل 5)

تقييم AI لصعوبة الأتمتة (1=سهل، 5=صعب):

  • قابلة للأتمتة بدرجة عالية: ملفات تكوين البناء، بيئة تنفيذ الاختبارات
  • صعوبة متوسطة: تكييف الأكواد والاختبارات (الفئات 1-7)
  • تتطلب عملاً يدوياً: تحسينات الأداء المعقدة، تكوينات الخدمات الخاصة

الأعمال ذات الصلة

الطرق التقليدية

  1. الترجمة الثنائية: تقنيات الترجمة الثنائية الثابتة والديناميكية، مثل نظام Rosetta
  2. التعديل الآلي للأكواد: طرق أتمتة لتحسين الأداء وإصلاح مشاكل الأمان وتصحيح الأخطاء

ابتكار هذه الورقة

  1. الانتقال من الترجمة الثنائية إلى إعادة التجميع من المصدر: الاستفادة من الدعم الناضج لنظام البيئة المفتوح الحديث
  2. التحليل المنظم للمهام: توفير أول تصنيف شامل لمهام هجرة ISA
  3. الأتمتة المدفوعة بالذكاء الاصطناعي: تطبيق نماذج اللغة الكبيرة على هجرة الأكواد على نطاق واسع

الخلاصات والنقاش

الاستنتاجات الرئيسية

  1. تحدي وجهات النظر التقليدية: تعقيد هجرة ISA لا يكمن في ترجمة الأكواد، بل في مهام هندسية متعددة الجوانب
  2. قابلية عالية للأتمتة: يمكن أتمتة معظم مهام الهجرة من خلال الأدوات الحديثة
  3. قيمة العمل لمرة واحدة: يمكن إعادة استخدام العديد من المهام بعد أول هجرة متعددة المعمارية
  4. إمكانيات AI ضخمة: يمكن للذكاء الاصطناعي الحديث التعامل مع العديد من المهام اليدوية المتبقية

القيود

  1. حدود منهج التقييم: قد يكون تقييم وكيل AI عرضة لتسرب المعلومات أو اختبارات غير كاملة
  2. بيئة Google محددة: قد لا تنطبق الاستنتاجات بالكامل على بيئات البرمجيات في المنظمات الأخرى
  3. خصوصية Arm: يركز البحث على هجرة x86 إلى Arm، وقد تواجه هجرات ISA الأخرى تحديات مختلفة

الاتجاهات المستقبلية

المهام التي تظل صعبة

  1. أكواد المتجهات الخاصة بـ ISA: تتطلب بحثاً معقداً في فضاء تحسين الأداء
  2. تحسينات الأداء العميقة: تتطلب إعادة هيكلة على مستوى الخوارزمية واستخدام الدوال الداخلية
  3. حالات حدية معقدة: تتطلب معرفة متخصصة تتجاوز الأكواد نفسها
  4. ضبط الأداء: تتطلب إعادة إنشاء المعاملات الفائقة وملفات التكوين الموجهة بالتغذية الراجعة

فرص البحث

  1. تعزيز قدرات وكيل AI: دعم وكلاء أقوى مع البحث في الوثائق وقياس الأداء
  2. أتمتة المتجهات: إنشاء أكواد متجهات عالية الأداء خاصة بـ ISA تلقائياً
  3. سلاسل أدوات متعددة المعمارية: تحسين أدوات الأتمتة لدعم معماريات متعددة بشكل أفضل

التقييم المتعمق

المميزات

  1. قيمة عملية عالية جداً: بناءً على خبرة هجرة حقيقية على مستوى صناعي واسع النطاق، مع توجيهات قوية جداً
  2. ابتكار منهجي: أول تحليل منظم وتصنيف لمهام هجرة ISA، مما يؤسس إطار عمل أساسي للمجال
  3. حجم بيانات ضخم: تحليل 38,156 التزام نادر جداً في أبحاث هندسة البرمجيات
  4. رؤية تقنية مستقبلية: عرض إمكانيات تطبيق الذكاء الاصطناعي الفعلية في مهام هندسة البرمجيات واسعة النطاق
  5. نتائج غير متوقعة: تحدي المعرفة التقليدية في المجال، مع قيمة أكاديمية مهمة

أوجه القصور

  1. خصوصية البيئة: البحث مبني على بيئة Google البرمجية المحددة، وقد تكون قدرة التعميم محدودة
  2. حدود منهج التقييم: قد يكون تقييم وكيل AI متحيزاً، ويتطلب اختبارات معايير أكثر صرامة
  3. غياب تحليل التكاليف: نقص التحليل الكمي لتكاليف الهجرة (القوى العاملة والوقت والموارد)
  4. اعتبارات الصيانة طويلة الأجل غير كافية: تحليل أقل لتكاليف صيانة مستودعات الأكواد متعددة المعمارية على المدى الطويل

التأثير

  1. التأثير الأكاديمي: توفير اتجاهات بحثية جديدة لمجالات هندسة البرمجيات والعمارة النظامية
  2. القيمة الصناعية: توفير منهجية وأدوات مرجعية عملية لهجرات ISA في المنظمات الأخرى
  3. دفع التكنولوجيا: تعزيز تطوير تطبيقات الذكاء الاصطناعي في هندسة البرمجيات
  4. وضع المعايير: قد تصبح معياراً مرجعياً مهماً في مجال هجرة ISA

السيناريوهات المعمول بها

  1. شركات التكنولوجيا الكبرى: المنظمات التي تمتلك مستودعات أكواد ضخمة وتحتاج إلى هجرة معمارية
  2. مزودو الخدمات السحابية: الحاجة إلى دعم معماريات أجهزة متعددة لتحسين التكاليف والأداء
  3. محافظو المشاريع مفتوحة المصدر: مشاريع مفتوحة المصدر كبيرة تحتاج إلى توسيع دعم المعمارية
  4. المؤسسات البحثية: فرق البحث التي تدرس أتمتة هندسة البرمجيات وتطبيقات الذكاء الاصطناعي

المراجع

تستشهد الورقة بـ 27 مرجعاً مهماً، تغطي:

  • تقنيات الترجمة الثنائية (Altman et al., 2000; Gouicem et al., 2022)
  • هندسة البرمجيات على نطاق واسع (Potvin & Levenberg, 2016; Winters et al., 2020)
  • إصلاح الأكواد الآلي (Bader et al., 2019; Lin et al., 2025)
  • العمارة النظامية (Verma et al., 2015; Corbett et al., 2012)

الملخص: هذه ورقة ذات أهمية عملية وقيمة أكاديمية كبيرة، توفر أول تحليل منظم للتحديات والحلول الفعلية لهجرة ISA على نطاق واسع حديث. لا تطعن الورقة فقط في وجهات النظر التقليدية، بل تعرض أيضاً الإمكانيات الضخمة لتقنيات الذكاء الاصطناعي في هندسة البرمجيات، وتوفر توجيهات مهمة لتطور المجال في المستقبل.