Hovedforskjellen mellom CPU-er og vCPU-er er at CPU-er er fysiske, mens vCPU-er er en virtuell variant som er basert på programvare. De to typene sentrale prosessorenheter skiller seg også fra hverandre når det gjelder ytelse og når de brukes.

Forskjell 1: Teknologisk grunnlag

Den avgjørende forskjellen mellom CPU og vCPU er av teknisk art. En CPU er en del av datamaskinens maskinvare som ofte kalles «prosessor». Moderne CPU-er har vanligvis flere kjerner, som de kan fordele prosesser som må utføres mellom.

En vCPU er derimot en programvarebasert variant av en datamaskinens kontrollenhet. Den eksisterer ikke i fysisk form, men er basert på en fysisk CPU. Avhengig av behovene kan flere vCPU-er avledes fra en klassisk fysisk CPU. Selv om det ikke er mulig for en vCPU å være basert på flere fysiske CPU-er, kan vCPU-en bruke flere kjerner i en fysisk CPU.

For å opprette og tilordne vCPU-er til en virtuell maskin (VM), får hypervisorer tilgang til kjernene eller trådene til fysiske prosessorer som er tilgjengelige.

Forskjell 2: Ytelse

Når det gjelder ytelse, vil du merke en tydelig forskjell i prosessorkapasiteten til vCPU-er og CPU-er. Dette skyldes at vCPU-er strengt tatt er programvarebaserte underenheter av en CPU. Hvis du sammenligner en enkelt vCPU og en enkelt CPU med samme klokkehastighet (gigahertz), er den virtualiserte varianten ikke like kraftig som sin maskinvaremessige motpart. Dette skyldes delvis at koordinering med den fysiske CPU-en tar tid. Selv om tiden dette tar ofte er ubetydelig, blir det merkbart når man utfører spesielt krevende oppgaver.

I tillegg kan den fysiske CPU-en med sine underdelte kjerner og tråder behandle flere instruksjoner eller prosesser direkte og samtidig. For å kunne gjøre dette må vCPU-en suppleres med flere vCPU-er, noe som kan være ganske problematisk. Med et økende antall vCPU-er blir det stadig mer komplisert for CPU-planleggeren å regulere kjøretiden for ulike prosesser. De resulterende ventetidene betyr at ytelsen til det virtuelle CPU-nettverket ikke kan utnyttes til sitt fulle potensial.

Forskjell 3: Anvendelsesområde

CPU-er er hjertet i den klassiske datamaskinen. Uten tilstrekkelig datakraft ville PC-er ikke kunne utføre en rekke oppgaver som spill, streaming, bilde- og videoredigering og beregninger. Fysiske CPU-er brukes også i mange andre hverdagsapparater som kaffemaskiner, oppvaskmaskiner, kjøleskap og, selvfølgelig, smarttelefoner og andre mobile enheter.

vCPU-er fungerer som den sentrale databehandlingskomponenten i virtualiserte miljøer. Det finnes også mange bruksscenarier når det gjelder virtuelle maskiner med eget operativsystem. Testmiljøer og server-/applikasjonshosting som databaseservere, skylagring og virtuelle private servere (VPS) er spesielt populære. Her blir det ganske klart at det ikke handler så mye om CPU vs. vCPU, men mer om hvordan fysisk og virtualisert datakraft kan samhandle med hverandre. Den underliggende fysiske CPU-en kan brukes som basis for flere virtualiserte miljøer som kjører samtidig for flere brukere. Dette er det som gjør vCPU-er så interessante for leverandører og de som bruker skytjenester.

Hvordan konverteres CPU-er til vCPU-er?

Hvis du vil bruke den fysiske CPU-en på datamaskinen din til å levere vCPU-er til en eller flere virtuelle maskiner, kan følgende formel brukes til å beregne antallet vCPU-er som kan leveres:

(Tråder x kjerner) x antall fysiske CPU-er = antall vCPU-er

Hvis du for eksempel har installert en CPU med fire kjerner og åtte tråder, kan du tilby opptil 32 vCPU-er:

(8 tråder x 4 kjerner) x 1 = 32 vCPU-er

Du kan når som helst finne ut antall kjerner og tråder CPU-en din har ved å følge noen få enkle trinn. Hvis du bruker en Windows-PC, kan du gjøre følgende:

  1. Bruk tastkombinasjonen Ctrl + Shift + Esc for å åpne Oppgavebehandling.
  2. Klikk på menyen Ytelse.
  3. Der finner du en liste med informasjon hvor du finner verdiene for kjerner, logiske prosessorer (tråder) og sokler (fysiske CPU-er).
Image: Windows Task Manager: CPU information
Windows Task Manager: CPU information

Hvis du bruker et Linux-operativsystem, kan du finne ut CPU-informasjonen via terminalen og ved å bruke følgende kommando:

lscpu
bash
Go to Main Menu