أوركسترا الأنوية المرنة: كيف يتشارك استدلال LLM المعالج مع نظام التشغيل دون نشاز ✛

الأصل: "Elastic Gang: Per-Token Membership Change for a Hard-Barriered LLM Inference Gang Co-Scheduled with OS Processes"
· Daeyeon Son
arXiv:2607.04668 · 2026-07-06 · CC BY-SA 4.0 · 4 دقيقة
يسمح بروتوكول ACK-latch لمجموعة الأنوية التي تنفذ استدلال LLM باستعارة الأنوية وإعادتها بين الرموز دون توقف أو تشويه للنتائج.

السياق

توقفت سبعة أنوية عند حاجز (barrier) غير مرئي. تأخر الثامن في عملية أخرى — فتجمّد استدلال LLM بالكامل. هكذا تبدو المعضلة الكبرى في تعايش مهام التعلم الآلي مع العمليات الاعتيادية على معالج واحد. تتطلب مجموعة الاستدلال أن تعزف جميع الأنوية بتناغم في آنٍ واحد — وإلا ساد الصمت. لكن نظام التشغيل لا يستطيع تجميد نواة واحدة فجأة في منتصف رمز (token): فالحاجز لن ينتظر المتأخر أبداً، وإضافة مشارك جديد عشوائياً ستشوه النتيجة بصمت. التخصيص الثابت لأنوية "الاستدلال" يحل المشكلة جزئياً فقط: ففي فترات التوقف بين التوليدات تبقى هذه الأنوية عاطلة، بينما تختنق العمليات العامة على ما تبقى. تتفاقم المشكلة في الأجهزة الطرفية (edge devices) دون وحدات معالجة رسومية (GPU)، حيث المعالج هو الحاسوب الوحيد، وكل واط يُحسب بدقة. المطلوب آلية تسمح للأنوية بالتدفق بين التجمعات دون انتهاك الصوابية — تماماً كما يدخل العازفون إلى الأوركسترا ويخرجون منها بين المقاطع الموسيقية دون أن يخلوا بالإيقاع.

المنهجية

نُفذ بروتوكول ACK-latch في نواة نظام التشغيل Anima OS — نظام تشغيل مكتوب بلغة Rust، يعمل على معالج AMD Ryzen 9 9800X3D (معمارية Zen 5). يقوم محرك الاستدلال بتحميل النماذج المُكمَّمة (quantized models) SmolLM2-135M وQwen2.5-7B وينفذ الاستدلال، مقسماً كل رمز (token) إلى موجات من عمليات المصفوفات والمتجهات، تفصل بينها حواجز (barriers) (نحو 226 حاجزاً لكل رمز). قبل بدء التوليد، يُرفع علم النشاط ويُزاد رقم الحقبة (epoch)؛ كل نواة قابلة للإعارة تؤكد (ack) الحقبة الحالية، بعد أن تحفظ حالة عمليتها — تماماً كعازف يضع آلته في وضع الانتظار ويومئ لقائد الأوركسترا. تُثبَّت تشكيلة المشاركين للرمز التالي في كلمة ذرية واحدة (atomic word): يُشكَّل قناع البتات (bitmask) من تقاطع الأنوية التي طلبتها المجموعة والأنوية التي تطابق تأكيدها (ack) مع الحقبة لحظة التثبيت. تُنشر هذه الكلمة قبل بدء الرمز، وتقرؤها جميع نقاط انتظار الحواجز. النواة التي لم تتمكن من التأكيد لا تُضمَّن ببساطة في الرمز الحالي — لا أحد ينتظرها، وتستحوذ جاراتها في المجموعة على عملها. مع انقضاء الحقبة (بانتهاء التوليد أو بدء حقبة جديدة) تُلغى جميع التأكيدات القديمة، فلا تتمكن الأنوية المتأخرة أو التي غادرت المجموعة من التأثير على الرموز اللاحقة. يتولى المجدول (scheduler) نقل العمليات المُزاحة: تنتقل العملية من النواة المستعارة إلى أخرى وتتابع عملها، وعند عودة النواة تلتقط طوابيرها فوراً.

النتائج

