CPU vs. vCPU: füüsiliste ja virtuaalsete CPUde võrdlus
Peamine erinevus CPU-de ja vCPU-de vahel on see, et CPU-d on füüsilised, samas kui vCPU-d on tarkvaral põhinevad virtuaalsed variandid. Need kaks tüüpi keskprotsessorid erinevad ka jõudluse ja kasutusala poolest.
Erinevus 1: Tehnoloogiline alus
CPU ja vCPU võrdluse oluline erinevus on tehniline. CPU on arvuti riistvara osa, mida tavaliselt nimetatakse „protsessoriks”. Kaasaegsetel CPU-del on tavaliselt mitu tuuma, mille vahel nad saavad jaotada täitmisele kuuluvad protsessid.
VCPU on aga arvuti juhtimismooduli tarkvarapõhine variant. See ei eksisteeri füüsilises vormis, vaid põhineb füüsilisel CPU-l. Sõltuvalt nõuetest võib klassikalisest füüsilisest CPU-st tuletada mitu vCPU-d. Kuigi vCPU ei saa põhinevad mitmel füüsilisel CPU-l, võib vCPU kasutada füüsilise CPU mitut tuuma.
Virtuaalmasinale (VM) vCPU-de loomiseks ja määramiseks kasutavad hüperviisorid füüsiliste protsessorite kättesaadavaid tuumasid või niite.
Erinevus 2: Jõudlus
Jõudluse osas märkate selget erinevust vCPU-de ja CPU-de töötlemisvõimsuses. See tuleneb asjaolust, et vCPU-d on rangelt võttes CPU tarkvarapõhised alarühmad. Kui võrrelda ühte vCPU-d ja ühte CPU-d sama taktsagedusega (gigaherts), ei ole virtualiseeritud variant nii võimas kui selle riistvaraline vaste. See on osaliselt tingitud asjaolust, et füüsilise CPU-ga koordineerimine võtab aega. Kuigi selleks kuluv aeg on sageli tühine, muutub see märgatavaks eriti nõudlike ülesannete täitmisel.
Lisaks sellele suudab füüsiline CPU oma alajaotatud tuumade ja niitidega töödelda mitut käsku või protsessi otse ja samaaegselt. Selleks tuleks vCPU-d täiendada täiendavate vCPU-dega, mis võib osutuda üsna problemaatiliseks. vCPU-de arvu suurenemisega muutub erinevate protsesside täitmise aja reguleerimine CPU-planeerija jaoks üha keerulisemaks. Selle tulemuseks olevad ooteajad tähendavad, et virtuaalse CPU-võrgu jõudlust ei saa täielikult ära kasutada.
Erinevus 3: Rakendusala
Protsessorid on klassikalise arvuti süda. Ilma piisava arvutusvõimsuseta ei suudaks personaalarvutid täita mitmesuguseid ülesandeid, nagu mängimine, voogesitus, piltide ja videote redigeerimine ning arvutused. Füüsilisi protsessoreid kasutatakse ka paljudes teistes igapäevastes seadmetes, nagu kohvimasinad, nõudepesumasinad, külmikud ja loomulikult nutitelefonid ja muud mobiilseadmed.
vCPU-d täidavad virtualiseeritud keskkondades keskse arvutuskomponendi rolli. Mitmed kasutusstsenaariumid on kaetud ka virtuaalmasinate puhul, millel on oma operatsioonisüsteem. Eriti populaarsed on testimiskeskkonnad ja serverite/rakenduste hostimine, nagu andmebaasiserverid, pilvesalvestus ja virtuaalsed eraserverid (VPS). Siin saab selgeks, et tegemist ei ole niivõrd CPU vs. vCPU küsimusega, vaid pigem sellega, kuidas füüsiline ja virtualiseeritud arvutusvõimsus omavahel suhelda saavad. Aluseks olevat füüsilist CPU-d saab kasutada mitme virtualiseeritud keskkonna alusena, mis töötavad samaaegselt mitme kasutaja jaoks. See teeb vCPU-d nii huvitavaks teenusepakkujate ja pilveteenuste kasutajate jaoks.
Kuidas CPU-d teisendatakse vCPU-deks?
Kui soovite kasutada oma arvuti füüsilist CPU-d ühe või mitme virtuaalmasina jaoks vCPU-de pakkumiseks, saab järgmise valemi abil ligikaudselt arvutada pakutavate vCPU-de arvu:
(niidid x tuumad) x füüsiliste CPU-de arv = vCPU-de arv
Näiteks, kui olete installinud neljatuumalise ja kaheksa niidiga CPU, saate pakkuda kuni 32 vCPU-d:
(8 niiti x 4 tuuma) x 1 = 32 vCPU-d
Saate oma CPU tuumade ja niitide arvu igal ajal vaid mõne sammuga teada saada. Kui kasutate Windows-arvutit, võite teha järgmised sammud:
- Ava ülesannete haldur klahvikombinatsiooniga Ctrl + Shift + Esc.
- Klõpsake menüüd „Performance” (Jõudlus).
- Sealt leiate loendi, kus on esitatud tuumade, loogiliste protsessorite (niidid) ja pesade (füüsilised CPU-d) väärtused.

Kui kasutate Linuxi operatsioonisüsteemi, saate CPU teavet leida terminali kaudu ja järgmise käsuga:
lscpubash