Direct answer
Two logical processors created by SMT or Hyper-Threading are not automatically equivalent to two separate physical cores. They share parts of the same core. A conventional Minecraft tick loop often benefits more from a faster physical core than from a larger advertised logical-thread count.
Inspect CPU topology
- On Linux, use
lscputo inspectCPU(s),Core(s) per socket,Thread(s) per coreand virtualization data. - Remember that a VPS may report virtual topology rather than the underlying hardware, and a hosting plan may impose CPU quotas.
- Measure
/spark tpsduring real play and capture/spark profiler start --timeout 120if supported. A single busy tick thread can coexist with low total CPU use.
When additional cores matter
Spare cores can serve chunk workers, asynchronous tasks, networking, garbage collection and other processes. Folia distributes independent region ticks, but dense players in one region can still concentrate load. Core count alone does not predict performance.
Version and safety notes
Hyper-Threading/SMT and reported physical-core topology differ by processor and hypervisor; do not assume vCPU counts map one-to-one to hardware.
Avoid misleading comparisons
Do not equate “16 vCPU” with “16 dedicated physical cores.” Compare allocation terms, sustained clock behavior and real-world high-percentile MSPT using the same server, plugin set and player activity. Do not pin threads or alter CPU affinity without a measured reason and a rollback path.
References
Check documentation for the versions and hosting environment you actually run.