← أحدث الأبحاث
💻 computer science

Hawkeye: Reproducing GPU-Level Non-Determinism

تقدم الورقة البحثية Hawkeye، وهو إطار عمل يتيح إعادة إنتاج عمليات ضرب المصفوفات المسرعة بواسطة وحدة معالجة الرسومات (GPU) بدقة وبدون فقدان على وحدة المعالجة المركزية (CPU) من خلال التحليل المنهجي ومحاكاة السلوكيات غير الحتمية الخاصة بالعتاد، مثل تقريب القيم وترتيب التراكم، مما يسهل التدقيق الفعال والموثوق لتدفقات عمل تعلم الآلة من قبل أطراف ثالثة.

المؤلفون الأصليون: Erez Badash, Dan Boneh, Ilan Komargodski, Megha Srivastava

نُشر 2026-03-24
📖 4 دقيقة قراءة☕ قراءة في استراحة قهوة

المؤلفون الأصليون: Erez Badash, Dan Boneh, Ilan Komargodski, Megha Srivastava

البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل

تخيل أنك استأجرت طباخاً فائق السرعة (وحدة معالجة رسومات من نوع NVIDIA GPU) لطهي وجبة ضخمة ومعقدة (تدريب نموذج تعلم آلي). أنت تدفع له مقابل اتباع وصفة محددة. لكن المشكلة هي أنك لا تستطيع رؤية المطبخ، ولا تثق به بنسبة 100%. تريد أن تعرف: هل قام بالفعل بطهي الوجبة تماماً كما طلبتها، أم أنه تسلل واستخدم طرقاً مختصرة، أو مكونات أرخص، أو غير الوصفة لتوفير الوقت؟

في عالم الكمبيوتر، يسمى هذا التعلم الآلي القابل للتحقق (Verifiable Machine Learning). أنت تريد إعادة طهي العملية بنفسك للتحقق من العمل.

المشكلة: "الشبح في الآلة"

المشكلة هي أن وحدات معالجة الرسومات الحديثة سريعة ومتخصصة للغاية لدرجة أنها لا تطهو الأشياء بنفس الطريقة تماماً في كل مرة، حتى مع استخدام نفس المكونات. وهذا ما يسمى عدم الحتمية (non-determinism).

فكر في الأمر كالتالي:

  • المسألة الرياضية: في الرياضيات العادية، (1+2)+3(1 + 2) + 3 هي نفسها 1+(2+3)1 + (2 + 3). ولكن في رياضيات الكمبيوتر (تحديداً مع الأرقام الصغيرة جداً أو الكبيرة جداً)، فإن الترتيب الذي تجمع به الأرقام يغير النتيجة النهائية قليلاً.
  • السمة الخاصة بالعتاد: تمتلك وحدات معالجة الرسومات من NVIDIA "طهاة خارقين" يطلق عليهم Tensor Cores. إنهم سريعون بشكل مذهل، لكن لديهم قواعدهم السرية الخاصة. قد يقومون بتقريب الأرقات للأعلى أو للأسفل بشكل مختلف، أو يتعاملون مع الأرقام "الشبحية" الضئيلة (المسماة subnormals) بطريقة فريدة.
  • النتيجة: إذا حاولت إعادة طهي الوجبة على موقدك القياسي الخاص (وهو CPU)، فسيكون المذاق مشابهاً جداً، لكنه لن يكون متطابقاً بت (bit-for-bit) تماماً. الفرق ضئيل جداً (مثل رشة ملح) بحيث لا يلاحظه البشر، ولكن بالنسبة لمدقق حاسوبي، يبدو الأمر وكأنه فشل. هذا يجعل من المستحيل إثبات أن وحدة معالجة الرسومات قامت بالعمل بشكل صحيح، لأن "الفشل" قد يكون مجرد اختلاف في العتاد، وليس غشاً.

الحل: دخول "Hawkeye"

قام المؤلفون ببناء أداة تسمى Hawkeye. فكر في Hawkeye كأنه محاكي مطبخ جنائي فائق الدقة.

بدلاً من محاولة إجبار وحدة معالجة الرسومات على أن تكون مثالية (مما يبطئ سرعتها)، يقوم Hawkie بشيء أذكى: إنه يعيد هندسة وصفة وحدة معالجة الرسومات السرية.

إليك كيف يعمل Hawkeye، باستخدام تشبيه بسيط:

1. العمل الاستقصائي (الاختبارات)

