Fordelene av Hyper Threading

Fordelene av Hyper Threading


Hyper-threading er multitasking; uten at det er enorme mengder CPU bortkastet tid. For å forstå hyper-threading, litt bakgrunnskunnskap om hvordan prosessorer arbeid er nødvendig. Å vite det grunnleggende om hvordan prosessoren fungerer, og hvordan hyper-threading påvirker det kan hjelpe deg å ta en avgjørelse neste gang du gjør et kjøp.

Deler av en prosessor

Moderne prosessorer er komplekse kretser som er sammensatt av to grunnleggende deler. "Front-end" av en prosessor leser data fra et lite minne cache og organiserer det i diskrete beregninger, som det deretter passerer på "back-end", som leser instruksjonene og utfører beregningene. passerer så back-end resultatene av beregningene tilbake gjennom til minnet. Hver type beregning kan bare utføres av den tilsvarende type prosessor; for eksempel er tilsetning utføres av en aritmetisk logisk enhet.

Uten Hyper-threading

Uten hyper-threading, er multitasking utføres ved å gi hvert program en bit av tid til å kjøre beregninger på CPU. Når tiden er ute, må programmet vente på neste tilgjengelige plassen. Men noen programmer trenger å kjøre bestemte typer beregninger. Dette fører til situasjoner hvor alle av de aritmetiske enheter kan brukes opp, men multiplikator enheter sitter uvirksom. CPU-sykluser uten hyper-threading som regel ende opp med ineffektive, tomme enheter.

Hyper-threading

Hyper-threading introduserer muligheten for prosessoren å kombinere flere programmer instruksjoner og kjøre dem på samme syklus. Til back-end enheter, er en beregning bare en beregning, og så ingen forvirring oppstår. Fordi programmer deler sykluser, ubrukt beregningsenheter raskt bli fylt opp, eliminere avfall. Hyper-threading forbedrer bare effektivitet når multitasking, imidlertid, og gjør ingenting for å øke basis hastigheten på en prosessor.

Før Hyper-threading

Før hyper-threading ble implementert, en mer grunnleggende form for multi-threading eksisterte. Cooperative multitasking ville bytte CPU mellom ulike programmer, men stolte på hvert program for å gi opp bruken av CPU når den var ferdig. Mens dette arbeidet med pålitelige utviklere, kan uærlige eller dårlig kodede programmer hog CPU, nekter å gi det opp til andre. Dette problemet direkte førte til utviklingen av hyper-threading, så vel som andre teknologier brukere stole på, slik som minnebeskyttelse.