CPU simulators are vital for computer architecture research, primarily for estimating performance under different programs. This poses challenges for fast and accurate simulation of modern CPUs, especially in multi-core systems. Modern CPU peformance simulators such as GEM5 adopt the cycle-accurate and event-driven approach, which is timeconsuming to simulate the extensive microarchitectural behavior of a real benchmark running on out-of-order CPUs. Recently, machine leaning based approach has been proposed to improve simulation speed, but they are currently limited to estimating the cycles of basic blocks rather than the complete benchmark program. This paper introduces a novel ML-based CPU simulator named CAPSim, which uses an attention-based neural network performance predictor and instruction trace sampling method annotated with context. The attention mechanism effectively captures long-range influence within the instruction trace, emphasizing critical context information. This allows the model to improve performance prediction accuracy by focusing on important code instruction. CAPSim can predict the execution time of unseen benchmarks at a significantly fast speed compared with an accurate O3 simulator built with gem5. Our evaluation on a commercial Intel Xeon CPU demonstrates that CAPSim achieves a 2.2 - 8.3x speedup compared to using gem5 built simulator, which is superior to the cutting-edge deep learning approach
- معرّف الورقة: 2510.10484
- العنوان: CAPSim: A Fast CPU Performance Simulator Using Attention-based Predictor
- المؤلفون: Buqing Xu, Jianfeng Zhu, Yichi Zhang, Qinyi Cai, Guanhua Li, Shaojun Wei, Leibo Liu
- التصنيف: cs.PF (الأداء)
- تاريخ النشر: 12 أكتوبر 2025
- المؤسسة: كلية الدوائر المتكاملة، جامعة تسينغهوا
- رابط الورقة: https://arxiv.org/abs/2510.10484v1
تعتبر محاكيات المعالجات حاسمة لأبحاث معمارية الحاسوب، وتُستخدم بشكل أساسي لتقييم الأداء لبرامج مختلفة. تعتمد محاكيات أداء المعالج الحديثة مثل GEM5 على أساليب دقيقة من حيث الدورات وموجهة بالأحداث، لكنها تستغرق وقتاً طويلاً جداً عند محاكاة السلوك الدقيق للمعمارية المعقدة للمعالجات غير المرتبة على معايير حقيقية. تقترح هذه الورقة CAPSim، وهي محاكي معالج جديد مدفوع بالتعلم الآلي يستخدم مُتنبئ شبكة عصبية قائم على آلية الانتباه، مع استخدام طريقة أخذ عينات من تتبع التعليمات مع تعليقات السياق. تلتقط آلية الانتباه بفعالية التأثيرات البعيدة المدى في تتبع التعليمات، مع التركيز على معلومات السياق الحاسمة. تُظهر التجارب أن CAPSim يحقق تسريعاً بمعدل 2.2-8.3 مرة مقارنة بمحاكي O3 المبني على gem5.
- اختناق سرعة المحاكيات التقليدية: تعاني محاكيات الدورة الحديثة (مثل gem5) من بطء شديد عند محاكاة برامج معايير كاملة، والأسباب الرئيسية تشمل:
- محاكاة دقيقة من حيث الدورات هي بطبيعتها عملية متسلسلة، يصعب توازيها
- محاكاة المعالجات الحديثة غير المرتبة تتطلب نمذجة جميع تفاصيل المعمارية الدقيقة، مما يسبب تكاليف حسابية ضخمة
- قيود الطرق الحالية المبنية على التعلم الآلي: الطرق الموجودة (مثل Ithemal و Granite) مقتصرة على التنبؤ بإنتاجية الكتل الأساسية فقط، ولا يمكنها التعامل مع التنبؤ بأداء البرامج الكاملة
- توازن الدقة والسرعة: الحاجة إلى تحقيق تحسن كبير في سرعة المحاكاة مع الحفاظ على دقة التنبؤ
- محاكيات المعالج هي أدوات أساسية لأبحاث معمارية الحاسوب
- مع زيادة تعقيد معمارية المعالج وانتشار الأنظمة متعددة النوى، تواجه الطرق التقليدية مشاكل كفاءة خطيرة
- التنبؤ السريع والدقيق بالأداء حاسم للتصميم المشترك بين البرامج والأجهزة والتحسين
- اقتراح طريقة التنبؤ بأداء المعالج القائمة على آلية الانتباه: تطبيق أول لآلية الانتباه في التنبؤ بالأداء على مستوى التعليمات، يمكنها التقاط العلاقات التبعية البعيدة المدى بين التعليمات، وتوسيع قدرات التنبؤ من مستوى الكتلة الأساسية إلى مستوى البرنامج الكامل
- تصميم إطار عمل محاكي CAPSim الكامل: دمج محاكي وظيفي سريع مع مُتنبئ أداء كتل الأكواد الدقيق، لتحقيق توازن بين السرعة والدقة
- تطوير طرق تسريع التدريب: تقسيم مجموعة بيانات التدريب إلى فئات مثل كثيفة الحسابات وكثيفة الذاكرة وكثيفة التحكم من خلال تقنيات التجميع والأخذ بالعينات، مما يقلل بشكل كبير من وقت التدريب ويمنع الإفراط في التدريب
- تحقيق تحسن أداء ملحوظ: تحقيق تسريع أقصى بمعدل 8.3 مرة على معايير SPEC2017، بمتوسط تسريع 4.9 مرة، مع الحفاظ على دقة تنبؤ مقبولة
الإدخال: تسلسل تتبع التعليمات ومعلومات سياق المعالج (حالة السجلات)
الإخراج: التنبؤ بوقت التنفيذ لقطع الأكواد
الهدف: تحسين سرعة تقييم البرامج المعيارية الكاملة بشكل كبير مع ضمان دقة التنبؤ
يعتمد CAPSim على معمارية من طرف إلى طرف، تتضمن المكونات الرئيسية التالية:
- محاكي AtomicSimple CPU: توليد سريع لتتبع التعليمات
- مقسم تسلسل التعليمات: تقسيم تسلسلات التعليمات الطويلة إلى قطع أكواد قابلة للمعالجة
- أداة أخذ العينات: تقليل حجم بيانات التدريب، وتسريع عملية التدريب
- مُتنبئ الأداء القائم على الانتباه: وحدة التنبؤ الأساسية
تنمذج الورقة إجمالي وقت التنفيذ على النحو التالي:
Ttotal=∑n=1Nti⋅αi
حيث ti هو وقت التنفيذ المثالي للتعليمة i، و αi هو عامل التأثير. من خلال إدخال التمثيل المتجه وآلية الانتباه، تصبح الصيغة النهائية:
Ttotal=∑i=1MMLP(Attention(contextM×E,TET,TET))
طبقة التحويل المعياري:
تحويل تعليمات التجميع الأولية إلى تسلسل رموز معياري، يتضمن أربع قطاعات:
<OPCODE>: رمز العملية<DSTS>: معاملات الوجهة<SRCS>: معاملات المصدر<MEM>: معلومات الوصول إلى الذاكرة
بناء معلومات السياق:
بناء مصفوفة السياق التي تتضمن معلومات حالة المعالج، كما هو موضح في الجدول الأول من أنواع السجلات المختلفة:
| نوع السجل | العدد | عرض البت | الوصف |
|---|
| السجلات ذات الأغراض العامة (GPR) | 32 | 64 | السجلات الرئيسية للتخزين |
| سجلات المتجهات العددية (VSR) | 64 | 128 | سجلات العمليات العائمة |
| سجل الشروط (CR) | 1 | 32 | يعكس نتائج العمليات |
| عداد البرنامج (CIA/NIA) | 2 | 64 | عناوين التعليمات |
شبكة الانتباه متعددة الطبقات:
- مشفر التعليمات: تطبيق آلية الانتباه الذاتي على كل تعليمة
- مشفر الكتل: معالجة العلاقات التبعية بين تسلسلات التعليمات
- طبقة MLP: الإخراج النهائي للتنبؤ بوقت التنفيذ
- نمذجة التبعيات البعيدة المدى: مقارنة بنماذج التسلسل مثل LSTM، يمكن لآلية الانتباه التقاط التبعيات البعيدة المدى بين التعليمات بشكل أفضل
- التنبؤ الذي يدرك السياق: إدخال حالة سجلات المعالج كمعلومات سياقية، لتحسين دقة التنبؤ
- تصميم الانتباه الهرمي: آلية انتباه مزدوجة على مستوى التعليمات والكتل، مع الأخذ في الاعتبار العلاقات بين الرموز داخل التعليمات والتبعيات بين التعليمات
- معالجة متوازية: تقسيم تسلسلات التعليمات الطويلة إلى قطع صغيرة، مما يدعم المعالجة المتوازية على وحدات معالجة الرسومات، مما يحسن بشكل كبير من سرعة الاستدلال
- مجموعة المعايير: SPEC2017، تتضمن 24 برنامج معياري
- معمارية مجموعة التعليمات: Power ISA
- حجم الفترة الزمنية: 5,000,000 تعليمة، حجم الإحماء 1,000,000 تعليمة
- طول قطعة الكود: 100-200 تعليمة
- إجمالي نقاط التفتيش: 623 نقطة
- مقاييس السرعة: نسبة التسريع بالنسبة لمحاكي gem5
- مقاييس الدقة: متوسط النسبة المئوية للخطأ المطلق (MAPE)
- الطريقة التقليدية: محاكي gem5 O3 للمعالج فائق العددية
- خط الأساس للتعلم الآلي: نموذج Ithemal المبني على LSTM
- التجارب الاستئصالية: متغير CAPSim بدون معلومات السياق
- منصة الأجهزة: NVIDIA GeForce RTX 4090 (24GB)، Intel Xeon CPU E5-2623 v4
- معاملات النموذج: بُعد متجه التضمين 128، عدد رؤوس الانتباه 4، عدد طبقات المشفر 4
- إعدادات التدريب: محسّن SGD، معدل التعلم 0.001، الزخم 0.9
- معاملات أخذ العينات: الحد الأدنى 200، معامل أخذ العينات 0.02
تحسن السرعة:
- أقصى نسبة تسريع: 8.3 مرة (معيار 510.parest)
- متوسط نسبة التسريع: 4.9 مرة
- يرتبط تأثير التسريع بشكل إيجابي بعدد نقاط التفتيش، مما يعكس مزايا التوازي على وحدات معالجة الرسومات
أداء الدقة:
- تحسن بنسبة 9.5%-21.2% مقارنة بخط الأساس LSTM، بمتوسط تحسن 15.8%
- تحسن بنسبة 1.3%-9.6% بعد إدخال معلومات السياق، بمتوسط تحسن 6.2%
- متوسط MAPE على مجموعة التدريب المختلطة هو 12.0%
- آلية الانتباه مقابل LSTM: تتفوق آلية الانتباه بشكل كبير على LSTM عند التعامل مع قطع الأكواد الطويلة
- تأثير معلومات السياق: تلعب معلومات السياق دوراً حاسماً في تحسين دقة التنبؤ
- تأثير التدريب المصنف: يحسن التدريب المصنف الدقة بنسبة 0.5% مقارنة بالتدريب المختلط
التحقق المتقاطع عبر المعايير:
- تجارب التحقق المتقاطع 6×6، 36 مجموعة تدريب-اختبار
- دقة مجموعة التدريب 91.3%، متوسط الدقة الإجمالي 88.3%
- يثبت القدرة الجيدة للنموذج على التعميم على المعايير غير المرئية
اختبار معاملات المعمارية المختلفة:
أداء الدقة تحت تكوينات معمارية دقيقة مختلفة:
| تكوين المعاملات | FetchWidth | IssueWidth | CommitWidth | ROBEntry | الخطأ |
|---|
| التكوين الأساسي | 8 | 8 | 8 | 192 | 12.0% |
| المتغير 1 | 4 | 8 | 8 | 192 | 12.2% |
| المتغير 2 | 8 | 4 | 8 | 192 | 12.9% |
- تأثير التوازي كبير: المعالجة المتوازية على وحدات معالجة الرسومات لها مزايا واضحة مقارنة بالمحاكاة المتسلسلة على وحدات المعالجة المركزية
- أهمية التبعيات البعيدة المدى: تلتقط آلية الانتباه بفعالية العلاقات التبعية المعقدة بين التعليمات
- أهمية معلومات السياق: معلومات حالة المعالج حاسمة للتنبؤ الدقيق بوقت التنفيذ
- فعالية التدريب المصنف: يحسن التدريب المصنف حسب خصائص البرنامج من قدرة النموذج على التعميم
- محاكيات دقيقة من حيث الدورات: gem5 و SimpleScalar و Sniper وغيرها، دقة عالية لكن بطيئة
- أدوات مستوى الكتلة الأساسية: llvm-mca و uiCA و IACA وغيرها، سريعة لكن وظائفها محدودة
- نماذج الانحدار: استخدام الانحدار الخطي/غير الخطي للتنبؤ بـ CPI والطاقة
- طرق التعلم العميق:
- Ithemal: التنبؤ بإنتاجية الكتلة الأساسية باستخدام LSTM
- Difftune: تحسين معاملات llvm-mca
- Granite: شبكة عصبية رسومية للتنبؤ بأداء الكتلة الأساسية
- أخذ العينات الإحصائي: أخذ عينات دورية SMARTS
- أخذ العينات الموجهة: أخذ عينات SimPoint بناءً على سلوك البرنامج
المزايا الرئيسية لهذه الورقة مقارنة بالأعمال الموجودة:
- أول تطبيق للتنبؤ بأداء مستوى البرنامج الكامل (وليس فقط مستوى الكتلة الأساسية)
- استخدام محاكي دقيق من حيث الدورات كمرجع أساسي (وليس أدوات المترجم البسيطة)
- آلية الانتباه تنمذج بشكل أفضل التبعيات البعيدة المدى
- الجدوى التقنية: الطريقة القائمة على آلية الانتباه يمكنها التنبؤ بفعالية بأداء المعالج للبرامج الكاملة
- المزايا الأداء: تحقيق تسريع كبير مقارنة بمحاكي gem5 التقليدي (2.2-8.3 مرة)
- ضمان الدقة: الحفاظ على دقة تنبؤ مقبولة مع تحسن كبير في السرعة
- القدرة على التعميم: النموذج له قدرة تكيف جيدة مع المعايير غير المرئية ومعاملات المعمارية المختلفة
- مقايضة الدقة: على الرغم من تحسن السرعة بشكل كبير، لا تزال دقة التنبؤ أقل من محاكي دقيق من حيث الدورات متخصص (متوسط خطأ 12%)
- الاعتماد على المعمارية: التطبيق الحالي مبني على Power ISA، يتطلب إعادة التكيف للتوسع إلى مجموعات تعليمات أخرى
- متطلبات بيانات التدريب: يتطلب كمية كبيرة من البيانات المُصنفة للتدريب، مما يرفع التكاليف الأولية
- معالجة الحالات المعقدة: قد تكون قدرة التنبؤ محدودة للبرامج ذات السلوك المعقد جداً والخصائص الدقيقة للمعمارية
- دعم معمارية متعددة: التوسع إلى معمارية مجموعات التعليمات الرئيسية مثل x86 و ARM
- تحسين الدقة: استكشاف آليات انتباه أكثر تقدماً وطرق نمذجة السياق
- دعم متعدد النوى: التوسع إلى التنبؤ بأداء الأنظمة متعددة النوى والمتغايرة
- التعلم عبر الإنترنت: دعم التعلم التكيفي في وقت التشغيل وتحديث النموذج
الابتكار التقني:
- أول تطبيق لآلية الانتباه من Transformer في مجال التنبؤ بأداء المعالج
- دمج مبتكر لمعلومات السياق ونمذجة تسلسل التعليمات
- تصميم إطار عمل تنبؤ شامل من طرف إلى طرف
اكتمال التجارب:
- تقييم شامل على معايير SPEC2017 القياسية
- تتضمن تجارب استئصالية تفصيلية واختبارات قدرة التعميم
- مقارنة مع عدة طرق أساسية
قوة النتائج:
- تحسن كبير في السرعة (أقصى تسريع 8.3 مرة)
- تحسن الدقة مقارنة بطرق التعلم الآلي الموجودة
- قدرة تعميم جيدة عبر المعايير المختلفة
وضوح الكتابة:
- شرح واضح لدافع المشكلة
- وصف تفصيلي للطريقة، يتضمن صيغ رياضية
- عرض كامل لإعداد التجارب والنتائج
قيود الطريقة:
- دقة التنبؤ لا تزال بحاجة إلى تحسين (متوسط خطأ 12%)
- التحقق فقط على Power ISA، يفتقد التحقق متعدد المعمارية
- لم يتم التحقق الكافي من قدرة التعامل مع الحالات المعقدة جداً
عيوب إعداد التجارب:
- قد تكون المقارنة بين المنصات غير عادلة تماماً (GPU مقابل CPU)
- نقص المقارنة مع طرق التعلم الآلي الأحدث
- تحليل غير كافٍ لتأثيرات التنبؤ على أنواع برامج مختلفة
نقص التحليل:
- تحليل غير كافٍ لقابلية تفسير آلية الانتباه
- تحليل قليل لحالات الأخطاء
- تحليل غير كافٍ لاستهلاك الموارد الحسابية
المساهمة في المجال:
- توفير مسار تقني جديد للتنبؤ بأداء المعالج
- تعزيز تطبيق التعلم الآلي في مجال معمارية الحاسوب
- توفير أداة لاستكشاف فضاء التصميم السريع للمعمارية
القيمة العملية:
- تحسن كبير في كفاءة تقييم المعايير واسعة النطاق
- توفير تغذية راجعة سريعة لتحسين المترجم وتصميم الأجهزة
- تقليل التكاليف الزمنية لأبحاث معمارية الحاسوب
قابلية التكرار:
- وصف الطريقة نسبياً تفصيلي
- استخدام مجموعات معايير قياسية
- لكن بعض تفاصيل التنفيذ والأكواد لم تُنشر
- استكشاف فضاء تصميم المعمارية: تقييم سريع لتأثير معاملات التصميم المختلفة على الأداء
- تحسين المترجم: توفير تغذية راجعة أداء سريعة لتحسين الأكواد
- تسريع المعايير: تقليل وقت التشغيل بشكل كبير للمعايير القياسية
- التعليم والبحث: توفير أداة محاكاة فعالة لدورات معمارية الحاسوب والأبحاث
تستشهد الورقة بـ 61 مرجعاً ذا صلة، تتضمن بشكل أساسي:
المحاكيات الكلاسيكية:
- gem5: محاكي gem5 (Binkert وآخرون)
- SimpleScalar و Sniper و Zesto وغيرها من المحاكيات التقليدية
طرق التعلم الآلي:
- Ithemal: تقدير إنتاجية الكتلة الأساسية الدقيق والمحمول والسريع (Mendis وآخرون)
- Granite: نموذج شبكة عصبية رسومية لتقدير إنتاجية الكتلة الأساسية (Sýkora وآخرون)
آلية الانتباه:
- الانتباه هو كل ما تحتاجه (Vaswani وآخرون)
- أبحاث Transformer ذات الصلة
المعايير:
- مجموعة معايير SPEC CPU2017
التقييم الشامل: هذه ورقة بحثية مبتكرة وذات قيمة عملية في مجال التنبؤ بأداء المعالج. نجح المؤلفون في إدخال آلية الانتباه إلى التنبؤ بأداء المعالج، وحققوا اختراقاً من التنبؤ على مستوى الكتلة الأساسية إلى التنبؤ على مستوى البرنامج الكامل، وحققوا تحسناً كبيراً في السرعة. على الرغم من وجود مجال للتحسين في دقة التنبؤ وقدرة تعميم الطريقة، فإن هذا العمل يوفر أداة وأفكاراً قيمة لأبحاث معمارية الحاسوب، مع آفاق تطبيقية جيدة.