اختُبرت المجموعة المرنة على نموذجين: الخفيف SmolLM2-135M (0.75 ميلي ثانية لكل رمز، وهو يختبر البروتوكول بقسوة) والثقيل Qwen2.5-7B (79 ميلي ثانية لكل رمز، ويعتمد على عرض النطاق الترددي للذاكرة). عند حمل استدلال بنسبة 25% (أي ربع الوقت مشغول بالتوليد) بلغ إجمالي إنتاجية العمليات العادية 574 كم خدمة في الثانية — وهو أعلى بـ 1.75 مرة من التقسيم الثابت (327). عند حمل 50% أعطت المجموعة المرنة زيادة قدرها 1.52×، وعند 75% كانت 1.28×، دون أي تراجع في سرعة الاستدلال نفسه. عند حمل 100% تساوت المؤشرات، كما تنبأت النظرية. والأهم: بقي خرج النماذج مطابقاً بتاً بتاً للتشغيل الثابت. قيمة هاش اللوغيتات (logits) النهائية 0x9a2917eca1a62bd1 لم تتغير في أي من السيناريوهات، بما في ذلك اختبار الإجهاد مع إقراض حقيقي للأنوية دون تغيير العرض المستهدف للمجموعة — أثبت الإقراض سلامته. بلغ تأخير إعادة النواة بعد انتهاء التوليد 0.22 ميكروثانية (وسيط) — شبه فوري. أما الاستحواذ على نواة مشغولة، وفق سياسة متحفظة عمداً، فيستغرق كم مجدول واحد (scheduler quantum) (نحو 16 ميلي ثانية): لا تُقاطع العملية المستعيرة في منتصف كمها، ولا تنضم النواة إلى المجموعة إلا بعد انتهائه.

الأهمية

يكسر هذا العمل الفكرة الراسخة بأن الحوسبة ذات الحواجز الصارمة لا تتوافق مع إعادة التوزيع الديناميكي للأنوية. يحول بروتوكول ACK-latch مجموعة الاستدلال إلى كيان جدولة كامل، قادر على مشاركة الموارد مع بقية النظام دون فقدان الصوابية. يمهد هذا الطريق لأنظمة تشغيل لا يكون فيها الاستدلال مهمة معزولة، بل خدمة نواة عادية، تتكيف بمرونة مع الحمل الحالي.

التطور المستقبلي

يمكن نقل هذه الآلية إلى فضاء المستخدم في أنظمة Linux باستخدام المجدول SCHED_DEADLINE، كما يمكن تكييفها للتعامل مع المعماريات غير المتجانسة (big.LITTLE) وطوبولوجيات تعدد الخيوط الفائق (SMT). يمكن دمجها أيضاً مع سياسات توفير الطاقة لتحديد عدد الأنوية المستعارة بدقة.

التأثير

سيؤثر ذلك على تصميم أنظمة التشغيل للأجهزة المدمجة والطرفية، حيث يصبح استدلال وحدة المعالجة المركزية هو الحمل الأساسي، كما سيؤثر على البنية التحتية لوكلاء نماذج اللغة الكبيرة (LLM agents)، مما يرفع كفاءة استخدام المعالجات دون التضحية بالاستجابة.

الخطوات التالية

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

المسائل المفتوحة الرئيسية

هكذا تتزامن المجموعة المرنة، مثل أوركسترا دون قائد، عبر مدوّنة موسيقية واحدة (partitura)، ولا تسمح بتغيير التشكيلة إلا بين الرموز-المقاطع. هذه خطوة نحو حل المشكلة الأساسية المتمثلة في التعايش السلمي بين الحوسبة المتزامنة وغير المتزامنة في نظام واحد، ونحو فهم الثوابت الدنيا للهجرة الآمنة لأعضاء مجموعة الحواجز.

نظرة آلة المعرفة

هذا القسم موجَّه إلى مؤلف العمل وزملائه. الأعمال المجاورة عثر عليها بحثٌ دلالي في أرشيفنا، لا بتطابق الكلمات. نحن لا نقيّم العمل: نعرض الحقل من حوله.

ماذا يفعل هذا العمل

تقترح الورقة بروتوكول ACK-latch للتوزيع المرن للنوى بين استدلال نماذج اللغة الكبيرة (LLM) والعمليات العادية في نظام Anima OS. يسمح البروتوكول للنوى بالدخول والخروج ديناميكيًا من نطاق الاستدلال بين الرموز (tokens) دون كسر مزامنة الحاجز (barrier synchronization)، وهو ما تم تأكيده بتجارب على نموذجي SmolLM2-135M وQwen2.5-7B. كما أظهرت النتائج زيادة في إنتاجية العمليات الخلفية تصل إلى 1.75× مقارنة بالتقسيم الثابت للنوى.

