CPU vs. vCPU: En sammenligning af fysiske og virtuelle CPU'er
Den væsentligste forskel mellem CPU’er og vCPU’er er, at CPU’er er fysiske, mens vCPU’er er en virtuel variant, der er baseret på software. De to typer centrale processorenheder adskiller sig også med hensyn til ydeevne og hvornår de bruges.
Forskellen 1: Teknologisk grundlag
Den afgørende forskel i sammenligningen mellem CPU og vCPU er af teknisk karakter. En CPU er et stykke computerhardware, der almindeligvis kaldes en ‘processor’. Moderne CPU’er har typisk flere kerner, som de kan fordele processer, der skal udføres, på.
En vCPU er derimod en softwarebaseret variant af en computerkontrolenhed. Den findes ikke i fysisk form, men er baseret på en fysisk CPU. Afhængigt af kravene kan der udledes flere vCPU’er fra en klassisk fysisk CPU. Selvom det ikke er muligt for en vCPU at være baseret på flere fysiske CPU’er, kan vCPU’en bruge flere kerner fra en fysisk CPU.
For at oprette og tildele vCPU’er til en virtuel maskine (VM) får hypervisorer adgang til de tilgængelige kerner eller tråde i fysiske processorer.
Forskellen 2: Ydeevne
Når det kommer til ydeevne, vil du bemærke en tydelig forskel i processorkraftkapaciteten mellem vCPU’er og CPU’er. Dette skyldes, at vCPU’er strengt taget er softwarebaserede underenheder af en CPU. Hvis du sammenligner en enkelt vCPU og en enkelt CPU med samme clockhastighed (gigahertz), er den virtualiserede variant ikke så kraftig som sin hardware-modstykke. Dette skyldes delvist, at koordinering med den fysiske CPU tager tid. Selvom den tid, dette tager, ofte er ubetydelig, bliver det mærkbart, når man udfører særligt krævende opgaver.
Derudover kan den fysiske CPU med sine underopdelte kerner og tråde behandle flere instruktioner eller processer direkte og samtidigt. For at kunne gøre dette skal vCPU’en suppleres med yderligere vCPU’er, hvilket kan ende med at blive ret problematisk. Med et stigende antal vCPU’er bliver det stadig mere kompliceret for CPU-planlæggeren at regulere tidspunkterne for udførelsen af forskellige processer. De resulterende ventetider betyder, at ydeevnen i det virtuelle CPU-netværk ikke kan udnyttes fuldt ud.
Forskellen 3: Anvendelsesområde
CPU’er er hjertet i den klassiske computer. Uden tilstrækkelig regnekraft ville pc’er ikke være i stand til at udføre en lang række opgaver såsom spil, streaming, billed- og videoredigering og beregninger. Fysiske CPU’er bruges også i mange andre hverdagsenheder såsom kaffemaskiner, opvaskemaskiner, køleskabe og selvfølgelig smartphones og andre mobile enheder.
vCPU’er fungerer som den centrale computerkomponent i virtualiserede miljøer. Der er også mange anvendelsesscenarier, når det gælder virtuelle maskiner med deres eget operativsystem. Testmiljøer og server-/applikationshosting såsom databaseservere, cloud-lagring og virtuelle private servere (VPS) er særligt populære. Her bliver det helt klart, at det ikke så meget handler om CPU kontra vCPU, men mere om, hvordan fysisk og virtualiseret computerkraft kan interagere med hinanden. Den underliggende fysiske CPU kan bruges som basis for flere virtualiserede miljøer, der kører samtidigt for flere brugere. Det er det, der gør vCPU’er så interessante for udbydere og dem, der bruger cloud-tjenester.
Hvordan konverteres CPU’er til vCPU’er?
Hvis du vil bruge din computers fysiske CPU til at levere vCPU’er til en eller flere virtuelle maskiner, kan følgende formel bruges til at beregne det omtrentlige antal vCPU’er, der kan leveres:
(Tråde x Kerner) x Antal fysiske CPU’er = Antal vCPU’er
Hvis du f.eks. har installeret en CPU med fire kerner og otte tråde, kan du levere op til 32 vCPU’er:
(8 tråde x 4 kerner) x 1 = 32 vCPU’er
Du kan til enhver tid finde ud af, hvor mange kerner og tråde din CPU har, ved blot at følge et par enkle trin. Hvis du arbejder på en Windows-pc, kan du følge disse trin:
- Brug tastkombinationen Ctrl + Shift + Esc for at åbne Task Manager.
- Klik på menuen Ydeevne.
- Her finder du en liste med oplysninger, hvor du kan se værdierne for kerner, logiske processorer (tråde) og sokler (fysiske CPU’er).

Hvis du bruger et Linux-operativsystem, kan du finde CPU-oplysningerne via terminalen ved at bruge følgende kommando:
lscpubash