FlashKDA: CUTLASS Kernel من Moonshot لـ Kimi

٢ مايو ٢٠٢٦

FlashKDA: Moonshot's CUTLASS Kernel for Kimi Linear (2026)

في أواخر أبريل 2026، أطلقت Moonshot AI مشروع FlashKDA مفتوح المصدر — وهو نواة (kernel) CUDA مبنية على CUTLASS لآلية Kimi Delta Attention، توفر تسريعًا في مرحلة الـ prefill يتراوح بين 1.72x إلى 2.22x مقارنة بالأساس المرجعي flash-linear-attention على وحدات معالجة الرسومات NVIDIA H20.12 إن FlashKDA هي النواة الجاهزة للإنتاج التي تسد الفجوة بين رياضيات الانتباه الخطي (linear-attention) الأنيقة في Kimi Linear وأرقام الإنتاجية التي يتعين على أي فريق استدلال (inference) تقديمها فعليًا.

ملخص

FlashKDA هي نواة CUTLASS مفتوحة المصدر من Moonshot AI لآلية Kimi Delta Attention (KDA) التي تشغل النموذج الهجين Kimi Linear 48B-A3B.13 على وحدات معالجة الرسومات H20، تسرع هذه النواة مرحلة الـ prefill بمقدار 1.72x في أطوال السلاسل الثابتة و تصل إلى 2.22x في أطوال السلاسل المتغيرة الموحدة (seq_lens = 1024 x 8، بإجمالي T = 8192) مقارنة بتنفيذ Triton المرجعي في flash-linear-attention.2 يتم توفيرها تحت رخصة MIT، وتستهدف أجهزة SM90+ Hopper (مثل H100 و H20)، وتتطلب CUDA 12.9+ و PyTorch 2.4+.1 يتم دعم تجميع الدفعات (batching) ذات الأطوال المتغيرة بشكل أصلي عبر cu_seqlens، ويتم توجيه النواة تلقائيًا من flash-linear-attention.chunk_kda، مما يجعلها ترقية مباشرة لأي قاعدة كود FLA موجودة.2

ما ستتعلمه

  • ما هي FlashKDA وعلاقتها بمعمارية Kimi Linear
  • أرقام تسريع الـ prefill الدقيقة وظروف الاختبار المرجعي على H20
  • لماذا تحل CUTLASS محل Triton في أعباء عمل KDA الجاهزة للإنتاج
  • متطلبات الأجهزة، CUDA، و PyTorch
  • كيفية دمج FlashKDA في خط معالجة flash-linear-attention الحالي
  • القيود الحالية (أبعاد الرأس الثابتة، دعم SM90+ فقط)
  • موقع هذا التطور في القصة الأوسع للمقارنة بين linear-attention و softmax-attention

ما هي FlashKDA

إن FlashKDA هي تنفيذ عالي الأداء لنواة CUDA مبني على CUTLASS لآلية Kimi Delta Attention (KDA)، وهي آلية الانتباه الخطي التي تشغل نموذج Moonshot AI الهجين Kimi Linear 48B-A3B.13 وهي منشورة على GitHub.com/MoonshotAI/FlashKDA تحت رخصة MIT.1

بينما كانت نوى KDA المرجعية الأصلية مكتوبة بلغة Triton داخل مكتبة flash-linear-attention المفتوحة المصدر (FLA، التي ألفها في الأصل Songlin Yang من مختبر Thinking Machines)، تمت إعادة كتابة FlashKDA باستخدام قوالب CUTLASS من NVIDIA — وهي نفس مجموعة الأدوات منخفضة المستوى التي تشغل FlashAttention-3.45 والنتيجة هي نواة تستغل ميزات Hopper المحددة مثل Tensor Memory Accelerator (TMA) وتعليمات Warpgroup Matrix-Multiply-Accumulate (WGMMA) من خلال أنماط جدولة مضبوطة يدويًا — مثل تخصص الـ warp، وتداخل "بينج بونج" لعمليات GEMM و softmax — وهي أمور لا يصدرها مترجم Triton دائمًا من تلقاء نفسه.5

