Mis on tõlkevaatepuhver?

Protsessorid on uskumatult keerulised loomad. Seal on tohutul hulgal omavahel ühendatud osi, mis kõik peavad töötama täiuslikus kooskõlas, et saavutada meie nähtavad jõudlustasemed. Mälu jõudlus on tänapäevaste protsessorite jõudluse võtmetegur, eriti piirav tegur.

Miks on mälu kiirus nii oluline?

Protsessorid on uskumatult kiired, uusimad põlvkonnad töötavad piisava jahutamise korral sagedusel 5,7 GHz. See võimaldab neil igas sekundis sooritada 5,7 miljardit toimingut. Paljud neist toimingutest teostavad toimingu teatud tüüpi andmetega, mis tuleb mällu salvestada.

Süsteemi põhimälu ehk RAM on samuti väga kiire. Kahjuks on see väga kiire, kui võrrelda millegi muuga peale protsessori. Kaasaegse tippmälu RAM-i absoluutne latentsusaeg on suurusjärgus 60 nanosekundit. Kahjuks tähendab see umbes 342 protsessori tsüklit. Mälule juurdepääsu kiirendamiseks kasutatakse CPU vahemälu, mis salvestab andmed dünaamiliselt vahemällu. See vahemälu asub protsessori kettal endal ja kasutab SRAM-i rakke, mitte DRAM-i rakke, muutes selle palju kiiremaks. Kahjuks on protsessori vahemälu ka palju väiksem kui süsteemi RAM, üldiselt ei ole see isegi 100 MB. Vaatamata oma väikesele suurusele suurendab astmeline protsessori vahemälusüsteem oluliselt süsteemi jõudlust.

Siin tuleb virtuaalmälu, et kõik sassi ajada

Kaasaegsed arvutid kasutavad süsteemi, mida nimetatakse virtuaalseks mäluks. Selle asemel, et eraldada protsessidele füüsilise mälu aadresse, kasutatakse virtuaalmälu aadresse. Igal protsessil on oma virtuaalse mälu aadressiruum. Sellel on kaks eelist. Esiteks võimaldab see hõlpsasti eraldada ühele protsessile kuuluva mälu ja teise protsessi mälu. See aitab vältida ründeid, kus pahatahtlik tarkvara loeb andmeid muu tarkvara mälust, mis võib potentsiaalselt pääseda juurde tundlikule teabele. Samuti peidab see protsessi eest füüsilise mälu struktuuri. See võimaldab CPU-l teisaldada harva kasutatavaid mälubitte salvestusel asuvasse saalefaili, ilma et see tingimata virtuaalsest RAM-ist lahti tuleks. See võimaldab arvutil õrnalt hallata stsenaariume, kus on vaja rohkem RAM-i kui füüsiliselt olemas on. Ilma virtuaalse mäluta

Kahjuks, kui kasutate virtuaalmälu aadresse, peab arvuti andmete lugemiseks need virtuaalse mälu aadressid füüsiliseks mäluaadressiks tõlkima. Selleks on vaja tabelit, mis salvestab kõik virtuaalse mälu aadresside tõlked füüsilisteks mäluaadressideks. Selle suurus sõltub otseselt kasutatava RAM-i hulgast. See on üldiselt üsna väike, vähemalt võrreldes süsteemi RAM-i mahuga. Kahjuks, kui salvestate tõlke virtuaalsete aadresside ja füüsiliste aadresside vahel RAM-i, peate RAM-ile esitama kaks päringut iga RAM-i päringu kohta. Üks, et leida füüsiline aadress, mida taotleda, ja teine, et tegelikult sellele asukohale juurde pääseda.

Sisestage tõlkepuhver

Selle probleemi lahendus on tõlketabeli salvestamine kuhugi kiiremini. Protsessori vahemälu sobiks kenasti, vähemalt kiiruse vaatenurgast. Selle probleemiks on aga see, et CPU vahemälu on väike ja seda on juba palju kasutatud. Tabel mitte ainult ei mahu vahemällu, vaid see häiriks selle niigi jõudlust määravat kasutamist.

Muidugi, kui vahemälu põhimõte töötab juba mälule juurdepääsu jaoks, siis miks mitte korrata seda tõlketabeli jaoks? Ja just see on tõlkevaatepuhver ehk TLB. See on kiire vahemälu hiljutiste aadressi tõlgete jaoks. See ei ole piisavalt suur kogu tabeli salvestamiseks, kuid selle väiksus tähendab, et see suudab reageerida väga kiiresti, ühe kellatsükli jooksul.

