WEBioDD Logo
WEBioDD
📁 تطوير البرمجيات ومصادر مفتوحة••⏱️ 4 دقيقة قراءة

جوجل وميتا تطلقان TorchTPU لدعم PyTorch الأصلي على وحدات TPU

W

شبكة WEBioDD

تغطية وتحرير تقني مؤتمت بالذكاء الاصطناعي من المصادر المرجعية

جوجل وميتا تطلقان TorchTPU لدعم PyTorch الأصلي على وحدات TPU
صورة تعبيرية
إعلان ممول
إعلانات

أطلقت جوجل وميتا مشروع TorchTPU مفتوح المصدر، وهو واجهة خلفية أصلية لـ PyTorch لوحدات معالجة الموتر (TPU) من جوجل. يهدف المشروع إلى تمكين أعباء عمل PyTorch من التشغيل على أجهزة TPU بأقل تعديلات على الكود، ويدعم التنفيذ الفوري والمترجم والحوسبة الموزعة.

أبرز النقاط

  • TorchTPU هو مشروع مفتوح المصدر طورته جوجل بالتعاون مع ميتا، ويوفر دعم PyTorch الأصلي لوحدات Google TPU.
  • يسمح بتشغيل أعباء عمل PyTorch على وحدات TPU بتعديلات بسيطة على الكود، ويدعم التنفيذ الفوري والمترجم.
  • يختلف عن PyTorch/XLA السابق الذي كان يتطلب تعديلات جوهرية ويعاني من زمن استجابة طويل في الترجمة.
  • يدعم TorchTPU ثلاثة أوضاع تنفيذ فوري، منها DeferAndFuse الذي تزعم جوجل أنه يمكن أن يكون أسرع بنسبة 50% أو أكثر.
  • أظهرت الاختبارات أداءً تنافسياً على نماذج كبيرة مثل Muse Glimmer وQwen3 MoE 235B.

TorchTPU هو مشروع مفتوح المصدر طورته جوجل بالتعاون مع ميتا، ويوفر واجهة خلفية أصلية لـ PyTorch لوحدات معالجة الموتر (TPU) من جوجل. يتيح هذا المشروع لأعباء عمل PyTorch التنفيذ على أجهزة TPU بأقل تعديلات على الكود، ويدعم التنفيذ الفوري والمترجم، والحوسبة الموزعة، والتحسينات الخاصة بالأجهزة.

بدأت جوجل في تمكين أعباء عمل PyTorch من التشغيل على وحدات TPU في عام 2020 من خلال PyTorch/XLA، الذي اعتمد على JAX وXLA والموترات الكسولة. بحسب جوجل، كان لهذا النهج أوجه قصور كبيرة: يتطلب PyTorch/XLA تعديلات جوهرية في الكود المصدري لتحديد المناطق القابلة للترجمة صراحةً، وعانى من زمن استجابة شديد في الترجمة، وافتقر إلى دعم وضع التنفيذ الفوري الأصلي لـ PyTorch، وتأخر في دعم بدائيات الحوسبة الموزعة الناشئة ضمن بيئة PyTorch.

كيف يختلف TorchTPU عن النهج السابق؟

يتخذ TorchTPU نهجاً مختلفاً جذرياً، حيث يجعل التنفيذ الفوري أولوية قصوى، ويمكّن أعباء عمل PyTorch الحالية من التشغيل بتعديلات طفيفة على الكود. على وجه التحديد، تتضمن الهجرة من وحدات معالجة الرسوميات (GPUs) إلى وحدات TPU استبدال جهاز cuda بجهاز tpu، والواجهة الخلفية الموزعة nccl بـ tpu_dist. بدلاً من ذلك، يمكن للمطورين استخدام واجهة برمجة التطبيقات الجديدة torch.accelerator.current_accelerator لتحديد المسرّع المتاح، كما هو موضح في المقتطف التالي:

import torch
import torch.distributed as dist
def main():

    rank = dist.get_rank()
    word_size = dist.get_world_size()
    ...
    model = model.to(device)
    ...

يدعم TorchTPU ثلاثة أوضاع تنفيذ فوري: Strict وDebug وDeferAndFuse. هذا الأخير هو وضع تنفيذ هجين جديد (فوري/مترجم) تزعم جوجل أنه "يمكن أن يكون أسرع بنسبة 50% أو أكثر من وضع Strict Eager مع تقليل ذروة استهلاك ذاكرة HBM".

ما هي نتائج اختبارات الأداء؟

لاختبار قدرة TorchTPU على تشغيل نماذج PyTorch الحالية دون تعديلات، أنشأت جوجل خط أنابيب تكامل لتقييم حوالي 5000 نموذج من Hugging Face عبر أكثر من 500 بنية في وضعَي التنفيذ الفوري والمترجم على أجيال أجهزة TPU بدءاً من v5e. تستخدم جوجل منهجية اختبار قوية ترتكز على تقسيم المجموعات والاختيار المعماري المتوازن. يعتمد نهجها على عملية اختيار من مستويين مصممة لتحقيق التوازن بين التبني في العالم الحقيقي والتنوع المعماري الواسع، مع تجنب الاختبارات المتكررة للاختلافات الطفيفة وضمان تقييم الأوزان الإنتاجية الحقيقية بدقة.

للتحقق من أداء TorchTPU، قامت جوجل بتشغيل نموذج Muse Glimmer بـ 30 مليار معلمة، والذي تم تنفيذه باستخدام PyTorch القياسي. على شريحة TPUv7 واحدة، وصل معدل نقل الاستدلال إلى 25.7 ألف رمز/ثانية بطول تسلسل 5120، و22.4 ألف رمز/ثانية بطول تسلسل 10240. أما للتدريب، باستخدام أربع شرائح TPUv7، فقد وصل معدل النقل إلى 5.6 ألف رمز/ثانية و4.6 ألف رمز/ثانية بطول تسلسل 5120 و10240 على التوالي. كما أجرت جوجل تجارب باستخدام Qwen3 MoE 235B لأعباء عمل التدريب، مع التوسع من 1024 إلى 8192 شريحة TPUv7. بالنسبة للاستدلال، أبلغت جوجل عن أداء تنافسي لكل دولار لأعباء عمل MoE واسعة النطاق باستخدام vLLM.

تعليقاً على الإعلان، لاحظ مستخدم Hacker News tingkuanpei: "عمل مثير للاهتمام للغاية. كان ينبغي على جوجل أن تفعل هذا منذ فترة طويلة. بيئة PyTorch غنية جداً." أشار مستخدمون آخرون إلى أنه بالإضافة إلى تقديم وحدات TPU عبر GCP، تبيعها جوجل "لعملاء المؤسسات للنشر في أماكن العمل"، ويشمل ذلك Anthropic وربما Meta في المستقبل.

لا يزال TorchTPU في مرحلة مبكرة وبالتالي في تطور مستمر. تتضمن خارطة طريق المشروع العمل على الأشكال الديناميكية، وأداء الترجمة، وتغطية المشغلات، والتعلم المعزز، والتكميم. لمزيد من التفاصيل، يُنصح بقراءة الإعلان الأصلي الذي يوفر رؤية أكثر شمولاً لبنية ونطاق TorchTPU.

🤖

إفصاح الشفافية ومصدر الخبر

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

زيارة المصدر الأصلي المرجعي
إعلان ممول
إعلانات

📰 مقالات وتقارير ذات صلة