Hvad er forskellen mellem scalar og array-processorer?

Der er en stor forskel mellem to af de vigtigste formater - skalar- og array-processorer - hvor et computersystem behandler information. Mens skalare processorer arbejder på et dataelement ad gangen, kan matrixprocessorer tackle flere datastrømme samtidig. Begge processorer er dog en del af den centrale behandlingsenhed (CPU), der kontrollerer alle handlinger på en computer og kan håndtere alle tidspunkter af data. Scalar og array-processorer udfører mange af de samme operationer, men på en anden måde, hvilket gør hver egnet til et andet formål og sørger for, at alle funktioner fra den enkleste til mest komplekse kan udføres.

Array-processorer anvender en enkelt instruktion på flere arrays eller matrixer af data samtidig, før de går videre til den næste instruktion. Dette gør det muligt for array-processorer at arbejde meget hurtigere, fordi processoren ikke behøver at vente på, at det første sæt instruktioner udføres på det ene element, før det går videre til det næste. Mange af de trin, der kræves for at udføre en handling, fjernes, fordi computeren henter flere elementer på samme tid, udfører handlingen på dem alle, og omskriver den derefter til hukommelsen i stedet for at gentage trin med hvert nyt stykke data.

Scalar-processorer fungerer på et dataelement ad gangen, før de går videre til det næste element. Hver instruktion skal udføres på det aktuelle emne, inden man går videre til næste instruktion. I slutningen af ​​løkken udføres sæt instruktioner på det næste punkt i rækkefølge. Næsten alle CPU'er i massemarkedet er skalære, selvom de muligvis har elementer, der fungerer mere som array-processorer.

Supercomputere fra 1980'erne og 1990'erne blev designet til at behandle store mængder data ved hjælp af enkeltinstruktion-multiple-data. Array-processorer gjorde det muligt at manipulere videnskabs- og forskningsdata på kortere tid. Selvom det kan virke intuitivt, at matrixprocessorer vil håndtere alle CPU-funktioner hurtigere end skalare processorer, er dette ikke tilfældet. Array-processorer er i stand til effektivt at håndtere store mængder data, men da funktionen kræver, at CPU'en er mere kompleks, er enklere operationer sværere at udføre.

Forskellene mellem scalar og array-processorer blev mindre udtalt med introduktionen af ​​mikroprocessorer i 1994. Siden da er mikroprocessorer med elementer af enkelt-instruktion-multiple-data blevet normen og yderligere indsnævret kløften mellem scalar og array-processorer. Videospilkonsoller og grafikacceleratorer har deres egen grafik CPU, der kører parallelt med den vigtigste skalære CPU, hvilket således frigører hoved CPU'en til at udføre ikke-grafikfunktioner.

ANDRE SPROG

Hjalp denne artikel dig? tak for tilbagemeldingen tak for tilbagemeldingen

Hvordan kan vi hjælpe? Hvordan kan vi hjælpe?