أين تكمن قوته

تكمن القوة في التثبيت الذري لتكوين النطاق عبر قناع بتات (bitmask) وعصور (epochs)، مما يضمن الصحة عند إعادة التوزيع الديناميكي للنوى دون انتظار المتأخرين. يتيح ذلك الاستفادة الفعالة من النوى الخاملة أثناء فترات التوقف في الاستدلال مع الحفاظ على استجابة النظام.

إلى أين يمكن المضي

يستحق التجربة

  • اختبار ACK-latch لعدة نطاقات استدلال متزامنة بأولويات مختلفة، لفحص كيفية تأثير تقاطع الأقنعة على الأداء.
  • تجربة إدارة تكيفية لحجم النطاق بناءً على توقع الحمل، باستخدام تاريخ تأكيدات ack للتنبؤ بتوفر النوى.
  • دراسة تأثير ترحيل العمليات على تماسك الذاكرة المؤقتة (cache locality) واقتراح استراتيجيات لاختيار النوى المانحة تقلل من خسائر النقل.

لماذا قد يكون هذا مهمًا

يمكن للتوزيع المرن للموارد لاستدلال LLM على الأجهزة الطرفية (edge) دون وحدات معالجة رسومية (GPU) أن يعزز بشكل كبير الاستجابة العامة وكفاءة الطاقة، وهو أمر مهم للتبني الواسع للمساعدين العصبيين المحليين. يفتح البروتوكول المقترح الطريق أمام أنظمة تشغيل أكثر مرونة قادرة على الموازنة ديناميكيًا بين الاستدلال والمهام الخلفية دون المساس بالصحة.

الملخص الأصلي

كما كتبه المؤلفون، بالإنجليزية arXiv:2607.04668

On-device LLM decoding is a hard-barriered CPU-SIMD computation that wants every core for milliseconds per token, while the rest of the OS wants those same cores continuously. A barriered gang cannot simply be dropped into a preemptive scheduler: an unannounced departure deadlocks a barrier, and an unannounced arrival silently corrupts logits. I present the elastic gang of Anima OS, a bare-metal x86-64 Rust kernel in which the inference gang is a first-class schedulable entity whose core membership may change between any two tokens. The core mechanism is an ACK-latched epoch protocol that never waits on a named core: a seqlock-style generation-tagged latch composed with RCU/epoch-style membership consent, so each token's participant set is the intersection of the cores the gang requested and the cores that acked the current epoch. An un-acked core is outside this token and joins at most one token later. Displaced general processes migrate and keep running; cores return to them the moment a generation ends. On a real AMD Zen 5 machine (8C/16T), inference output is bit-exact under verified per-token membership change on both a 135M and a 7B model, the property that makes elasticity safe in a kernel whose safety gate reads logits. Against fair static core partitions, elastic membership Pareto-dominates: at intermediate inference duty cycles it delivers 1.75x (25%), 1.52x (50%), and 1.28x (75%) the general throughput of a static 8-core split at equal or better inference throughput, recovers all eight stranded cores when inference is idle, and converges to the split at saturation. Returning a lent core costs 0.22 us (p50); acquiring a busy, tenant-occupied core costs one scheduling quantum (~16 ms): a running tenant is never preempted mid-slice. Decode throughput saturates at gang width 8, so ceding cores past the knee is nearly free: elasticity auto-sizes the gang online.

حتى مع 301 ترحيل للعمليات خلال نافذة 10 ثوانٍ، بقي الاستدلال مطابقاً بتاً بتاً، ولم يتجاوز تشتت قياسات الإنتاجية 0.9%.

أرقام رئيسية

  • زيادة الإنتاجية الإجمالية (عند 25% استدلال): 1.75×
  • تأخير إعادة النواة (المئين 50): 0.22 ميكروثانية
  • الحد الأقصى للأنوية للتسريع: 8
  • سرعة استدلال نموذج 7B: 12.7 رمز/ثانية
المفاهيم
آلة تورينج نماذج اللغة الكبيرة