مخبأ الضحايا
ذاكرة التخزين المؤقت للضحايا هي ذاكرة تخزين مؤقت صغيرة، وعادةً ما تكون ذات ارتباط كامل، توضع في مسار إعادة تعبئة ذاكرة التخزين المؤقت لوحدة المعالجة المركزية . تخزن هذه الذاكرة جميع الكتل التي تم إخراجها من ذلك المستوى من ذاكرة التخزين المؤقت، وقد تم اقتراحها لأول مرة في عام 1990. في البنى الحديثة، يتم تنفيذ هذه الوظيفة عادةً بواسطة ذاكرة التخزين المؤقت من المستوى 3 أو المستوى 4.
ملخص
يُعدّ التخزين المؤقت للضحايا تقنيةً برمجيةً لتحسين أداء ذاكرة التخزين المؤقت، وقد اقترحها نورمان جوبي . كما ورد في بحثه: [ 1 ]
يُنشئ التخزين المؤقت للأخطاء ذاكرة تخزين مؤقتة ذات ارتباط كامل بين ذاكرة التخزين المؤقت ومسار إعادة تعبئتها. تُفرض عقوبة دورة واحدة على الأخطاء في ذاكرة التخزين المؤقت التي تُصيب ذاكرة التخزين المؤقت للأخطاء، على عكس عقوبة دورات متعددة في حالة عدم وجود ذاكرة التخزين المؤقت للأخطاء. يُعد التخزين المؤقت للضحايا تحسينًا للتخزين المؤقت للأخطاء، حيث يقوم بتحميل ذاكرة التخزين المؤقت الصغيرة ذات الارتباط الكامل بضحية الخطأ وليس بسطر ذاكرة التخزين المؤقت المطلوب. [ 1 ]
ذاكرة التخزين المؤقت للضحايا هي ذاكرة تخزين مؤقتة للأجهزة مصممة لتقليل حالات عدم العثور على البيانات في حالة التعارض وتحسين زمن استجابة الوصول في ذاكرات التخزين المؤقت ذات التعيين المباشر. تُستخدم هذه الذاكرة في مسار إعادة تعبئة ذاكرة التخزين المؤقت من المستوى الأول، حيث يتم تخزين أي سطر بيانات يتم إخراجه من ذاكرة التخزين المؤقت في ذاكرة التخزين المؤقت للضحايا. ونتيجة لذلك، لا يتم ملء ذاكرة التخزين المؤقت للضحايا إلا عند إخراج البيانات من ذاكرة التخزين المؤقت من المستوى الأول. عند حدوث خطأ في ذاكرة التخزين المؤقت من المستوى الأول، يتم التحقق من الإدخال المفقود في ذاكرة التخزين المؤقت للضحايا. إذا أسفر الوصول عن العثور على البيانات، يتم تبديل محتويات سطر ذاكرة التخزين المؤقت من المستوى الأول مع محتويات سطر ذاكرة التخزين المؤقت للضحايا المقابل.
على الرغم من أن جوبي اقترح في البداية تحسين أداء ذاكرة التخزين المؤقت من المستوى الأول ذات التعيين المباشر، فإن المعالجات الدقيقة الحديثة ذات التسلسل الهرمي متعدد المستويات لذاكرة التخزين المؤقت تستخدم ذاكرة تخزين مؤقت من المستوى الثالث أو الرابع لتكون بمثابة ذاكرة تخزين مؤقتة تابعة لذاكرة التخزين المؤقت التي تعلوها في التسلسل الهرمي للذاكرة . وقد قدمت شركة إنتل في معالجاتها من طراز كريستال ويل [ 2 ] ذاكرة تخزين مؤقتة من المستوى الرابع مدمجة في المعالج، والتي تعمل كذاكرة تخزين مؤقتة تابعة لذاكرة التخزين المؤقت من المستوى الثالث. [ 3 ] وتُستخدم ذاكرة تخزين مؤقتة من المستوى الثالث بسعة 4-12 ميجابايت كذاكرة تخزين مؤقتة تابعة في معالجات باور 5 (آي بي إم).
خلفية
مع تطور بنية الأجهزة وتقنياتها، ازداد أداء المعالج وتردده بوتيرة أسرع بكثير من دورات الذاكرة، مما أدى إلى فجوة كبيرة في الأداء. وقد تم التغلب على تحدي ارتفاع زمن استجابة الذاكرة مقارنةً بسرعة المعالج من خلال دمج ذاكرة تخزين مؤقت عالية السرعة.
تتميز ذاكرات التخزين المؤقت ذات التعيين المباشر بسرعة وصول أعلى من ذاكرات التخزين المؤقت ذات التعيين التجميعي . مع ذلك، في ذاكرات التخزين المؤقت ذات التعيين المباشر، عندما تُعيّن عدة كتل ذاكرة تخزين مؤقت في الذاكرة إلى نفس سطر التخزين المؤقت، فإنها تُزيل بعضها بعضًا عند الوصول إلى إحداها. تُعرف هذه المشكلة بمشكلة تعارض التخزين المؤقت، وتنشأ بسبب محدودية الترابط في ذاكرة التخزين المؤقت. يمكن التخفيف من هذه المشكلة بزيادة ترابط ذاكرة التخزين المؤقت، ولكن توجد تعقيدات في التنفيذ وقيود على مقدار الزيادة الممكنة في الترابط. لمعالجة مشكلة تعارض التخزين المؤقت ضمن قيود محدودية الترابط، غالبًا ما تُستخدم ذاكرة تخزين مؤقت مُستهدفة.
تطبيق
يوضح الشكل أدناه سلوك ذاكرة التخزين المؤقت للضحية في تفاعلها مع ذاكرة التخزين المؤقت للمستوى المقابل:
تم العثور على ذاكرة التخزين المؤقت: لا يوجد إجراء
خطأ في ذاكرة التخزين المؤقت، إصابة في ذاكرة الضحية: يتم استبدال الكتلة الموجودة في ذاكرة تخزين الضحية بالكتلة الموجودة في ذاكرة التخزين المؤقت. يصبح هذا الإدخال الجديد في ذاكرة تخزين الضحية هو الكتلة المستخدمة مؤخرًا.

