Hvað er samhengisrofi?

Á fyrstu dögum tölvunar voru örgjörvar eingöngu raðbundnar vélar. Þetta hjálpaði til við að halda hönnuninni einföld. Hins vegar takmarkaði það einnig árangur. Mörg ferli munu þurfa að biðja um gögn frá vinnsluminni kerfisins eða harða disknum. Þó að vinnsluminni í kerfinu sé hratt er það samt ekki eins hratt og örgjörvinn, þannig að það situr aðgerðalaus og bíður eftir gögnum þar til svarið kemur aftur frá vinnsluminni. Ástandið er enn verra fyrir gögn sem beðið er um af harða disknum, geymslutæki sem er mun hægara en vinnsluminni. Hér getur örgjörvinn verið aðgerðalaus í umtalsverðan tíma og beðið eftir svari. Því miður, með röð örgjörva, er þetta mál einfaldlega óhjákvæmilegt.

Sem betur fer eru nútíma örgjörvar ekki lengur í röð. Þeir bjóða upp á marga háþróaða eiginleika, svo sem útkeyrslu og marga þræði. Framkvæmd utan reglu gerir örgjörvanum kleift að greina komandi leiðbeiningar og endurraða þeim til að hámarka skilvirkni. Fjölþráður gerir örgjörvanum kleift að hafa marga mismunandi þræði eða ferla í gangi.

Fyrir utan að hafa marga kjarna getur örgjörvinn ekki keyrt meira en einn í einu. Það getur hins vegar látið þetta líta út með því að skipta reglulega á milli þeirra til að tryggja að þeir fái hver um sig töluverðan stöðugan örgjörvatíma. Ferlið við að skipta á milli þráða er kallað samhengisrofi.

Hvernig virkar samhengisrofi?

Samhengisrofi samanstendur af tveimur hlutum, skipt út fyrri þræði og skipt inn í nýjan. Til að breyta gamla þræðinum verður örgjörvinn að vista núverandi ástand sitt í Process Control Block eða skiptingarramma. Þetta felur í sér gildi allra viðeigandi örgjörvaskráa og samanstendur alltaf af gildi forritateljarans. Þegar þráðurinn hefur verið geymdur er hægt að bæta handfangi við tilbúna biðröð til að gera það kleift að endurheimta þegar þörf krefur.

Að skipta í eftirfarandi þræði er sama ferli öfugt. Þráður er valinn annað hvort úr tilbúinn biðröð, allt eftir þyngd. Að öðrum kosti er hægt að velja það með truflun sem gefur til kynna að atburður sem þráðurinn beið eftir sé nú tilbúinn eða lokið. Gögnin fyrir þráðinn eru síðan afrituð í rétta skrána og þráðurinn er endurheimtur. Á þessum tímapunkti er nýi þráðurinn tilbúinn til að halda áfram rekstri þar sem hann hætti.

Áhrif á árangur

Ferlið við að lesa og skrifa gögn þegar skipt er um þráð inn eða út tekur nokkurn tíma, þó ekki mikinn, þar sem minnið sem notað er er venjulega háhraða. Það er hins vegar frekari árangurskostnaður. Þegar skipt er um þræði gætu gögnin í skyndiminni CPU og biðminni frá fyrri þræði ekki skipt máli fyrir nýja þráðinn. Þetta getur leitt til verulegrar aukningar á TLB ( Translation Lookaside Buffer ) og skyndiminnismissir.

Þessi áhrif eru ekki veruleg ef þræðir tveir voru fæddir af sama ferli, þar sem þeir eru líklegir til að deila töluverðum minnisþáttum. TLB verður að skola alveg þegar skipt er á milli þráða frá mismunandi aðferðum. Þetta leiðir til 100% TLB misshraða á meðan högghlutfall CPU skyndiminni er einnig verulega lækkað.

Þó að örgjörvar bjóði upp á vélbúnaðarstuðning fyrir samhengisskipti, þá nota stýrikerfi þetta venjulega ekki. Skipting vélbúnaðarsamhengis skortir meðvitund um mikilvægi gagna. Þess vegna þarf það að geyma og endurheimta allar skrár, auka tímann sem það tekur og geymslurýmið sem þarf.

Að auki geymir samhengisskipti á vélbúnaði ekki gögnin úr flotpunktaskrám, virkni sem gæti verið nauðsynleg. Skipting hugbúnaðarsamhengis er því almennt notuð. Það gerir kleift að geyma gögnin úr öllum skrám, þar með talið flotpunktaskrám. Hugbúnaðarsamhengisrofar hafa skilning á mikilvægi gagna. Þetta þýðir að það getur valið og valið hvaða til að geyma eftir þörfum.

Niðurstaða

Samhengisrofi er ferli þar sem nútíma CPU skiptir um hvaða þráð hann er í gangi. Ferlið felur í sér að geyma viðeigandi gögn núverandi þráðar og endurheimta viðeigandi gögn nýja þráðsins. Samhengisskiptum fylgir frammistöðukostnaður sem tengist þeim tíma sem þarf til að framkvæma skiptinguna og auknum hraða skyndiminni og TLB missa þar sem þau eru ekki geymd. Samhengisrofar gerast annað hvort til að tryggja að allir þræðir hafi gott framboð af CPU tíma eða vegna truflunar sem gefur til kynna að atburður sem línan beið eftir sé lokið.


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