ScholarGate
المساعد

تنظيم وسياسات الذاكرة المخبئية (Cache)

يتعلق تنظيم الذاكرة المخبئية بكيفية ربط الذاكرة المخبئية لكتل الذاكرة بالتخزين — أي موضعها وترابطها — والسياسات التي تحكم الاستبدال والكتابة، والتي تحدد معًا مدى تكرار نجاح الوصول إلى الذاكرة المخبئية (cache hits) وكيفية تفاعلها مع الذاكرة الرئيسية.

اعثر على موضوع باستخدام PaperMindقريبًاFind papers & topics
Tools & resources
تنزيل الشرائح
Learn & explore
فيديوقريبًا

Definition

تنظيم وسياسات الذاكرة المخبئية هي الخيارات الهيكلية والإدارية للذاكرة المخبئية — حيث يمكن وضع الكتل، وأي كتلة يتم إزاحتها عند الفشل، وكيفية نشر عمليات الكتابة إلى المستويات الأدنى — والتي تحكم معدل نجاح الوصول وسلوكها.

Scope

يغطي هذا الموضوع التصميم الداخلي لذاكرة مخبئية واحدة: التعيين المباشر (direct-mapped)، والترابط المجموعي (set-associative)، والترابط الكامل (fully associative)؛ وسياسات الاستبدال مثل الأقل استخدامًا مؤخرًا (LRU) وتقريباتها؛ وسياسات الكتابة (الكتابة المباشرة write-through مقابل الكتابة الخلفية write-back) وتخصيص الكتابة (write-allocation)؛ وحجم الكتلة؛ وتصنيف حالات الفشل (misses) إلى إلزامي (compulsory)، وسعوي (capacity)، وتعارضي (conflict). يستثنى من ذلك تماسك الذاكرات المخبئية المتعددة (بروتوكولات تماسك الذاكرة المخبئية) وترجمة العناوين (الذاكرة الافتراضية والترحيل).

Core questions

  • كيف تختلف سياسات التعيين المباشر، والترابط المجموعي، والترابط الكامل في التكلفة وسلوك التعارض؟
  • ما هي سياسة الاستبدال التي يجب أن تزيح كتلة عند الفشل، وكيف يتم تقريبها بتكلفة منخفضة؟
  • كيف تختلف سياسات الكتابة المباشرة والكتابة الخلفية في حركة البيانات والتعقيد؟
  • كيف يتم تصنيف حالات الفشل، وما هي التغييرات التصميمية التي تقلل كل نوع؟

Key concepts

  • ذاكرة مخبئية بالتعيين المباشر
  • ذاكرة مخبئية بالترابط المجموعي
  • ذاكرة مخبئية بالترابط الكامل
  • استبدال الأقل استخدامًا مؤخرًا (LRU)
  • الكتابة المباشرة مقابل الكتابة الخلفية
  • تخصيص الكتابة
  • حجم الكتلة (السطر)
  • فشل إلزامي، سعوي، وتعارضي

Key theories

نموذج الثلاثة Cs للفشل
يمكن تصنيف حالات فشل الذاكرة المخبئية إلى إلزامي (أول وصول)، وسعوي (الذاكرة المخبئية صغيرة جدًا لمجموعة العمل)، وتعارضي (ترابط قليل جدًا)، وهو إطار يربط كل معلمة تصميم — الحجم، حجم الكتلة، الترابط — بحالات الفشل التي يقللها.

Mechanisms

يتم تقسيم عنوان الذاكرة إلى حقول العلامة (tag) والفهرس (index) والإزاحة (offset). يختار الفهرس مجموعة، وتحدد العلامة الكتلة داخلها، ويحدد الترابط عدد الكتل التي تشترك في مجموعة. عند الفشل، تستجلب الذاكرة المخبئية الكتلة وتزيح كتلة أخرى يتم اختيارها بواسطة سياسة استبدال (غالبًا ما تكون تقريبًا للأقل استخدامًا مؤخرًا). تقوم عمليات الكتابة إما بتحديث الذاكرة الرئيسية فورًا (الكتابة المباشرة) أو تعليم الكتلة بأنها متسخة وتأجيل التحديث (الكتابة الخلفية).

Clinical relevance

يحكم تنظيم الذاكرة المخبئية الأداء الفعال لأن عقوبات الفشل كبيرة نسبيًا مقارنة بالنجاح. يحسن المبرمجون سلوك الذاكرة المخبئية من خلال تخطيط البيانات، والتجميع (blocking)، وأنماط الوصول التي تزيد من المحلية (locality)، بينما يقوم المهندسون المعماريون بضبط الترابط، وحجم الكتلة، وسياسة الكتابة لموازنة معدل النجاح مقابل المساحة والطاقة وعرض النطاق الترددي.

History

اقترح ويلكس الذاكرة التابعة (المخبئية) في عام 1965، وسرعان ما تم اعتماد الذاكرات المخبئية تجاريًا. قام مسح ألان جاي سميث عام 1982 بتجميع قياسات واسعة النطاق لسياسات التعيين والاستبدال والكتابة، مما أرسى المفردات التصميمية المستخدمة حتى اليوم. قدم نموذج الثلاثة Cs لاحقًا طريقة منظمة للتفكير في أسباب الفشل وعلاجاته.

Key figures

  • Maurice Wilkes
  • Alan Jay Smith
  • John L. Hennessy
  • David A. Patterson

Related topics

Seminal works

  • smith1982cache
  • hennessy2019

Frequently asked questions

ما الفرق بين الذاكرات المخبئية ذات الكتابة المباشرة والذاكرات المخبئية ذات الكتابة الخلفية؟
تقوم الذاكرة المخبئية ذات الكتابة المباشرة بتحديث كل من الذاكرة المخبئية والذاكرة الرئيسية في كل عملية كتابة، مما يحافظ على تحديث الذاكرة ولكنه يولد المزيد من حركة البيانات. أما الذاكرة المخبئية ذات الكتابة الخلفية فتحدث الذاكرة المخبئية فقط، معلمة الكتلة بأنها متسخة، وتكتبها إلى الذاكرة فقط عند إزاحتها، مما يقلل من حركة البيانات على حساب الحاجة إلى مسك دفاتر إضافي.
لماذا نستخدم الذاكرات المخبئية ذات الترابط المجموعي بدلاً من الذاكرات المخبئية ذات التعيين المباشر؟
تسمح الذاكرة المخبئية ذات التعيين المباشر لكل كتلة بموقع واحد فقط، لذا تتصادم الكتل التي ترتبط بنفس الفتحة. يمنح الترابط المجموعي كل كتلة عدة مواقع محتملة داخل مجموعة، مما يقلل من حالات الفشل التعارضية على حساب المزيد من أجهزة المقارنة وبطء طفيف في الوصول الناجح.

Methods for this concept

Related concepts