Kõik mälupäringud lähevad TLB kaudu. TLB tabamuse korral võib see anda tegeliku päringu jaoks füüsilise mälu aadressi, lisades tavaliselt ühe latentsustsükli. Kui esineb TLB puudu, tuleb otsing teha põhimälust. Ligikaudu 5 tsükli pikkuse TLB puudujäägi korral on väike jõudlustrahv, mis on mälule juurdepääsu latentsusaeg rohkem kui varjutatud. Kui aadressi tõlge on süsteemi RAM-ist hangitud, lükatakse see TLB-sse ja päringut korratakse kohese TLB tabamusega.

Märkus: TLB väljatõstmiseks on erinevaid skeeme. Mõned võivad kasutada skeemi First In, First Out või FIFO. Teised võivad kasutada kõige vähem kasutatavat või LFU skeemi.

Harvadel juhtudel, kui aadressi tõlketabelis puudub kirje, põhjustab lehe tõrge, kuna taotletud andmed pole RAM-is. OS peab seejärel tõrke käsitlema ja andmed mälust RAM-i üle kandma, enne kui päring saab jätkata.

Järeldus

Translation Lookaside Buffer ehk TLB on kiire protsessori vahemälu, mis on ette nähtud hiljutiste aadressi tõlgete vahemällu salvestamiseks süsteemi RAM-i lehefailist. See on vajalik, kuna virtuaalmälusüsteemid, nagu seda rakendatakse kõigis kaasaegsetes arvutites, nõuaksid iga RAM-i päringu kohta kahte RAM-i päringut. Üks virtuaalse mälu aadressi tõlkimiseks füüsiliseks mäluaadressiks ja teine ​​füüsilisele aadressile tegelikuks juurdepääsuks. Hiljutiste tõlgete vahemällu salvestamisega saab TLB tabamuste mälu latentsust oluliselt vähendada.

Tuleb hoolitseda selle eest, et vahemällu salvestatud tõlked oleksid hetkel aktiivse protsessi jaoks asjakohased. Kuna igal protsessil on erinev virtuaalne aadressiruum, ei saa neid uuesti kasutada. Selle range piiramata jätmine oli Meltdowni haavatavuse põhjus.


Mis on SMPS?

Mis on SMPS?

Enne oma arvutile SMPS-i valimist uurige, mis on SMPS ja mida tähendab erinevate tõhususe reiting.

Mis on isolatsioonipõhine turvalisus?

Mis on isolatsioonipõhine turvalisus?

Kavatsesin süveneda teemasse, mis muutub küberturvalisuse maailmas üha olulisemaks: isolatsioonipõhine turvalisus. See lähenemine

Kuidas kasutada automaatset klikkerit Chromebooki jaoks

Kuidas kasutada automaatset klikkerit Chromebooki jaoks

Täna kavatsesime süveneda tööriista, mis suudab teie Chromebookis korduvaid klõpsamisi automatiseerida: automaatset klõpsurit. See tööriist võib säästa teie aega ja

Roomba peatub, jääb kinni ja pöörab ümber – paranda

Roomba peatub, jääb kinni ja pöörab ümber – paranda

Lahendage probleem, kus teie Roomba robottolmuimeja peatub, kinni jääb ja pöörleb pidevalt ümber.

Miks minu Chromebook ei lülitu sisse?

Miks minu Chromebook ei lülitu sisse?

Hankige vastused küsimusele, miks minu Chromebook ei lülitu sisse? Selles kasulikus juhendis Chromebooki kasutajatele.

Kuidas muuta Steam Decki graafikaseadeid

Kuidas muuta Steam Decki graafikaseadeid

Steam Deck pakub jõulist ja mitmekülgset mängukogemust otse teie käeulatuses. Kuid selleks, et optimeerida oma mängimist ja tagada parim võimalik

Kuidas muuta Fitbit Versa 4 kella numbrit

Kuidas muuta Fitbit Versa 4 kella numbrit

Muutke oma Fitbit Versa 4 kella sihverplaati, et anda oma kellale iga päev tasuta uus välimus. Vaadake, kui kiire ja lihtne see on.

Kuidas Googleile andmepüügipettustest teatada

Kuidas Googleile andmepüügipettustest teatada

Sellest juhendist leiate teavet selle kohta, kuidas petturist Google'ile teatada, et vältida teiste petmist.

Kuidas eemaldada GPU Windowsi arvutist 2023. aastal

Kuidas eemaldada GPU Windowsi arvutist 2023. aastal

Kas peate GPU arvutist eemaldama? Liituge minuga ja selgitan selles samm-sammulises juhendis, kuidas GPU arvutist eemaldada.

Mis on õlasurf?

Mis on õlasurf?

Õlas surfamine on sotsiaalse manipuleerimise rünnak. See hõlmab ründajat, kes kogub teavet teie ekraani vaadates.