أرقام الاختبار المرجعي

تستهدف الأرقام التي نشرتها Moonshot مرحلة الـ prefill — وهي المرحلة المقيدة بالحوسبة التي تعالج المطالبة (prompt) قبل إنشاء أول توكن مخرج. تم إجراء الاختبارات المرجعية على وحدات معالجة الرسومات NVIDIA H20 مقابل نواة Triton المرجعية داخل flash-linear-attention.chunk_kda.2

عبء العملتكوين السلسلةالتسريع مقابل flash-linear-attention
طول ثابتسلسلة واحدة1.72x
طول متغير موحدseq_lens = 1024 x 8 (T = 8192)2.22x

حالة الطول المتغير هي المكان الذي تتفوق فيه FlashKDA بشكل أكبر: حيث يتيح تجميع ثماني سلاسل بطول 1024 توكن في استدعاء نواة واحد للنواة إشباع نوى التنسور (tensor cores) في معمارية Hopper بطريقة لا يستطيع الأساس المرجعي المعتمد على Triton القيام بها. هذا التعزيز يكتسب أهمية قصوى في خوادم الاستدلال التي تتعامل مع مطالبات مختلطة الأطوال — وهو بالضبط الإطار الذي تستهلك فيه عمليات تقديم النماذج اللغوية الكبيرة (LLM) الجاهزة للإنتاج معظم ميزانيتها الحوسبية.

لماذا تتفوق CUTLASS على Triton هنا

تعتبر Triton ممتازة لسرعة البحث. أنت تكتب كود Python يتم ترجمته إلى كود GPU، ويمكنك تجربة نوع جديد من آليات الانتباه في فترة ما بعد الظهيرة. مكتبة FLA — المكتبة الأم التي تتصل بها FlashKDA — مبنية بالكامل باستخدام Triton تحديدًا لأن هذه الحلقة المريحة مهمة للمعماربات الناشئة.4

لكن Triton تقع في طبقة واحدة فوق العتاد مباشرة. تدعم الإصدارات الأخيرة إصدار WGMMA و TMA، لكن المترجم هو من يقرر كيفية جدولتها — وعادةً ما تتطلب أنماط التنسيق عالية الضبط التي تستخرج آخر 30%+ من الإنتاجية من Hopper (مثل تخصص الـ warp، وتداخل GEMM-softmax بنمط بينج بونج، وخطوط أنابيب النسخ غير المتزامن) قوالب C++ مكتوبة يدويًا للتعبير عنها بشكل موثوق.5 مكتبة CUTLASS، وهي مكتبة NVIDIA مفتوحة المصدر لتجريدات قوالب CUDA C++، هي المكان الذي تعيش فيه هذه الأنماط: TMA لنقل الذاكرة غير المتزامن، WGMMA لعمليات GEMM على مستوى warpgroup، وجبر تخطيط CuTe لتقسيم الذاكرة المشتركة (shared-memory tiling).5 استفادت FlashAttention-3 من نفس مجموعة الأدوات للوصول إلى تسريع بمقدار 1.5x–2.0x مقارنة بـ FlashAttention-2 على وحدات H100.5

بالنسبة لنواة بحثية، قد لا تهتم بذلك. أما بالنسبة لنموذج يتم تقديمه لمستخدمين يدفعون رسومًا على وحدات H100 و H20، فإنك تفعل ذلك بالتأكيد.

المتطلبات الأساسية

تعتبر FlashKDA محددة للغاية بشأن هدفها. يسرد ملف README القيود التالية:1

المتطلبالقيمة
معمارية GPUSM90+ (Hopper: H100, H20, والأحدث)
مجموعة أدوات CUDA12.9 أو أحدث
PyTorch2.4 أو أحدث
أبعاد الرأس (Head dimension)ثابتة: K = V = 128
الرخصةMIT

