Hvað er minnishindrun?

Sögulega hafa örgjörvar verið fullkomlega raðbundnar vélar. Þetta er mjög rökrétt og auðvelt að skilja en getur verið frammistöðuvandamál. Í gegnum árin hafa verið margar sniðugar breytingar á CPU hönnun til að ná eins miklum afköstum og hægt er úr sílikonplötum. Einn af þeim áhugaverðari er þó framkvæmd í óreglu. Í örgjörvum sem keyra ekki í röð þurfa leiðbeiningar ekki endilega að vera framkvæmdar í þeirri röð sem þær eru gefnar út.

Staða í röð

Helsta frammistöðuvandamálið sem örgjörvi í röð lendir í er kallað leiðslustöð. Þetta gerist þegar leiðbeining er háð einhverju minni, en það minni er ekki beint tiltækt í skrá. Í þessu tilviki verður CPU að finna það gildi í minni. Örgjörva skyndiminni er athugað fyrst þar sem þetta eru hraðasta minnisstigið. Ef gildið er ekki til staðar er vinnsluminni kerfisins athugað. Á þessum tíma verður örgjörvinn að sitja aðgerðalaus, þar sem minnisháðu leiðbeiningunum verður að vera lokið í röð áður en eftirfarandi leiðbeiningar fylgja.

Afköst áhrifa af leiðslustöðvum eru kannski ekki svo slæm, en þau geta líka verið tiltölulega alvarleg. Til dæmis getur L1 skyndiminni venjulega skilað niðurstöðu í stærðargráðunni 5 CPU lotur. L2 skyndiminni getur tekið 20 lotur, L3 um 200 lotur og kerfisvinnsluminni um 400 lotur. Í ljósi þess að örgjörvi gæti starfað á um 5GHz, það er 5 milljarðar klukkulota á sekúndu, eru jafnvel 400 lotur ekki svo slæmar (0,000008%). En ef þú hefur margar leiðbeiningar sem þarf að vísa til gagna neðar í skyndiminni, geta uppsöfnuð áhrif valdið áberandi hægagangi.

Framkvæmd utan kerfis og endurnefna skráningar

Framkvæmd utan reglu er tækni sem gerir tímaáætlunarmanni kleift að endurraða leiðbeiningunum í biðröð sinni. Með þessari endurröðun getur það valið að forgangsraða ákveðnum þræði umfram aðra. Það getur líka ýtt leiðbeiningum aftur í biðröðina þegar þeir eru með gagnaháð sem hefur ekki enn verið uppfyllt. Þetta kemur í veg fyrir að leiðslur stöðvast eins mikið og mögulegt er og lágmarkar aðgerðalausar lotur.

Framkvæmd sem ekki er í lagi krefst eiginleika sem kallast endurnefna skrár. Örgjörvinn getur nálgast gögn sem geymd eru í skrám innan einni lotu. Skrár eru notaðar til að geyma gögn sem verið er að lesa og skrifa. Það er hins vegar nauðsynlegt að tryggja að tölvan í heild sinni sjái allt gerast í rökréttri röð, ekki í óskiptri röð örgjörvahringsins. Til að virkja þetta hafa örgjörvar miklu fleiri rökrétta skrár en CPU arkitektúrinn krefst.

Gögn sem þarf að skrifa út, en hafa „fyrri“ leiðbeiningar sem ekki er lokið enn, eru sett í eignarskrá. Þessi gögn eru ekki flutt yfir á aðra skrá þegar pöntunin er komin í lag. Þess í stað er nafninu á búrðaskrá breytt í nafnið á skránni sem hún á að vera í. Þetta er nokkuð svipað því að útbúa eftirrétt fyrir aðalrétt en geyma hann svo í ísskápnum þar til kominn er tími til að bera hann fram.

Þessar rökréttu skrár eru algjörlega ótaldar. Örgjörvinn getur aðeins í raun fjallað um rökrænu skrárnar sem nú deila nafni byggingarlistanna. Sem sagt, örgjörvinn er líka nógu meðvitaður um þá að ef aðrar endurraðaðar leiðbeiningar treysta á gögnin í rökréttu eignaskránni, þá geta þeir notað þau frekar en „úrelt“ gögnin í byggingarlistarskránni á þeim tiltekna reynslutíma.

Minnishindranir

Minnishindrun - einnig nefnd hylja, minnisgirðing eða girðingarkennsla - er leiðbeining í tölvukóða. Það gerir forritara kleift að framfylgja pöntunartakmörkunum á minnisaðgerðum sem gefnar eru út fyrir og eftir minnishindrunina. Minnishindrun segir CPU tímaáætlunarmanninum að tryggja að allar leiðbeiningar séu unnar fyrir allar leiðbeiningar eftir hindrunina. Þetta er gert til að tryggja að mikilvægum aðgerðum sé lokið í réttri röð.

