8 ms·
"CPU" is commonly used in operating systems to describe any logical processor, no matter if it is a thread from a core for processors that implement simultaneou
by _msw_ 9y ago
"CPU" is commonly used in operating systems to describe any logical processor, no matter if it is a thread from a core for processors that implement simultaneous multithreading (like Intel Hyper-Threading Technology). vCPU is the same concept, it's a logical unit of execution.
Since Intel processors have HTT and many workloads benefit from it, it makes sense to map the underlying physical execution units 1:1 as vCPUs. For c5.18xlarge, all of the logical processors of the system (72 threads on 36 cores) are provided as vCPUs.
If a workload does not scale well with threads, you can essentially turn them off by disabling CPUs in the OS, like maxcpus=(vcpus/2) for Linux based OSes. (e.g., maxcpus=36 for c5.18xlarge).