يعد قيد أبعاد الرأس K = V = 128 أهم ملاحظة. النماذج القائمة على KDA ذات أبعاد الرأس المختلفة لا يمكنها استخدام FlashKDA اليوم وستحتاج إلى العودة إلى تنفيذ Triton الخاص بـ FLA. يستخدم Kimi Linear 48B-A3B أبعاد K = V = 128، وهو ما يفسر على الأرجح سبب إعطاء الأولوية لهذا البعد أولاً.3

تؤدي متطلبات SM90+ إلى استبعاد عمليات النشر على Ampere (A100) و Ada Lovelace (L40, RTX 4090). ستحتاج الفرق التي تقوم بتشغيل نماذج KDA على أساطيل A100 إلى الاستمرار في استخدام مسار Triton حتى يضيف فريق FlashKDA دعم Ampere — وهو أمر ليس بالهين لأن قصة التحسين تعتمد على تعليمات TMA و WGMMA الخاصة بـ Hopper فقط.

تكامل مباشر مع flash-linear-attention

أكثر قرار تصميمي مفيد في FlashKDA هو ما لا يتطلب منك تغييره. بمجرد التثبيت، يتم توجيه الكيرنل تلقائياً من نقطة إدخال chunk_kda في مكتبة flash-linear-attention.2 أي كود يستخدم بالفعل FLA لـ KDA — بما في ذلك خوادم الاستدلال الإنتاجية، وتكاملات vLLM، ونقاط تفتيش الأبحاث — سيحصل على تسريع الأداء دون أي تغييرات في الكود سوى التثبيت.

# Existing code — no changes needed
from fla.ops.kda import chunk_kda

output = chunk_kda(q, k, v, ...)
# With FlashKDA installed, this now hits the CUTLASS kernel
# instead of the Triton baseline on SM90+ hardware.

بالنسبة لمسار الطول المتغير، يقبل FlashKDA تنسور cu_seqlens الذي يحدد مكان بداية ونهاية كل تسلسل في دفعة مجمعة (packed batch) — وهو نفس الاصطلاح المستخدم بواسطة FlashAttention-2/3 لدفوع الاستدلال غير المنتظمة (ragged batches).2 هذه هي الميزة التي تجعل ذروة التسريع البالغة 2.22x ممكنة: إطلاق كيرنل واحد يعالج ثمانية مطالبات (prompts) بطول 1024 توكن معاً، مع مشاركة إشغال الـ tensor-core عبر الدفعة.

سياق Kimi Linear

لا يكون لـ FlashKDA معنى إلا إذا فهمت ما هو Kimi Linear ولماذا راهنت Moonshot على الانتباه الخطي (linear attention) في المقام الأول.

Kimi Delta Attention (KDA) هو تطوير لـ Gated DeltaNet يقدم بوابات على مستوى القنوات (لكل بُعد) — وهي آلية نسيان أدق من البوابات على مستوى الرأس (head-wise) أو البوابات القياسية (scalar) المستخدمة في نماذج الانتباه الخطي السابقة مثل Mamba2 أو GDN.6 في بنية Kimi Linear (arXiv:2510.26692، 30 أكتوبر 2025)، يتم تداخل ثلاث طبقات KDA مع طبقة Multi-Head Latent Attention (MLA) واحدة بنسبة هجينة 3:1.6

الأرقام الرئيسية من ورقة بحث Kimi Linear:63

  • إجمالي 48 مليار بارامتر / 3 مليار مفعلة لكل توكن (8 من أصل 256 خبيراً نشطاً، بما في ذلك خبير واحد مشترك)
  • تقليل يصل إلى 75% في ذاكرة التخزين المؤقت KV (KV cache) مقارنة بـ MLA الكامل
  • إنتاجية فك تشفير (decoding throughput) أسرع بما يصل إلى 6 مرات عند سياق 1 مليون توكن
  • الوقت لكل توكن مخرج عند سياق 1 مليون: 1.84 مللي ثانية (Kimi Linear) مقابل 11.48 مللي ثانية (MLA الكامل) — وهو تحسن بنحو 6 أضعاف تقريباً، بما يتوافق مع الرقم الرئيسي في الورقة البحثية