خطأ في ذاكرة التخزين المؤقت، خطأ في ذاكرة الضحية: يتم جلب الكتلة إلى ذاكرة التخزين المؤقت من المستوى التالي. يتم تخزين الكتلة التي تم إخراجها من ذاكرة التخزين المؤقت في ذاكرة الضحية.
مثال
لنفترض وجود ذاكرة تخزين مؤقتة من المستوى الأول (L1) ذات تعيين مباشر، حيث تشير الكتلتان A وB إلى نفس المجموعة. وهي مرتبطة بذاكرة تخزين مؤقتة للضحايا ذات مدخلين، ذات ارتباط كامل، تحتوي على الكتلتين C وD.
المسار المطلوب اتباعه: أ، ب، أ، ب...
من الرسم التوضيحي، نلاحظ أنه في حالة إصابة ذاكرة التخزين المؤقت للضحية (VC)، يتم تبديل الكتلتين A وB. وتبقى الكتلة الأقل استخدامًا في ذاكرة التخزين المؤقت للضحية كما هي. وبالتالي، يُعطي ذلك وهمًا بالترابط لذاكرة التخزين المؤقت L1 ذات التعيين المباشر، مما يقلل بدوره من حالات عدم وجود تعارض.
في حالة وجود ذاكرتي تخزين مؤقت، L1 و L2 مع سياسة التخزين المؤقت الحصرية (L2 لا تخزن نفس مواقع الذاكرة مثل L1)، فإن L2 تعمل كذاكرة تخزين مؤقت للضحية لـ L1.
الآثار المترتبة على الأداء
أثناء قياس تحسين الأداء باستخدام ذاكرة التخزين المؤقت للضحايا، افترض جوبي [ 1 ] وجود ذاكرة تخزين مؤقت من المستوى الأول ذات تعيين مباشر مُعززة بذاكرة تخزين مؤقت ترابطية بالكامل. بالنسبة لمجموعة الاختبارات التي استخدمها، وُجد أن 39% من حالات عدم العثور على البيانات في ذاكرة التخزين المؤقت من المستوى الأول ناتجة عن تعارض، بينما وُجد أن 29% من حالات عدم العثور على التعليمات في ذاكرة التخزين المؤقت من المستوى الأول ناتجة عن تعارض. [ 1 ] ونظرًا لأن حالات عدم العثور الناتجة عن تعارض تُشكل نسبة كبيرة من إجمالي حالات عدم العثور، فإن توفير ترابط إضافي من خلال تعزيز ذاكرة التخزين المؤقت من المستوى الأول بذاكرة تخزين مؤقت للضحايا من شأنه أن يُحسّن معدل حالات عدم العثور الإجمالي بشكل ملحوظ.
تم استنتاج النتائج التجريبية من خلال دراسة ذاكرة تخزين مؤقتة ثنائية الاتجاه ذات ترابط كامل، بحجم 32 كيلوبايت، مُعززة بذاكرة تخزين مؤقتة ثانوية بحجم 256 كتلة (8 كيلوبايت)، وتشغيل 8 اختبارات معيارية من نوع SPEC 95 عليها، تم اختيارها عشوائيًا. [ 4 ] على الرغم من عدم إمكانية تعميم النتائج على جميع الاختبارات المعيارية، إلا أن إضافة ذاكرة التخزين المؤقتة الثانوية تُقلل معدل الخطأ بنسبة تتراوح بين 10% و100% لجميع تكوينات ذاكرة التخزين المؤقتة. [ 4 ] مع ذلك، يبدو أن التحسن يستقر بعد تجاوز حجم ذاكرة التخزين المؤقتة الثانوية 50 كتلة، مما يُثبت ملاحظة جوبي [ 1 ] بأن فوائد ذاكرة التخزين المؤقتة الثانوية تصل إلى حدها الأقصى بعد الكتل الثانوية الأولى. [ 4 ]
وقد تبين أن انخفاض معدل الخطأ لحجم ذاكرة تخزين مؤقتة يبلغ 64 كيلوبايت أقل بكثير، مما يثبت أن التخزين المؤقت للضحايا ليس قابلاً للتوسع إلى ما لا نهاية. [ 4 ]
أثناء مقارنة تكوينات ذاكرة التخزين المؤقت المختلفة، تبين أنه في بعض الحالات يمكن أن تؤدي إضافة ذاكرة تخزين مؤقت صغيرة للضحايا إلى تحسين الأداء بما يعادل ذلك الذي لوحظ من خلال ضرب حجم ذاكرة التخزين المؤقت في 2. [ 4 ]
مراجع
- 1 2 3 4 5 جوبي، ن.ب. (1990-05-01). تحسين أداء ذاكرة التخزين المؤقت ذات التعيين المباشر بإضافة ذاكرة تخزين مؤقت صغيرة ذات ارتباط كامل ومخازن جلب مسبق . المؤتمر الدولي السنوي السابع عشر حول هندسة الحاسوب، 1990. وقائع المؤتمر. الصفحات 364-373 . doi : 10.1109/ISCA.1990.134547 . ISBN 0-8186-2047-1.
- ↑ "المنتجات (المعروفة سابقًا باسم كريستال ويل)" . إنتل® آرك (مواصفات المنتج) . تم الاطلاع عليه بتاريخ 16-11-2016 .
- ↑ شيمبي، أناند لال. "مراجعة معالج الرسوميات Intel Iris Pro 5200: اختبار معالج Core i7-4950HQ" . مؤرشف من الأصل في 7 يونيو 2013. تم الاطلاع عليه بتاريخ 16 نوفمبر 2016 .
- 1 2 3 4 5 واسرمان، هال (ربيع 1996)، "التخزين المؤقت للضحايا لذاكرات التخزين المؤقت الكبيرة وأحمال العمل الحديثة" ، مشروع علوم الحاسوب 252 ، جامعة كاليفورنيا، بيركلي
- ذاكرة التخزين المؤقت (الحوسبة)
