vCPUs are virtualized versions of physical CPUs and are an integral part of cloud computing. One of the advantages of these virtualized computing units is their excellent scalability, which is why they play an important role in cloud hosting in particular.
What is a vCPU?¶
A vCPU (for Virtual Central Processing Unit) is the variant virtualized from a CPU physical. In other words, vCPUs are the central control units of virtual machines (VMs) and cloud environments. Current multi-core processors (multi-core in English) can be used not only as a single vCPU, but also as a basis for multiple virtual CPUs. The number of potential vCPUs is not related to the number of cores and threads (see our article dedicated to multithreading), but rather to the result of the following calculation:
(threads x cores) x physical CPU = number of vCPUs
From a technical point of view, vCPUs are software representations of physical processors, interpreted by the operating system as real processor cores. Each virtual machine requires at least one vCPU. However, depending on application scenarios and workloads, multiple virtual processing units can be assigned to meet the required needs.
What are the benefits of vCPUs?¶
Virtual CPUs have multiple decisive advantages compared to physical CPUs. The main advantages are:
- increased scalability
- better efficiency
- improved flexibility
- reduced costs
The great strength of virtualization is the excellent scalability of its hardware resources: the vCPUs used in a virtual machine can for example come from several different physical hosts. This allows processor power to easily scale as the workload increases.
When vCPUs are no longer needed, they can also simply be used for other virtual machines. This benefit is particularly valuable to hosting service providers, as it enables efficient distribution of the underlying infrastructure among customers. As a user, you benefit from the possibility of flexibly adapting the vCPU requirement : Since there is no fixed hardware configuration, it is easier to switch to a higher or lower processor power for solutions such as a cloud server or a VPS.
In terms of costs, the advantage of vCPU lies in its efficiency and scalability. On the basis of a single host system, it is possible to run several operating systems, including the corresponding application software. The available computing power is thus used optimally, which in many cases makes it possible tosave additional material.
Where are vCPUs used?¶
vCPUs are essential for the proper functioning of cloud computing. Everywhere that hardware and software are made available in the cloud, virtual compute units must be used. This is therefore for example the case for cloud storages, cloud server hosting or even when using a cloud PC with Windows 365. The number of vCPUs required depends on the workload: in many scenarios , one or two vCPUs are sufficient; for more demanding workloads, for example for a database, mail or game serverthe requirements are higher.
Another virtualization technology that depends on vCPUs is container platforms like Docker. Unlike virtual machines, not entire systems are virtualized here, but only individual applications.
How to calculate vCPU requirements?
For’make the best use of its power, the big challenge in a virtualized environment is to provide enough vCPUs without wasting computing power. If you are faced with the task of defining the number of vCPUs needed for your application, you can basically point to the same requirements as for installation on physical hardware : If the software (not to mention the operating system) requires for example eight physical cores, you should generally also assign eight vCPUs to the virtual environment.
Later, if the requirements increase because you are running other applications in parallel or because the project becomes more complex, you just need to increase the number of vCPUs. The same applies in the opposite case, i.e. when the requirements decrease and you therefore need less computing power.
For the demanding workloads, however, it is essential that the vCPUs are assigned to different physical CPUs. For example, if you have hardware with a dual-core CPU (2 physical cores and 4 logical cores) as a starting point, you should distribute the four logical cores as follows to optimize performance:
- assign logical core 0 and logical core 2 to the first virtual machine. This corresponds to the first core of the physical CPU installed. The resources thus made available should be sufficient to be able to carry out the workload.
- Use logical core 1 and logical core 3, i.e. the second CPU core, for a second virtual machine with less demanding workloads, for example: with a DNS server.
Do you want to deepen your knowledge of CPU processors? Check out the following articles: