Kas yra atminties barjeras?

Istoriškai procesoriai buvo tobulai nuoseklūs įrenginiai. Tai labai logiška ir lengvai suprantama, tačiau gali kilti našumo problema. Bėgant metams buvo atlikta daug išradingų procesoriaus dizaino pakeitimų, siekiant išgauti kuo didesnį našumą iš silicio plokštelių. Tačiau vienas iš įdomesnių yra netvarkingas vykdymas. Netvarkinguose CPU vykdymo procesoriuose instrukcijos nebūtinai turi būti vykdomos ta tvarka, kuria jos išduodamos.

Stovi tvarka

Pagrindinė našumo problema, su kuria susiduria CPU užsakymas, vadinama konvejerio sustojimu. Taip atsitinka, kai nurodymas priklauso nuo tam tikros atminties, bet ta atmintis nėra tiesiogiai pasiekiama registre. Tokiu atveju CPU turi rasti tą reikšmę atmintyje. Pirmiausia patikrinama procesoriaus talpykla, nes tai yra greičiausia atminties pakopa. Jei reikšmės nėra, patikrinama sistemos RAM. Per šį laiką CPU turi neveikti, nes nuo atminties priklausoma instrukcija turi būti įvykdyta eilės tvarka prieš pateikiant šias instrukcijas.

Dujotiekio strigimo įtaka gali būti ne tokia bloga, tačiau ji taip pat gali būti gana rimta. Pavyzdžiui, L1 talpykla paprastai gali grąžinti rezultatą, kurio dydis yra 5 CPU ciklai. L2 talpykla gali užtrukti 20 ciklų, L3 – apie 200 ciklų, o sistemos RAM – apie 400 ciklų. Atsižvelgiant į tai, kad CPU gali veikti maždaug 5 GHz dažniu, tai yra 5 milijardai laikrodžio ciklų per sekundę, net 400 ciklų nėra taip blogai (0,000008%). Bet jei turite daug instrukcijų, reikalingų nuorodoms į duomenis, esančius toliau talpyklos pakopose, bendras poveikis gali sukelti pastebimą sulėtėjimą.

Netvarkingas vykdymas ir registro pervadinimas

Vykdymas netvarkingai yra metodas, leidžiantis planuotojui pertvarkyti instrukcijas savo eilėje. Atlikęs šį pertvarkymą, jis gali pasirinkti teikti pirmenybę konkrečioms temoms prieš kitas. Jis taip pat gali nukreipti instrukcijas atgal į eilę, kai jos turi duomenų priklausomybę, kuri dar nebuvo įvykdyta. Tai kiek įmanoma apsaugo nuo dujotiekio strigimo ir sumažina tuščiosios eigos ciklus.

Netvarkingam vykdymui reikalinga funkcija, vadinama registro pervadinimu. CPU gali pasiekti duomenis, saugomus registruose per vieną ciklą. Registrai naudojami skaitomiems ir rašomiems duomenims saugoti. Tačiau labai svarbu užtikrinti, kad kompiuteris apskritai matytų viską, kas vyksta logiška, o ne netvarkinga, procesoriaus ciklo optimizuota tvarka. Kad tai būtų įmanoma, CPU turi daug daugiau loginių registrų, nei reikalauja procesoriaus architektūra.

Duomenys, kuriuos reikia išrašyti, bet turintys „ankstesnę“ instrukciją, kuri dar nebaigta, įrašomi į valdų registrą. Sutvarkius užsakymą, šie duomenys neperkeliami į kitą registrą. Vietoj to, valdos registro pavadinimas pakeičiamas į registro, kuriame jis turėtų būti, pavadinimą. Tai šiek tiek panašu į deserto ruošimą prieš pagrindinį patiekalą, bet po to laikomą šaldytuve, kol ateis laikas jį patiekti.

Šie loginiai registrai yra visiškai neadresuojami. Centrinis procesorius iš tikrųjų gali kreiptis tik į loginius registrus, kurie šiuo metu turi architektūrinių registrų pavadinimus. Be to, centrinis procesorius taip pat pakankamai juos žino, kad jei kitos pertvarkytos instrukcijos remiasi loginio saugojimo registro duomenimis, jie gali naudoti juos, o ne „pasenusius“ architektūrinio registro duomenis tuo konkrečiu empiriniu metu.

Atminties barjerai

Atminties barjeras – dar vadinamas membaru, atminties tvorele arba tvoros instrukcija – yra kompiuterio kodo nurodymas. Tai leidžia programuotojui vykdyti užsakymo apribojimą atminties operacijoms, išleistoms prieš ir po atminties barjero. Atminties barjeras nurodo procesoriaus planuokliui užtikrinti, kad visos instrukcijos būtų apdorotos prieš bet kokią instrukciją po barjero. Tai daroma siekiant užtikrinti, kad svarbios operacijos būtų atliekamos teisinga tvarka.

