Den största skillnaden mellan vektor- och skalära processorer är hur många dataobjekt var och en hanterar samtidigt. Datorbehandling är ofta en ganska komplex vetenskap, och att förstå hur det fungerar på en teknisk nivå kräver ofta mycket kunskap och expertis. När det kommer till de grundläggande bearbetningstyperna är det dock ofta lättare att se saker enklare. I huvudsak samlar en vektorprocessor flera datapunkter och bearbetar var och en i tur och ordning. Det är ofta riktigt bra för komplicerade uppgifter som kan delas upp i mindre jobb som kommer att svara på en liknande instruktion. Vektorprocessorer är effektiva när det gäller att få saker gjorda, men denna effektivitet kan göra att andra delar av datorsystemet går långsamt. Skalära processorer, å andra sidan, hanterar vanligtvis bara ett jobb i taget och arbetar på vad som i princip är en punkt-till-punkt-basis. Denna typ av processor påverkar vanligtvis inte hastigheten på maskinen som helhet, men kan vara långsammare när det gäller att avsluta mer komplicerade jobb. Båda är viktiga för många sektorer, och vissa datorer och enheter använder faktiskt båda samtidigt för att maximera effektiviteten.
Stor betydelse av datorbehandling
Den del av en dator som låter den fungera, åtminstone på en mycket bred nivå, är allmänt känd som central processing unit (CPU). Denna enhet utför instruktionerna för olika program; den tar emot ett programs instruktioner, avkodar dessa instruktioner och delar upp dem i enskilda delar. Den exekverar sedan dessa instruktioner och rapporterar resultaten och skriver tillbaka dem till enhetens tillfälliga eller permanenta minne. Processorer formateras vanligtvis från början som antingen vektor eller skalär.
Grunderna i skalären
Skalära processorer är den mest grundläggande typen av processor. Dessa bearbetar vanligtvis bara ett objekt åt gången, vanligtvis heltal eller flyttal. Flyttal är tal som antingen är för stora eller små för att kunna representeras av heltal. Enligt det skalära systemet för beställningsinformation, hanteras varje instruktion sekventiellt. Som ett resultat kan skalär bearbetning ta lite tid.
Hur vektorprocessorer fungerar
Däremot arbetar vektorprocessorer typiskt på en rad datapunkter. Detta innebär att i stället för att hantera varje objekt individuellt kan flera objekt som alla har samma instruktion slutföras på en gång. Detta kan spara tid över skalär bearbetning, men ger också komplexiteten till ett system; detta kan och gör ofta långsammare andra funktioner. Vektorbearbetning fungerar vanligtvis bäst när det finns en stor mängd data som ska bearbetas. I dessa fall kan grupper av data och individuella datamängder hanteras av en instruktion.
Starttider
Vektor- och skalära processorer skiljer sig också åt i deras starttider. En vektorprocessor kräver ofta en långvarig start av datorn på grund av de många uppgifter som utförs. Skalära processorer, å andra sidan, tenderar att starta en dator på mycket kortare tid eftersom endast enstaka uppgifter utförs.
Att använda de två tillsammans
Alla datorsystem måste inte använda det ena framför det andra, och i vissa inställningar fungerar de två faktiskt tillsammans. Den superskalära processorn är ett exempel. Detta system tar element av varje typ och kombinerar dem för ännu snabbare bearbetning. Genom att använda parallellism på instruktionsnivå kan superskalär bearbetning utföra flera operationer samtidigt. Detta gör att CPU:n kan prestera på en mycket snabbare nivå än en grundläggande skalär processor, utan den extra komplexiteten och andra begränsningarna hos vektorsystemet.
Det kan dock finnas problem med denna typ av processor, eftersom den måste avgöra vilka uppgifter som kan utföras parallellt och vilka som är beroende av att andra uppgifter slutförs först. Fel i datatilldelningen leder ofta till krascher och andra fel.