الباحثون لم يتكهنوا بكيفية عمل وحدة معالجة الرسومات فحسب، بل تصرفوا كمحققين يشغلون "فخاخاً" محددة لرؤية كيفية استجابة وحدة معالسة الرسومات لها.

  • اختبار "الترتيب": سألوا: "إذا أعطيتك هذه الأرقام بترتيب مختلف، هل ستجمعها على شكل هرمي أم في خط مستقيم؟"
  • اختبار "التقريب": سألوا: "إذا كان الرقم يقع بالضبط في المنتصف بين خيارين، هل ستقربه للأعلى، أم للأسفل، أم ستقطع الأجزاء الزائدة؟"
  • اختبار "الأرقام الضئيلة": سألوا: "إذا أعطيتك رقماً صغيراً جداً لدرجة أنه يقترب من الصفر، هل ستتجاهله أم ستحتفظ به؟"

من خلال إجراء آلاف هذه التجارب الصغيرة على نماذج مختلفة من وحدات معالسة الرسومات (مثل A100 وH100 وL40S)، رسموا خارطة القواعد السرية الدقيقة التي تستخدمها وحدة معالجة الرسومات.

2. المحاكي (إعادة الإنتاج)

بمجرد معرفة القواعد السرية، قاموا ببناء محاكي برمجيات يعمل على وحدة معالجة مركزية (CPU) قياسية.

  • هذا المحاكي لا يقوم فقط بـ "الرياضيات العادية". إنه يحاكي الخصائص الغريبة لوحدة معالجة الرسومات.
  • إذا قامت وحدة معالجة الرسومات بتقريب رقم للأسفل، فإن المحاكي يقربه للأسفل أيضاً.
  • إذا كانت وحدة معالجة الرسومات تجمع الأرقام بترتيب هرمي معين، فإن المحاكي يفعل الشيء نفسه تماماً.

3. التطابق المثالي

الآن، عندما يريد المدقق التحقق من عمل وحدة معالجة الرسومات:

  1. تقوم وحدة معالجة الرسومات بطهي الوجبة (تشغيل ضرب المصفوفات).
  2. يأخذ المدقق المكونات و"كتاب القواعد السري" لوحدة معالجة الرسومات (الذي اكتشفه Hawkeye).
  3. يقوم المدقق بتشغيل محاكي Hawkeye على وحدة معالجة مركزية (CPU).
  4. النتيجة: مخرجات وحدة المعالجة المركزية (CPU) تكون متطابقة بتّاً (bit-for-bit) مع مخرجات وحدة معالجة الرسومات (GPU).

إذا تطابقت الأرقام تماماً، يعرف المدقق أن وحدة معالجة الرسومات قامت بالعمل بشكل صحيح. وإذا لم تتطابق، يعرف المدقق أن وحدة معالجة الرسومات قد غشت فعلياً أو ارتكبت خطأً، لأن عذر "اختلاف العتاد" قد تم استبعاده.

لماذا هذا مهم؟

  • الثقة: يمكنك الآن الوثوق بمزودي الخدمات السحابية لتشغيل نماذج الذكاء الاصطناعي الخاصة بك دون الحاجة إلى الثقة بهم بشكل أعمى.
  • لا توجد تباطؤات: لا تحتاج وحدة معالجة الرسومات إلى الإبطاء لتكون "مثالية". يمكنها الاستمرار في استخدام أنوية Tensor الخاصة بها السريعة والغريبة. Hawkeye فقط يعلّم المدقق كيف يتحدث لغة وحدة معالجة الرسومات.
  • الأمان: هذا يمنع الجهات السيئة من تغيير النماذج سراً (مثل تدريب نموذج أصغر وأرخص والتظاهر بأنه النموذج الكبير) لأن الرياضيات لن تتطابق.

الخلاصة

Hawkey هو بمثلة مترجم يسمح لحاسوب قياسي بطيء (CPU) بالتحدث بنفس اللهجة تماماً مثل حاسوب فائق السرعة ومتخصص (GPU). من خلال تعلم "لهجات" و"عاميات" وحدة معالجة الرسومات المحددة (قواعد التقريب، ترتيب التجميع)، يسمح Hawkeye لأي شخص بإعادة إنتاج حسابات وحدة معالسة الرسومات بدقة تامة، مما يضمن تشغيل وتدريب نماذج الذكاء الاصطناعي تماماً كما هو موعود.

غارق في أبحاث مجالك؟

تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.

جرّب Digest →