Paprastai šiuolaikiniuose kompiuteriuose tai netur��tų būti būtina. Netvarkingas vykdymas ir registro pervadinimas yra nusistovėjusios ir brandžios sritys. Nepaisant to, atminties barjeras gali būti naudingas senesniems, mažiau sudėtingiems, netvarkingiems procesoriams arba naudojamas svarbioms atminties operacijoms.

Atminties kliūtys gali turėti tam tikrą našumą. Taip yra todėl, kad jie aktyviai neleidžia procesoriaus planuokliui optimizuoti konkrečias komandų srauto dalis. Tai padidina dujotiekio užstrigimo tikimybę.

Išvada

Atminties barjeras yra instrukcija, užtikrinanti atminties operacijų užsakymo apribojimą. Tai svarbu, nes netvarkingi vykdymo procesoriai gali pertvarkyti konkrečias instrukcijas. Nors registro pervadinimas yra gerai žinomas kaip būdas užtikrinti atminties vientisumą šioje aplinkoje, gali būti naudinga tai užtikrinti rankiniu būdu.

Atminties barjeras verčia procesoriaus planuoklį užtikrinti, kad instrukcijos būtų įvykdytos prieš bet kokį nurodymą po barjero. Tai neleidžia pertvarkyti atminties operacijų. Tai taip pat neleidžia CPU optimizuoti instrukcijų srauto, o tai gali turėti įtakos našumui.


Leave a Comment

Kaip prijungti Windows 11 nešiojamąjį kompiuterį prie projekcinio ekrano/TV

Kaip prijungti Windows 11 nešiojamąjį kompiuterį prie projekcinio ekrano/TV

Perskaitykite šį straipsnį, kad sužinotumėte paprastą žingsnis po žingsnio procesą, kaip prijungti nešiojamąjį kompiuterį prie projekcinio ekrano ar TV naudojant Windows 11 ir Windows 10 operacines sistemas.

Kaip rasti spausdintuvo IP adresą

Kaip rasti spausdintuvo IP adresą

Ar sunku sužinoti, koks IP adresas naudojamas jūsų spausdintuvui? Mes parodysime, kaip tai padaryti.

3D Spausdinimo Pagrindai: Priežiūros Patarimai Jūsų 3D Spaudikliui

3D Spausdinimo Pagrindai: Priežiūros Patarimai Jūsų 3D Spaudikliui

Teisinga 3D spausdintuvų priežiūra yra labai svarbi, norint gauti geriausius rezultatus. Čia pateikiami keli svarbūs patarimai, kuriuos reikėtų atsiminti.

5 Priežastys, Kodėl Jūsų Nešiojamas Kompiuteris Perkaista

5 Priežastys, Kodėl Jūsų Nešiojamas Kompiuteris Perkaista

Sužinokite apie kai kurias galimas jūsų nešiojamojo kompiuterio perkaitimo priežastis, kartu su patarimais ir gudrybėmis, kaip išvengti šios problemos ir išlaikyti savo įrenginį šaltą.

3D Spausdinimo Pagrindai: Būtinas Priežiūros Patikrinimo Sąrašas

3D Spausdinimo Pagrindai: Būtinas Priežiūros Patikrinimo Sąrašas

Laikyti įrangą geros būklės yra būtina. Štai keletas naudingų patarimų, kaip išlaikyti savo 3D spausdintuvą puikios būklės.

Ką daryti, jei Powerbeats Pro neįsikrauna dėkle

Ką daryti, jei Powerbeats Pro neįsikrauna dėkle

Jei jūsų Powerbeats Pro neįsikrauna, naudokite kitą maitinimo šaltinį ir išvalykite ausines. Palikite dėklą atvirą, kol įkraunate ausines.

10 Geriausių NAS Saugojimo Įrenginių Namo ir Profesiniam Naudojimui

10 Geriausių NAS Saugojimo Įrenginių Namo ir Profesiniam Naudojimui

Ar ieškote NAS namuose ar biure, patikrinkite šį geriausių NAS saugojimo įrenginių sąrašą.

Canon Pixma MG5220: Nuskaitykite be rašalo

Canon Pixma MG5220: Nuskaitykite be rašalo

Kaip įgalinti nuskaitymą Canon Pixma MG5220, kai trūksta rašalo.

Kaip įdiegti SSD staliniuose ir nešiojamuose kompiuteriuose

Kaip įdiegti SSD staliniuose ir nešiojamuose kompiuteriuose

Ar ką tik įsigijote SSD ir norite atnaujinti vidinę savo kompiuterio atmintį, bet nežinote, kaip įdiegti SSD? Perskaitykite šį straipsnį dabar!

Kaip ištaisyti GeForce Now klaidos kodą 0xC272008F

Kaip ištaisyti GeForce Now klaidos kodą 0xC272008F

Jūs ruošiatės ilgam žaidimų vakarui, ir tai bus didelis vakaras – ką tik įsigijote "Star Wars Outlaws" GeForce Now transliacijų paslaugoje. Sužinokite vienintelį žinomą sprendimą, kaip ištaisyti GeForce Now klaidos kodą 0xC272008F, kad galėtumėte vėl pradėti žaisti Ubisoft žaidimus.