Bosh sahifa Wiki Last-Level Cache

Last-Level Cache

Last-Level Cache (LLC) — protsessor xotira iyerarxiyasida operativ xotiradan oldingi eng so‘nggi kesh darajasi. U ayrim chipda L3, boshqasida L2 yoki L4 bo‘lishi mumkin; atama daraja raqamidan ko‘ra vazifani bildiradi. LLC miss odatda memory controller orqali DRAMga, boshqa socketga yoki keyingi tashqi xotira qatlamiga murojaatni talab qiladi.

Asosiy vazifa

LLC yuqori darajadagi private keshlardan chiqarilgan yoki ularda topilmagan satrlarni saqlaydi. Uning katta sig‘imi working setning ko‘proq qismini chip ichida ushlab, qimmat DRAM trafikini kamaytiradi. Hit latency L1 yoki L2’dan uzun bo‘lsa ham, asosiy xotiradan sezilarli qisqa bo‘ladi.

Ko‘p yadroli protsessorda LLC odatda shared resursdir. Bir xil read-only satr bir nechta yadroga xizmat qiladi, dinamik sig‘im esa yukga qarab taqsimlanadi. Lekin umumiylik contention keltiradi: agressiv yadro boshqa workload satrlarini chiqarib, uning kechikishini oshirishi mumkin.

Tashkil va ulanish

Katta LLC monolit SRAM emas, slice yoki banklarga bo‘linadi. Fizik manzil hash orqali home slice’ga xaritalanadi. Request on-chip ring yoki mesh bo‘ylab yuradi, shuning uchun hit vaqti yadro bilan slice masofasi hamda tarmoq bandligiga bog‘liq.

Banklar parallel bandwidth beradi. Biroq ko‘p so‘rov bir bankka tushsa navbat paydo bo‘ladi. Tag lookup, data array va response yo‘li pipeline qilinadi; yuqori throughput bitta so‘rovning latency’sini kamaytirmasligi mumkin. MSHRlar outstanding misslarni birlashtiradi: bir satrga kelgan bir nechta talab quyi xotiraga bitta so‘rov yuboradi.

Coherence bilan bog‘lanish

LLC ko‘pincha directory vazifasini ham bajaradi. Metadata satr qaysi private keshlarda mavjudligini yoki dirty egasi qaysi yadro ekanini bildiradi. Yozuv so‘rovi boshqa sharer’larga invalidation yuboradi. Data qismi chiqarilsa ham noninclusive tizim directory yozuvini saqlashi mumkin.

Inclusive LLC eviction private kesh nusxalarini ham invalidate qiladi. Bu snoop filter’ni soddalashtiradi, ammo private keshdagi foydali satr majburan yo‘qolishi mumkin. Exclusive siyosat ko‘proq jami sig‘im beradi, lekin satr migratsiyasi va ownership boshqaruvi murakkabroq.

Bo‘linish va xavfsizlik

Serverlar LLC way’larini virtual mashina, container yoki xizmat sinfiga ajratishi mumkin. Partition performance isolation beradi va bir tenantning cache pressure’i boshqasiga ta’sirini kamaytiradi. Sahifa ranglash operatsion tizim darajasida fizik manzil bitlari orqali set guruhlarini boshqaradi.

Cache hit va miss vaqtidagi farq side-channel uchun ishlatilishi mumkin. Himoya faqat flush bilan cheklanmaydi: partitioning, core pinning, constant-time algoritm va speculation nazorati birgalikda qo‘llanadi. Counterlar LLC hit, miss va occupancy’ni ko‘rsatadi, ammo prefetch hamda coherence requestlari hisobga qanday kirishi protsessor hujjatida tekshiriladi.

LLC’dan keyingi so‘rovlar memory controller navbatida read, write-back va refresh bilan raqobat qiladi. Shu sabab bitta qo‘shimcha LLC hit faqat DRAM latency’ni emas, interconnect va queue bandligini ham chetlab o‘tadi. Bandwidthga to‘yingan serverlarda bu foyda individual miss vaqtiga qaraganda kattaroq bo‘lishi mumkin.

Operatsion tizim threadlarni bir xil LLC domain ichida joylashtirsa shared data cache-to-cache yo‘li qisqaradi. Aksincha, bandwidth talab qiladigan ishlarni turli domainlarga yoyish contentionni kamaytirishi mumkin.

Topologiya ma’lumoti firmware jadvallari orqali tizimga beriladi.

Bog‘liq tushunchalar

L3 cache, cache slice, cache partitioning, directory protocol, DRAM, cache side-channel