L2 Cache — xotira iyerarxiyasida birinchi darajali keshdan keyin joylashadigan ikkinchi darajali kesh. U odatda L1’dan kattaroq, ammo sekinroq bo‘ladi va L1 misslarini asosiy xotiraga yetib bormasdan qondirishga xizmat qiladi. L2 bitta yadroga xususiy yoki bir nechta yadro o‘rtasida umumiy bo‘lishi mumkin.
Iyerarxiyadagi vazifa
L1 juda past latency uchun kichik quriladi. Dastur working seti unga sig‘masa, chiqarilgan satrlarning bir qismi L2’da qoladi. L1 miss paytida L2 hit yuz bersa, yuzlab taktli DRAM so‘rovi o‘rniga ancha qisqa kechikish bilan satr qaytariladi. Shu tariqa L2 sig‘im va tezlik o‘rtasidagi oraliq bosqichni yaratadi.
Ko‘p protsessorda L2 unified bo‘lib, instruction va data misslariga xizmat qiladi. Request queue, MSHR va fill buffer bir vaqtning o‘zida bir nechta outstanding missni kuzatadi. Critical-word-first usuli talab qilingan so‘zni avval yuborib, qolgan cache line baytlarini keyin to‘ldirishi mumkin.
Xususiy va umumiy L2
Private L2 yadroga yaqin, bandwidthi oldindan ma’lum va boshqa yadroning trafikidan kamroq ta’sirlanadi. Biroq bir xil read-only satr har yadro L2’sida takrorlanib, umumiy chip sig‘imini egallaydi. Shared L2 sig‘imni moslashuvchan bo‘lishadi, lekin interconnect, arbitraj va QoS murakkablashadi.
Chiplet yoki NUMA tizimida yadroga “yaqin” L2 bilan masofa muhim. Boshqa klaster keshiga murojaat lokal L2 hit emas, coherence orqali masofaviy so‘rov bo‘lishi mumkin. Scheduler thread va uning working setini bir yadroga yaqin tutib, migrationdan keyingi warm-up misslarini kamaytiradi.
Inclusion va yozuvlar
L2 inclusive bo‘lsa, L1’dagi har satrning nusxasi L2’da ham mavjud. Bu snoop qidiruvini soddalashtiradi, ammo samarali umumiy sig‘imni kamaytiradi. Exclusive siyosatda L1 va L2 asosan turli satrlarni saqlab, ko‘proq jami sig‘im beradi; evict vaqtida satrlar darajalar orasida ko‘chadi. Noninclusive tuzilma qat’iy talab qo‘ymaydi.
Write-back L1 dirty satrni chiqarishda L2’ga yozadi. L2 ham write-back bo‘lsa, ma’lumot DRAMga faqat L2’dan chiqarilganda boradi. ECC xatosi, coherence invalidation va memory barrier bu kechiktirilgan yozuvlar bilan to‘g‘ri ishlashi kerak.
Samaradorlik ko‘rsatkichlari
L2 hit rate yolg‘iz baho emas. Uning latency’si, bandwidthi, miss parallelizmi va L1’ga qaytarish yo‘li umumiy CPIga ta’sir qiladi. Katta associativity conflict missni kamaytiradi, ammo tag lookup va energiyani oshiradi. Prefetcher foydali satrlarni oldindan olib keladi; noto‘g‘ri prefetch esa talab satrlarini siqib chiqarishi va DRAM bandwidthini band qilishi mumkin.
Performance counterlar L2 request, hit, miss, write-back va prefetch hodisalarini sanaydi. Aniq ta’rif mikroarxitekturaga bog‘liq: ba’zi hisoblagich barcha so‘rovni, boshqasi faqat demand load’larni o‘lchaydi.
L2 power management yadro uxlaganda ham keshni to‘liq o‘chirmasligi mumkin. Retention rejimi data’ni saqlab, uyg‘onishdagi warm-up misslarni kamaytiradi; power-gating esa leakage’ni kamaytirib, mazmunni yo‘qotadi. Operatsion tizim energiya holatini tanlashda uyg‘onish kechikishi va working setni qayta to‘ldirish narxini hisobga oladi.
L2 latency kritik bo‘lsa tag va data parallel o‘qiladi; energiya muhim dizaynda tag avval tekshiriladi. Ikkinchi usul faqat mos way data bankini uyg‘otadi, lekin qo‘shimcha bosqich qo‘shishi mumkin.
Shu tanlov chipning maqsadli quvvat va tezlik sinfiga moslanadi.
Bog‘liq tushunchalar
L1 cache, L3 cache, cache hierarchy, MSHR, inclusive cache, cache miss