PTStore (Prefix Tensor Store): Distributed Prefix Caching and Replication for High Throughput Inference Serving
إن PTStore هو نظام موزع مستوحى من تخزين الشبكات لتوصيل المحتوى (CDN) يقوم بتكرار بادئات ذاكرة التخزين المؤقت (KV cache prefixes) الشائعة عبر العقد لتقليل زمن انتقال الاستدلال، وموازنة أحمال الخوادم، وتمكين التوسع الهائل في الذاكرة، مما يؤدي إلى كفاءة أعلى بمقدار 5-6 مرات لاستدلال النماذج اللغوية الكبيرة ذات السياق الطويل مقارنة بالنماذج المرجعية الحالية.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
ملخص تقني: PTStore (مخزن التنسورات البادئة - Prefix Tensor Store)
بيان المشكلة
أصبحت أعباء عمل استنتاج النماذج اللغوية الكبيرة (LLM) هي الحمل المهيمن في مراكز بيانات الحوسبة عالية الأداء (HPC)، متجاوزةً مرحلة التدريب في استهلاك الطاقة والطلب على الموارد. يتكون استنتاج النماذج اللغوية الكبيرة من مرحلتين: التمهيد (prefill) (معالجة المطالبة المدخلة بالتوازي) والتوليد (decode) (توليد الرموز بشكل متسلسل). ولتجنب الحساب المتكرر لآليات الانتباه، تستخدم الأنظمة ذاكرة مفتاح-قيمة (KV cache) لتخزين النتائج الوسيطة.
بينما تعمل بيئات التشغيل الحديثة (مثل vLLM) على تحسين ذاكرة KV داخل وحدة معالجة رسومات (GPU) واحدة أو عقدة واحدة، إلا أنها تواجه قيودًا كبيرة عند التوسع:
- الافتقار إلى إعادة الاستخدام عبر العقد: غالبًا ما تفشل الأنظمة الحالية في تجميع الذاكرة عبر عقد الحوسبة الموزعة. فإذا كان طلب في عقدة ما يشترك في بادئة (prefix) مع طلب في عقدة أخرى، فإن العقدة الثانية تقوم عادةً بإعادة حساب البادئة بدلاً من إعادة استخدام التنسورات المخزنة مؤقتًا.
- اختناقات البيانات الوصفية وزمن الوصول: النهج التي تحاول التخزين المؤقت الموزع (مثل LMCache وEvoStore) تعاني غالبًا من أعباء إدخال/إخراج (I/O) عالية بسبب الوصول إلى الذاكرة عن بُعد أو التزامن المعقد للبيانات الوصفية (مثل توسيع نطاق Radix-Attention إلى ما وراء عقدة واحدة).
- قيود الذاكرة: لا تكفي ذاكرة وحدة معالجة الرسومات الفردية لنوافذ السياق الكبيرة، كما أن نقل البيانات إلى ذاكرة المضيف (host memory) أو أقراص SSD يؤدي إلى زمن وصول يلغي فوائد التخزين المؤقت.
التحدي الجوهري هو تمكين إعادة استخدام بادئات ذاكرة KV بشكل قابل للتوسع ومنخفض زمن الوصول عبر عدد كبير من وحدات معالجة الرسومات الموزعة على العديد من عقد الحوسبة دون تكبد أعباء إدخال/إخراج أو بيانات وصفية باهظة الثمن.
المنهجية: بنية PTStore
PTStore (مخزن التنسورات البادئة) هو مخزن تنسورات موزع ومكرر مصمم لمعالجة هذه القيود من خلال توزيع وتكرار بادئات ذاكرة KV الشائعة. يستخدم النظام نموذج العميل-الخادم حيث تشغل كل عقدة حوسبة خادمًا يجمع ذاكرة المضيف المحلية وأقراص SSD لخدمة عملاء GPU المحليين والبعيدين.
مبادئ التصميم الرئيسية
التخزين التدريجي للتنسورات (بنية تشبه الـ Trie):
- بدلًا من تخزين كتل KV كاملة، يخزن PTStore الاختلافات التدريجية (التنسورات) بين كائن جديد وأطول بادئة مشتركة (LCP) للكائنات المخزنة مسبقًا.
- يسمح هذا للبادئات بالنمو دون تكرار بمرور الوقت في اتجاهات متباعدة، بشكل مشابه لهيكل الـ trie، ولكن يتم تنفيذه عبر دقة مستوى التنسور.
- البيانات الوصفية الموحدة: لتجنب البحث المكلف في الـ trie الموزع، يستخدم PTStore بنية بيانات وصفية مسطحة. تحتوي البيانات الوصفية لكل كائن على قائمة بمعرفات التنسور الفريدة. تقوم عملية التحميل بالمرور عبر هذه المعرفات للتحقق من وجودها محليًا في ذاكرة التكرار المؤقتة؛ وإذا كانت مفقودة، يتم جلبها عن بُعد من خادم "المالك".
التخزين المؤقت الهرمي الموزع مع التكرار:
- الذاكرة المملوكة (Owned Cache): تخزن التنسورات التدريجية التي يكون خادم معين مسؤولًا عنها.
- ذاكرة التكرار (Replication Cache): تخزن نسخًا من البادئات "الساخنة" (الأكثر شيوعًا) محليًا على الخادم لتحسين محلية الوصول.
- إدارة المقايضة: يدير النظام عتبة قابلة للضبط بين الذاكرة المملوكة وذاكرة التكرار. يعطي الأولوية للتخلص من التنسورات المكررة (التي يمكن إعادة جلبها) على التخلص من التنسورات المملوكة (التي تتطلب التفريغ إلى تخزين أبطأ) لموازنة سرعة الاسترجاع مقابل سعة التخزين.
الإخلاء الواعي لأنماط الوصول:
- يستخدم PTStore سياسة إخلاء تعتمد على التكرار (مقتبسة من GDSF) بدلاً من "الأقل استخدامًا مؤخرًا" (LRU)، لأن هياكل البادئات تعني أن التنسورات المبكرة يتم الوصول إليها بشكل متكرر أكثر.
- يأخذ النظام في الاعتبار المقايضة بين الحجم والتكرار، مما يضمن عدم إزاحة التنسورات الصغيرة والمتكررة للتنسورات الأكبر والأعلى تكلفة في الجلب.
التوحيد المدرك لـ RDMA:
- لتقليل التشتت، يتم توحيد الزيادات الملحقة بـ LCP في منطقة متصلة واحدة على خادم المالك.
- تستخدم عمليات التحميل RDMA الجماعي (الوصول المباشر للذاكرة عن بُعد) لجلب الأجزاء المشتتة بالتوازي عبر طلب RPC واحد، لتجنب عبء نسخ البيانات إلى منطقة متصلة قبل النقل.
المساهمات الرئيسية
- مبادئ التصميم: مجموعة من المبادئ عالية المستوى لمستودع موزع يدمج التخزين التدريجي للتنسورات، والبيانات الوصفية الموحدة، وتكرار البادئة.
- نموذج PTStore الأولي: نموذج بحثي أولي ينفذ هذه المبادئ، ويتميز بواجهة برمجة تطبيقات C++ منخفضة المستوى وواجهة Python للتكامل السلس مع بيئات تشغيل LLM مثل vLLM.
- التحقق من الأداء: تجارب مكثفة تثبت انخفاضًا كبيرًا في أعباء الإدخال/الإخراج وزمن التشغيل النهائي مقارنة بالنماذج المرجعية المتطورة.
النتائج التجريبية
قام المؤلفون بتقييم PTStore على منصة اختبار ALCF Polaris HPC (560 عقدة، وحدات معالجة رسومات A100) باستخدام نوعين من مهام الاستخراج الإجابي (extractive QA): WikiQA (سياق طويل) وSQUAD (حجم كبير من الأسئلة). النموذج المستخدم هو Mistral-7B-instruct-V2.
النماذج المرجعية (Baselines)
- vLLM Vanilla: نسخة vLLM القياسية بدون مشاركة بادئة عبر الطلبات.
- vLLM Prefix: نسخة vLLM مع مشاركة البادئة المحلية (داخل العقدة).
- EvoStore: مخزن تنسورات موزع يستخدم التخزين التدريجي وRDMA ولكنه يفتقر إلى تكرار البادئة المحلي.
- PTStore: النظام المقترح مع الوعي الموزع والتكرار المحلي.
النتائج
- ضعف القابلية للتوسع (8–32 وحدة معالجة رسومات): تفوق PTStore بشكل كبير على EvoStore وvLLM Prefix. بينما عانى EvoStore من أعباء إدخال/إخراج RDMA عالية عند جلب البادئات البعيدة، خفف تكرار PTStore المحلي من ذلك، مما أدى إلى "ميزة منفصلة" في زمن الوصول لأول توكن (TTFT).
- قابلية التوسع لطول التسلسل (1k–8k توكن):
- بالنسبة للتسلسلات القصيرة (1k)، كان التخزين المؤقت المحلي لـ vLLM منافسًا.
- مع زيادة طول التسلسل، نمت ميزة PTStore. عند 8k توكن، كان PTStore أسرع بنحو مرتين من تخزين vLLM المؤقت للبادئة، وأسرع بنسبة 20% من EvoStore.
- اتسعت الفجوة في الأداء مع السياقات الأطول لأن تكلفة إعادة الحساب أو الإدخال/الإخراج عن بُعد فاقت فوائد التخزين المؤقت المحلي فقط.
- مكاسب الكفاءة: في مجموعات بيانات الأسئلة والأجوبة ذات النصوص الطويلة، نفذ PTStore عمليات الاستنتاج بكفاءة أكبر بـ 5-6 مرات من النماذج المرجعية التي لا تجمع الذاكرة عبر العقد وتتطلب إعادة توليد ذاكرة KV.
الأهمية والادعاءات
يزعم البحث أن PTStore يعالج فجوة حرجة في خدمة استنتاج النماذج اللغوية الكبيرة القابلة للتوسع: وهي عدم قدرة الأنظمة الحالية على إعادة استخدام بادئات ذاكرة KV بكفاءة عبر العقد الموزعة. من خلال الجمع بين التخزين التدريجي لتقليل التكرار، والبيانات الوصفية الموحدة للاستعلامات السريعة، واستراتيجية التكرار لتحسين المحلية، يتيح PTStore:
- توسيع هائل لحجم ذاكرة KV الفعالة عن طريق تجميع الذاكرة عبر العنقود (cluster).
- تقليل كبير في زمن الوصول لأول توكن (TTFT)، خاصة في مهام السياق الطويل حيث تكون إعادة الحساب مكلفة.
- قابلية التوسع التي تتجنب اختناقات الاتصال ومشكلات مزامنة البيانات الوصفية التي تعاني منها النهج الموزعة السابقة.
يضع المؤلفون PTStore كخطوة أساسية نحو استنتاج الذكاء الاصطناعي القابل للتوسع، مشيرين إلى أن العمل المستقبلي سيركز على موازنة الذاكرة الديناميكية، وسياسات الإخلاء القائمة على تعلم الآلة، والمقارنة الأوسع مع أنظمة مثل LMCache وMooncake على آثار المحادثة الحقيقية وإكمال الكود.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.