هذا الرقم الأخير هو بيت القصيد. يتميز الانتباه الخطي بحالة مخفية (hidden state) ثابتة الحجم لا تنمو مع طول التسلسل، مما يعني أن تكلفة فك التشفير تظل ثابتة مع نمو السياق — وهو عكس الانفجار التربيعي (quadratic blowup) في انتباه softmax تماماً. FlashKDA هو الكيرنل الذي يحول تلك المكاسب النظرية إلى أرقام فعلية على الأجهزة الحقيقية.

لماذا H20 وليس H100؟

قامت Moonshot بقياس أداء FlashKDA على H20 تحديداً، وليس H100. هذا ليس عشوائياً. H20 هو إصدار Hopper المتوافق مع قيود التصدير الصينية من NVIDIA — نفس بنية H100، ولكن مع كثافة حوسبة مخفضة (78 SM مقابل 132 في H100 SXM5 الإنتاجي) و 96 جيجابايت من ذاكرة HBM3 بنطاق ترددي 4.0 تيرابايت/ثانية.78 إنه حالياً معالج الرسوميات من فئة Hopper الذي يمكن لمختبرات الذكاء الاصطناعي الصينية شراؤه بكميات كبيرة، بعد حظر تصدير H800 الذي استخدم لتدريب نماذج Kimi السابقة (بما في ذلك Kimi K2) في أواخر عام 2023.9 قياس الأداء على H20 يجعل الأرقام ذات صلة مباشرة بأي عمليات نشر من فئة Hopper تقوم بها Moonshot والمختبرات الصينية الأخرى اليوم.

من الناحية العملية، يعمل نفس الكيرنل على H100 — كلاهما يدعم SM90 — ولكن نسبة التسريع ستتغير لأن H100 لديه قدرة حوسبة أكبر لاستيعاب نفس مكاسب حركة الذاكرة. توقع أن يظل FlashKDA أسرع من خط الأساس في Triton على H100، مع اعتماد الهامش الدقيق على شكل عبء العمل.

أين يقع هذا؟

وصل FlashKDA بعد أقل من أسبوعين من إطلاق Moonshot لنموذج Kimi K2.6 في 20 أبريل 2026 — وهو نموذج برمجة MoE أكبر بكثير بـ 1 تريليون بارامتر — لكن الإصدارين يحلان مشكلات مختلفة.10 K2.6 هو النموذج الرائد للبرمجة الوكيلية (agentic-coding). أما FlashKDA فهو بنية تحتية لنظام السياق الطويل، حيث تحقق رياضيات الانتباه الخطي في Kimi Linear أكبر فائدة.

كما أنه يأتي بجانب إصدارات تحسين الاستدلال الأخرى لعام 2026: يعالج TurboQuant من Google عنق زجاجة ذاكرة KV-cache من خلال التكميم بـ 3 بت (3-bit quantization)، بينما يعالج FlashKDA عنق زجاجة حوسبة الـ prefill من خلال تصميم كيرنل مدرك للبنية (architecture-aware).11 الاثنان يكملان بعضهما البعض — إذا كنت تقوم بتشغيل نموذج يعتمد على KDA على Hopper، يمكنك دمج FlashKDA فوق ذاكرة تخزين مؤقت مكممة للضغط على كلا المحورين.

قيود يجب معرفتها

القيدالتأثير
بُعد الرأس K = V = 128 فقطيجب أن تعود متغيرات نماذج KDA الأخرى إلى FLA Triton
SM90+ فقطلا يوجد دعم لـ A100 أو L40 أو معالجات الرسوميات الاستهلاكية اليوم
يستهدف الـ prefillتسريعات فك التشفير (decoding) ليست المقياس الرئيسي
خاص بـ KDAلا يسرع انتباه softmax أو متغيرات الانتباه الخطي الأخرى
قياس أداء H20 فقطستتغير أرقام H100؛ لم تنشر رسمياً بعد