Almennt, á nútíma tölvum, ætti þetta ekki að vera nauðsynlegt. Framkvæmd sem ekki er í lagi og endurnefna skrásetning eru rótgróin og þroskað svið. Engu að síður getur minnishindrun verið gagnleg fyrir eldri, minna háþróaða, ónotaða örgjörva eða notað í mikilvægum minnisaðgerðum.

Minnishindranir geta fylgt einhverjum afköstum. Þetta er vegna þess að þeir koma í veg fyrir að CPU tímaáætlunarstjórinn hagræði tilteknum hlutum kennsluflæðisins. Þetta eykur líkurnar á stöðvun í leiðslum.

Niðurstaða

Minnishindrun er leiðbeining sem tryggir pöntunarþvingun á minnisaðgerðum. Þetta er mikilvægt vegna þess að vinnsluvinnsluaðilar sem ekki eru í röð geta endurraðað tilteknum leiðbeiningum. Þó að endurnefna skrásetning sé vel þekkt sem aðferð til að tryggja heilleika minni í þessu umhverfi getur verið gagnlegt að tryggja það handvirkt.

Minnishindrun neyðir CPU tímaáætlunarmanninn til að tryggja að leiðbeiningum sé lokið fyrir allar leiðbeiningar eftir hindrunina. Þetta kemur í veg fyrir að minnisaðgerðum sé endurraðað. Það kemur einnig í veg fyrir að CPU hagræði leiðbeiningarflæðið, sem getur haft áhrif á frammistöðu.


Hvernig á að klóna harðan disk

Hvernig á að klóna harðan disk

Í nútíma stafrænni öld, þar sem gögn eru dýrmæt eign, getur klónun á harða diskinum á Windows verið mikilvægt ferli fyrir marga. Þessi alhliða handbók

Hvernig á að laga bílstjóri WUDFRd tókst ekki að hlaðast á Windows 10?

Hvernig á að laga bílstjóri WUDFRd tókst ekki að hlaðast á Windows 10?

Stendur þú frammi fyrir villuboðunum þegar þú ræsir tölvuna þína sem segir að bílstjóri WUDFRd hafi ekki hlaðast á tölvuna þína?

Hvernig á að laga NVIDIA GeForce Experience villukóða 0x0003

Hvernig á að laga NVIDIA GeForce Experience villukóða 0x0003

Ertu með NVIDIA GeForce reynslu villukóða 0x0003 á skjáborðinu þínu? Ef já, lestu bloggið til að finna hvernig á að laga þessa villu fljótt og auðveldlega.

Hvað er SMPS?

Hvað er SMPS?

Lærðu hvað er SMPS og merkingu mismunandi skilvirknieinkunna áður en þú velur SMPS fyrir tölvuna þína.

Af hverju er ekki kveikt á Chromebook

Af hverju er ekki kveikt á Chromebook

Fáðu svör við spurningunni: Af hverju kveikir ekki á Chromebook? Í þessari gagnlegu handbók fyrir Chromebook notendur.

Hvernig á að tilkynna vefveiðar til Google

Hvernig á að tilkynna vefveiðar til Google

Lærðu hvernig á að tilkynna svindlara til Google til að koma í veg fyrir að hann svindli aðra með þessari handbók.

Roomba stoppar, stingur og snýr við – laga

Roomba stoppar, stingur og snýr við – laga

Lagaðu vandamál þar sem Roomba vélmenni ryksuga þín stoppar, festist og heldur áfram að snúa sér.

Hvernig á að breyta grafíkstillingum á Steam Deck

Hvernig á að breyta grafíkstillingum á Steam Deck

Steam Deckið býður upp á öfluga og fjölhæfa leikjaupplifun innan seilingar. Hins vegar, til að hámarka leikina þína og tryggja það besta mögulega

Hvað er einangrunarbundið öryggi?

Hvað er einangrunarbundið öryggi?

Ætluðum að kafa ofan í efni sem er að verða sífellt mikilvægara í heimi netöryggis: einangrunarbundið öryggi. Þessi nálgun við

Hvernig á að nota Auto Clicker fyrir Chromebook

Hvernig á að nota Auto Clicker fyrir Chromebook

Ætluðum í dag að kafa ofan í tól sem getur gert sjálfvirkt endurtekin smellaverkefni á Chromebook þinni: Auto Clicker. Þetta tól getur sparað þér tíma og