i will talk about aws.
aws has the concept of vCPU.
- when we launch instanch we launch vCPU.
- Behind the scenes aws has cores which are nothing but CPU.
- MUtiple threads run on one cpu ( muti threading)
- Each thread given to you is represented as vCPU
for ex m5.2xlarge is launched, you get 4 cpu(behind the scene), 2 threads per cpu which means 2*4 = vCPu.
everywherein aws you will see metric as vCPU. docs for reference
Note:- aws also gives you options to optimise these vCPu during launch of instance. you can reduce vCPU by either reducing no of cores ( to reduce license cost which cost on per core) or reducing no of threads per core ( to do high performing workloads)
ALso you cant predict which core will be assigned for our vCPU it depends on demand and supply of instances, however they are ways to reserve instance through reserve instances or capacity reservation