اثنان من هذه القيود (قيد بُعد الرأس والحد الأدنى لـ SM90) هما عمل هندسي قابل للحل. أما التصميم الخاص بـ KDA فهو مقصود — لا يحاول FlashKDA أن يكون بديلاً عاماً لـ flash-attention، بل أسرع كيرنل ممكن لمتغير واحد محدد من الانتباه الخطي.

ملخص

يعد FlashKDA إصداراً هادئاً ولكنه مهم. فهو يقوم بشيء واحد — جعل Kimi Delta Attention يعمل بسرعة على Hopper — ويفعل ذلك عن طريق استبدال Triton kernel بـ CUTLASS kernel. إن تسريع الـ prefill بمقدار 1.72x إلى 2.22x مقارنة بأساس FLA هو أمر حقيقي وقابل للقياس، كما أن رخصة MIT تزيل أي عوائق، والتكامل المباشر عبر chunk_kda يعني أن أي فريق يستخدم FLA بالفعل لأحمال عمل KDA سيحصل على هذا الفوز مجاناً.12

بالنسبة لقصة linear-attention الأوسع، تكمن أهمية FlashKDA في أنه يقلص الفجوة بين الانتصارات النظرية الأنيقة (حالة مخفية ثابتة الحجم، وفك تشفير أسرع بـ 6 مرات عند سياق 1 مليون) والأرقام الفعلية التي تقيسها فرق الإنتاج.6 إن وعد Kimi Linear بكفاءة السياق الطويل لا يتحقق إلا إذا واكبت الـ kernels ذلك — و FlashKDA هو ما يجعلها تواكب.

إذا كنت تقوم بتشغيل Kimi Linear أو أي نموذج آخر يعتمد على KDA على وحدات H100 أو H20، فقم بتثبيته. أما إذا كنت تقوم بتشغيل نماذج softmax-attention، فتابع هذا المجال: عندما تطلق Moonshot المعمارية التالية، ستكون الـ kernels جاهزة بالفعل.

Footnotes

  1. FlashKDA GitHub repository - MoonshotAI/FlashKDA 2 3 4 5 6 7 8 9 10

  2. Moonshot AI Open-Sources FlashKDA: CUTLASS Kernels for Kimi Delta Attention - MarkTechPost (April 30, 2026) 2 3 4 5 6 7 8 9 10

  3. Kimi-Linear-48B-A3B-Instruct - Hugging Face 2 3 4

  4. flash-linear-attention - fla-org GitHub 2 3

  5. Next Generation of FlashAttention - NVIDIA Technical Blog 2 3 4 5

  6. Kimi Linear: An Expressive, Efficient Attention Architecture - arXiv:2510.26692 2 3 4 5

  7. مواصفات NVIDIA H20 Tensor Core GPU - كتالوج BurnCloud GPU

  8. وحدة معالجة الرسوميات H20 المتوافقة مع الصين من NVIDIA تحتوي على نوى أقل بنسبة 41% - Wccftech

  9. شركة Moonshot الصينية تدعي بناء نماذج بشرائح ذكاء اصطناعي متطورة أقل مما يستخدمه المنافسون الأمريكيون - South China Morning Post 2

  10. شركة Moonshot AI تطلق Kimi K2.6 - MarkTechPost (20 أبريل 2026)

  11. TurboQuant: إعادة تعريف كفاءة الذكاء الاصطناعي مع الضغط الفائق - Google Research

الأسئلة الشائعة

FlashKDA هو كيرنل CUDA مفتوح المصدر مبني على CUTLASS من Moonshot AI لـ Kimi Delta Attention. يقوم بتسريع مرحلة الـ prefill للاستدلال في النماذج القائمة على KDA بمقدار 1.72x إلى 2.22x على معالجات NVIDIA H20 مقارنة بخط الأساس في Triton في مكتبة flash-linear-attention.12

نشرة أسبوعية مجانية

ابقَ على مسار النيرد

بريد واحد أسبوعياً — دورات، مقالات معمّقة، أدوات، وتجارب ذكاء اصطناعي.

بدون إزعاج. إلغاء الاشتراك في أي وقت.