هذه فكرة مثيرة للاهتمام ، باستخدام التوازي التخميني المدعوم بالأجهزة لتسريع المحاكاة ، مع تطور يتطلب أجهزة مخصصة. بول كننغهام (نائب أول للرئيس / مدير عام ، التحقق في Cadence) ، راؤول كامبوسانو (Silicon Catalyst ، رائد أعمال ، CTO سابق لشركة Synopsys والآن Silvaco CTO) وأواصل سلسلتنا حول أفكار البحث. كما هو الحال دائما ، نرحب بالتعليقات.
الابتكار
اختيار هذا الشهر هو كرونوس: التوازي المضاربة الفعال للمسرعات. قدم المؤلفون الورقة في مؤتمر 2020 حول الدعم المعماري للغات البرمجة وأنظمة التشغيل وهم من معهد ماساتشوستس للتكنولوجيا.
يعد استغلال التوازي باستخدام معالجات متعددة النواة أحد الخيارات للتطبيقات التي يكون فيها التوازي بديهيًا. قد لا يتم تقسيم الخوارزميات الأخرى بسهولة ، ولكنها قد تستفيد من التنفيذ التخميني الذي يستغل التوازي الجوهري. عادة ، يعتمد التنفيذ التخميني على تماسك ذاكرة التخزين المؤقت ، وهو مقدار حمل مرتفع خاصة للمحاكاة. تتجاوز هذه الطريقة الحاجة إلى التماسك ، وتوطين تنفيذ المهام فعليًا لحساب المربعات بواسطة كائن القراءة والكتابة المستهدف ، مما يضمن إمكانية اكتشاف اكتشاف التعارض محليًا ، دون الحاجة إلى إدارة التماسك العالمي. يمكن تنفيذ المهام بشكل مضارب بالتوازي ؛ يمكن إلغاء تسجيل أي تعارض تم اكتشافه من مهمة من خلال المهام الفرعية الخاصة بها ثم إعادة تنفيذها دون الحاجة إلى إيقاف مؤشرات الترابط الأخرى.
نقطة أخرى ملحوظة هنا. تدعم هذه الطريقة المحاكاة القائمة على التأخير ، على عكس معظم تقنيات تسريع الأجهزة.
رأي بول
واو ، يا لها من ورقة عالية الأوكتان رائعة من معهد ماساتشوستس للتكنولوجيا! عندما سُئلت عن الحساب المتوازي ، أفكر على الفور في الخيوط ، وكائنات المزامنة ، وتماسك الذاكرة. هذا بالطبع هو كيفية تصميم وحدات المعالجة المركزية الحديثة متعددة النواة. لكنها ليست الطريقة الوحيدة لدعم الموازاة في الأجهزة.
تقترح هذه الورقة بنية بديلة للتوازي تسمى Chronos تستند إلى قائمة انتظار مرتبة من المهام. في وقت التشغيل ، يتم تنفيذ المهام بترتيب طابع زمني ويمكن لكل مهمة إنشاء مهام فرعية جديدة تتم إضافتها ديناميكيًا إلى قائمة الانتظار. يبدأ التنفيذ بوضع بعض المهام الأولية في قائمة الانتظار وينتهي عند عدم وجود المزيد من المهام في قائمة الانتظار.
يتم توزيع المهام في قائمة الانتظار على عناصر معالجة متعددة (PEs) بالتوازي - مما يعني أن Chronos ينفذ بشكل مضارب المهام المستقبلية قبل اكتمال المهمة الحالية. إذا كانت المهمة الحالية تبطل أي مهام مستقبلية يتم تنفيذها بشكل تخميني ، فسيتم "التراجع" عن إجراءات تلك المهام المستقبلية ويتم إعادة وضعها في قائمة الانتظار. لا يعد تطبيق هذا المفهوم بشكل صحيح في الأجهزة أمرًا سهلاً ، ولكنه أمر جميل بالنسبة للمستخدم الخارجي: تقوم فقط بتشفير الخوارزمية الخاصة بك كما لو أن قائمة انتظار المهام يتم تنفيذها بشكل متسلسل على PE واحد. لا حاجة لكود أي كائنات المزامنة أو القلق بشأن الجمود.
قام المؤلفون بتطبيق Chronos في SystemVerilog وتجميعها إلى FPGA. تم تخصيص جزء كبير من الورقة لشرح كيفية قيامهم بتنفيذ قائمة انتظار المهام وأي عمليات فتح ضرورية في الأجهزة لتحقيق أقصى قدر من الكفاءة. يتم قياس أداء Chronos من خلال أربع خوارزميات مناسبة تمامًا للبنية القائمة على قائمة انتظار المهام. يتم تنفيذ كل خوارزمية بطريقتين: أولاً باستخدام PE مخصص للخوارزمية ، وثانيًا باستخدام وحدة المعالجة المركزية RISC-V مفتوحة المصدر ذات المصدر المفتوح 32 بت مثل PE. ثم تتم مقارنة أداء Chronos بتطبيقات البرامج متعددة الخيوط للخوارزميات التي تعمل على خادم Intel Xeon بسعر مماثل لـ FPGA المستخدم في Chronos. النتائج مثيرة للإعجاب - مقياس Chronos يقيس 3x إلى 15 ضعفًا أفضل من استخدام خادم Xeon. ومع ذلك ، فإن مقارنة الجدول 3 بالشكل 14 يجعلني أشعر بالقلق قليلاً لأن معظم هذه المكاسب جاءت من PEs الخاصة بالخوارزمية بدلاً من بنية Chronos نفسها.
نظرًا لأن هذه مدونة للتحقق ، قمت بشكل طبيعي بتكبير مقياس المحاكاة على مستوى البوابة. استثمرت صناعة EDA بكثافة لمحاولة محاكاة المنطق بشكل متوازي وثبت أنه من الصعب رؤية مكاسب كبيرة تتجاوز عدد قليل من حالات الاستخدام المحددة. هذا يرجع أساسًا إلى أداء معظم عمليات المحاكاة الواقعية التي تهيمن عليها تعليمات التحميل / التخزين المفقودة في ذاكرة التخزين المؤقت L3 والخروج إلى DRAM. لا يوجد سوى حقيبة اختبار واحدة تم اختبارها في هذه الورقة وهي عبارة عن أداة حفظ صغيرة بحجم 32 بت. إذا كنت تقرأ هذه المدونة وستكون مهتمًا بإجراء بعض المقارنة المعيارية الأكثر شمولاً ، فيرجى إبلاغي بذلك - إذا كان بإمكان Chronos حقًا التوسع بشكل جيد في محاكاة العالم الحقيقي ، فستكون لها قيمة تجارية ضخمة!
رأي راؤول
المساهمة الرئيسية لهذه الورقة هي نموذج تنفيذ المهام المرتبة مكانيًا (SLOT) وهو فعال لمسرعات الأجهزة التي تستغل التوازي والمضاربة ، وللتطبيقات التي تولد المهام ديناميكيًا في وقت التشغيل. دعم التوازي الديناميكي أمر لا مفر منه للمحاكاة والمزامنة التخمينية خيار جذاب ، لكن تكلفة التماسك عالية جدًا.
تتجنب SLOT الحاجة إلى التماسك من خلال تقييد كل مهمة للعمل (الكتابة) على كائن واحد وتدعم المهام المرتبة لتمكين الذرية متعددة الكائنات. يتم ترتيب تطبيقات SLOT ، وهي مهام تم إنشاؤها ديناميكيًا تتميز بطابع زمني ومعرف كائن. تحدد الطوابع الزمنية قيود الطلب ؛ تحدد معرفات الكائن تبعيات البيانات ، أي أن المهام تعتمد على البيانات إذا وفقط إذا كان لها نفس معرف الكائن. (إذا كان هناك تبعية للقراءة ، فيمكن تنفيذ المهمة بشكل تخميني). يصبح اكتشاف التعارض محليًا (بدون هياكل تتبع معقدة) عن طريق تعيين معرفات الكائنات إلى النوى أو المربعات وإرسال كل مهمة إلى حيث يتم تعيين معرف الكائن الخاص بها.
• كرونوس تم تنفيذ النظام في إطار عمل AWS FPGA كنظام مكون من 16 مربعًا ، لكل منها 4 عناصر معالجة خاصة بالتطبيق (PE) ، تعمل بتردد 125 ميجا هرتز. تتم مقارنة هذا النظام بخط أساس يتكون من 20-core / 40-thread 2.4 جيجا هرتز Intel Xeon E5-2676v3 ، تم اختياره على وجه التحديد لأن سعره قابل للمقارنة مع FPGA واحد (حوالي 2 دولار / ساعة). تشغيل مهمة واحدة على PE واحد ، فإن Chronos أسرع 2.45 مرة من خط الأساس. مع زيادة عدد المهام المتزامنة ، يتدرج تطبيق Chronos إلى تسريع نسبي ذاتي قدره 44.9x على 8 مربعات ، وهو ما يقابل تسريع 15.3x على تنفيذ وحدة المعالجة المركزية. قاموا أيضًا بمقارنة التنفيذ على أساس RISC-V للأغراض العامة بدلاً من PEs الخاصة بالتطبيق ؛ كانت PEs أسرع 5 مرات من RISC-V.
لقد وجدت الورقة مثيرة للإعجاب لأنها تغطي كل شيء من المفهوم إلى تعريف نموذج تنفيذ SLOT إلى تنفيذ الأجهزة والمقارنة التفصيلية مع وحدة المعالجة المركزية Xeon التقليدية لـ 4 تطبيقات. الجهد كبير ، Chronos هو أكثر من 20,000 سطر من SystemVerilog. والنتيجة هي متوسط 5.4x (من التطبيقات الأربعة) على الإصدارات المتوازية من البرامج ، بسبب المزيد من التوازي والمزيد من استخدام التنفيذ التخميني. الورقة تستحق القراءة أيضًا للتطبيق على مهام غير محاكاة ؛ تتضمن الورقة ثلاثة أمثلة.
شارك هذا المنشور عبر:
- محتوى مدعوم من تحسين محركات البحث وتوزيع العلاقات العامة. تضخيم اليوم.
- بلاتوبلوكشين. Web3 Metaverse Intelligence. تضخيم المعرفة. الوصول هنا.
- المصدر https://semiwiki.com/eda/326261-speculation-for-simulation-innovation-in-verification/
- :يكون
- 000
- 2020
- 8
- a
- من نحن
- تسريع
- تسارع
- المعجلات
- ACM
- الإجراءات
- وأضاف
- خوارزمية
- خوارزميات
- البديل
- دائما
- و
- جذاب
- تطبيق
- تطبيق محدد
- التطبيقات
- معماري
- هندسة معمارية
- هي
- AS
- At
- الكتاب
- AWS
- على أساس
- خط الأساس
- BE
- جميل
- لان
- يصبح
- قبل
- يجري
- مؤشر
- وقيم
- تستفيد
- أفضل
- Beyond
- كبير
- قطعة
- المدونة
- by
- مخبأ
- إيقاع
- تسمى
- CAN
- حمل
- الحالات
- الحفاز
- تتميز
- طفل
- اختيار
- الكود
- تجاري
- مماثل
- مقارنة
- مقارنة
- مقارنة
- الطلب مكتمل
- مجمع
- حساب
- إحصاء
- مفهوم
- منافس
- مؤتمر
- صراع
- تتكون
- القيود
- استمر
- إسهام
- المقابلة
- الدورة
- ويغطي
- وحدة المعالجة المركزية:
- خلق
- خلق
- CTO
- حالياًّ
- على
- البيانات
- مخصصة
- التبعية
- يعتمد
- تصميم
- مفصلة
- الكشف عن
- كشف
- صعبة
- ديناميكي
- حيوي
- e
- كل
- بسهولة
- كفاءة
- فعال
- جهد
- عناصر
- جزءا لا يتجزأ من
- تمكين
- ينتهي
- ضمان
- ريادي
- خاصة
- كل شىء
- أمثلة
- تنفيذ
- تنفيذ
- شرح
- استغلال
- أسرع
- ردود الفعل
- قليل
- الشكل
- الاسم الأول
- في حالة
- سابق
- وجدت
- FPGA
- الإطار
- تبدأ من
- مستقبل
- الرأس مالية
- العلاجات العامة
- توليد
- إنتل جيجاهرتز
- العالمية
- الذهاب
- أجهزة التبخير
- يملك
- بشكل كبير
- هنا
- مرتفع
- كيفية
- لكن
- HTTPS
- ضخم
- i
- ID
- فكرة
- الأفكار
- فورا
- تنفيذ
- التنفيذ
- نفذت
- تحقيق
- مثير للإعجاب
- in
- يشمل
- الزيادات
- العالمية
- لا مفر منه
- في البداية
- الابتكار
- تعليمات
- إنتل
- يستفد
- وكتابة مواضيع مثيرة للاهتمام
- جوهري
- استثمرت
- IT
- انها
- نفسها
- علم
- اللغات
- خطوط
- محلي
- محليا
- تقع
- الرئيسية
- يصنع
- إدارة
- رسم الخرائط
- ماكس العرض
- أقصى
- يعني
- مكبر الصوت : يدعم، مع دعم ميكروفون مدمج لمنع الضوضاء
- طريقة
- ربما
- مفقود
- معهد ماساتشوستس للتكنولوجيا
- نموذج
- تقدم
- الأكثر من ذلك
- أكثر
- متعدد
- ضروري
- حاجة
- جديد
- عدد
- موضوع
- of
- on
- ONE
- جاكيت
- المصدر المفتوح
- طريقة التوسع
- تعمل
- أنظمة التشغيل
- خيار
- طلب
- أخرى
- في الخارج
- P&E
- ورق
- موازية
- بول
- أداء
- جسديا
- اختيار
- أفلاطون
- الذكاء افلاطون البيانات
- أفلاطون داتا
- من فضلك
- البوينت
- منشور
- قدم
- السعر
- معالجة
- المعالجات
- برمجة وتطوير
- لغات البرمجة
- يقترح
- ثبت
- غرض
- وضع
- بدلا
- عرض
- نادي القراءة
- حقيقي
- العالم الحقيقي
- بحث
- تقييد
- نتيجة
- النتائج
- تشغيل
- نفسه
- حفظ
- حجم
- النطاقات
- الثاني
- إرسال
- كبير
- مسلسلات
- رفوف
- السيليكون
- مماثل
- محاكاة
- عزباء
- So
- تطبيقات الكمبيوتر
- بعض
- مصدر
- محدد
- على وجه التحديد
- تخمين
- جوهري
- الدعم
- الدعم
- تزامن
- نظام
- أنظمة
- جدول
- TAG
- الهدف
- مهمة
- المهام
- تقنيات
- أن
- •
- تشبه
- ثلاثة
- عبر
- الطابع الزمني
- إلى
- جدا
- تتبع الشحنة
- تقليدي
- تحريف
- تستخدم
- مستخدم
- عادة
- التحقق
- بواسطة
- طريق..
- طرق
- ترحيب
- حسن
- ابحث عن
- التي
- مع
- بدون
- رائع
- العالم
- قيمة
- سوف
- اكتب
- حل متجر العقارات الشامل الخاص بك في جورجيا
- زفيرنت