Kas yra CPU talpykla?

click fraud protection

Šiuolaikiniai procesoriai veikia neįtikėtinai greitai; jie gali žymiai pranokti sistemos RAM. Dėl procesoriaus ir atminties greičio disbalanso jūsų procesorius dažnai neveikia ir laukia, kol į jį bus išsiųsti duomenys, kad jis galėtų tęsti procesą. Kad taip nenutiktų, leidžiant CPU ir toliau veikti vis greičiau, naudojama procesoriaus talpykla.

Kaip procesoriaus talpykla pagreitina procesorių?

CPU talpykla sukurta taip, kad būtų kuo greitesnė, o vėliau talpykloje saugotų procesoriaus prašomus duomenis. CPU talpyklos greitis optimizuotas trimis būdais: delsa, pralaidumu ir artumu. Centrinio procesoriaus talpykla veikia esant labai mažam delsos laikui, todėl iki minimumo sumažinamas laikas, kurio reikia rezultatui grąžinti. Pavyzdžiui, „Intel i9-9900k“ talpyklos delsa yra atitinkamai 0,8, 2,4 ir 11,1 nanosekundės L1, L2 ir L3 talpykloje. Palyginimui, šiuolaikinės didelės spartos RAM delsa yra maždaug 14 nanosekundžių.

Patarimas: talpyklos lygiai bus išsamiau paaiškinti vėliau, bet paprasčiausiai tariant, apatiniai talpyklos sluoksniai yra greitesni, bet brangesni, todėl jų talpa mažesnė. Nanosekundė yra milijardoji sekundės dalis, todėl 0,8 sekundės delsa reiškia, kad rezultatui grąžinti reikia mažiau nei milijardinės sekundės dalies.

Kalbant apie pralaidumą, procesoriaus talpykla siūlo reikšmingus našumo patobulinimus, palyginti su tradicine saugykla ir RAM. L1 ir L3 talpyklos skaitymo greitis gali būti didžiausias atitinkamai 2,3 TB/s ir 370 GB/s, o RAM pralaidumas paprastai yra apie 40 GB/s. Šis padidėjęs pralaidumas reiškia, kad procesoriaus talpykla gali perduoti duomenis į procesorių daug greičiau nei RAM.

Norint pasiekti didžiausią įmanomą greitį, procesoriaus talpykla iš tikrųjų yra įmontuota į paties procesoriaus antgalio silicį. Tai sumažina atstumą, kurį turi nukeliauti bet kokie elektriniai signalai, todėl delsa išlaikoma kuo mažesnė. Pavyzdžiui, kai L3 talpykla pirmą kartą buvo perkelta iš pagrindinės plokštės į procesoriaus bloką, tuometinis procesorius (Pentium 4 EE) sugebėjo pagerinti našumą 10–20%.

CPU talpyklos architektūra

Šiuolaikiniai procesoriai paprastai naudoja tris CPU talpyklos sluoksnius, pažymėtus L1-3, o mažesnio numerio talpyklos yra arčiau procesoriaus branduolių, greitesnės ir brangesnės. Kiekvienas atskiras kelių branduolių procesoriaus branduolys turi savo L1 talpyklą. Paprastai jis yra padalintas į dvi dalis: L1I ir L1D. L1I naudojamas procesoriaus instrukcijoms talpykloje išsaugoti, o L1D naudojamas duomenims, kuriems tos instrukcijos turi būti vykdomos, talpykloje saugoti.

Kiekvienas CPU branduolys paprastai taip pat turi savo L2 talpyklą šiuolaikiniame CPU. L2 talpykla yra didesnė ir lėtesnė nei L1 talpykla ir pirmiausia naudojama duomenims, kurie kitu atveju netilptų į L2 talpyklą, saugoti. Turint specialią L2 talpyklą vienam branduoliui, išvengiama ginčų dėl talpyklos. Talpyklos ginčas yra ta vieta, kai skirtingi branduoliai kovoja norėdami reikalauti talpyklos vietos savo darbo krūviams, todėl svarbūs duomenys gali būti išvalyti iš talpyklos.

L3 talpykla paprastai dalijamasi tarp visų procesoriaus procesoriaus branduolių. Vėlgi, L3 talpykla yra lėtesnė nei L2 talpykla, bet yra pigesnė ir didesnė. Suteikus bendrinamą talpyklą, galima sumažinti duomenų, kurie būtų dubliuojami žemesnio lygio vieno branduolio talpykloje, kiekį.

Patarimas: Pavyzdžiui, „Intel i9-9900K“ talpyklos dydžiai turi 64 KB L1 ir 256 KB L2 talpyklą viename branduolyje (iš viso 512 KB L1 ir 2 MB L2), jis taip pat turi 16 MB bendrinamą L3 talpyklą.

Kaip naudojama procesoriaus talpykla?

Visi procesoriaus talpyklos lygiai naudojami siekiant pagreitinti procesoriaus veikimą, talpinant duomenis iš RAM. Kai CPU prašo duomenų, jis paprastai pirmiausia ieško savo talpyklos sluoksniuose, siekdamas gauti duomenis kuo greičiau. Jei duomenys randami talpyklos įvykyje, CPU gali tęsti apdorojimą. Jei duomenų nėra talpykloje, tai vadinama talpyklos praleidimu, tada CPU turi patikrinti RAM, o tada kietąjį diską, jei duomenų taip pat nėra. Greitesni sluoksniai visada tikrinami pirmiausia, kad būtų užtikrintas maksimalus našumas.

Kad CPU galėtų turėti reikiamus duomenis talpykloje, kai to reikia, talpykla bando iš anksto nustatyti, kokių duomenų CPU gali prireikti toliau. Pavyzdžiui, jei centrinis procesorius paprašė tam tikrų vaizdo duomenų, jis atvaizduodamas talpyklą gali bandyti iš anksto į talpyklą įrašyti daugiau vaizdo duomenų, kad juos būtų galima kuo greičiau pateikti CPU.