Today, we are announcing General Availability of two new capabilities: Disable Simultaneous Multithreading/Hyper-Threading (SMT/HT) and Configurable Constrained Cores. These features give customers control over virtual CPU configurations, enabling performance optimization and potential software licensing savings across a wide range of workloads.
What’s New:
- Disable Simultaneous Multi-Threading/Hyper-Threading (SMT/HT Off): Configure supported VMs to run with one thread per physical core, giving workloads improved performance and latency consistency.
- Custom vCPU Counts through Configurable Constrained Cores: Choose from a guided list of valid vCPU counts per VM size to match licensing rights or workload needs without changing memory, storage, or I/O capabilities.
Why It Matters:
The CPU options allow customers to tailor VM compute resources to their workload needs, improving both performance and cost efficiency. Performance-sensitive applications can leverage full-core isolation by disabling SMT/HT, while workloads such as SQL Server, Oracle, and SAP can reduce licensing costs by selecting the required vCPUs while maintaining the memory and bandwidth of larger VM sizes. The result is greater flexibility, simplified compliance, and lower total cost of ownership.
“I’m really excited about the new Configurable Constrained Cores feature in Azure! Being able to run SQL Server on a larger memory and I/O footprint while only licensing the exact number of cores you need is a game-changer for right-sizing workloads and controlling costs without sacrificing performance.” – Tim Radney, Data Platform MVP
Getting Started:
Disable SMT/HT and Configurable Constrained Cores are available in all Azure regions. Disable SMT/HT is supported on any VM series that has SMT/HT enabled by default. It is not applicable to VM families that have SMT/HT disabled by default.
Refer to VM vCore Customization documentation to learn more and steps on getting started.
Pricing:
There are no VM pricing changes for these two features. Customers will be billed for the number of vCPUs defined in the original VM specification, not the number of threads of constrained vCPUs.

