AWS in May 2018 introduced a new feature which reduces license costs for running databases on EC2 . Te feature named ‘CPU Options’ allows customers to configure the number of vCPU’s for an EC2 instance. Instance types offered by AWS normally come as t-shirt size. There is a fixed ratio between the number of vCPUs, internal memory and network bandwidth. Databases are typically memory hungry but do not require many vCPUs. The costs for a license of SQL Server and Oracle database products are based on the number of vCPU’s configured in the virtual machine or instance.
Now customers can customize the number of vCPUs. Mind this is not possible using the AWS Management Console. Configuration of the number of vCPUs can only be done using the AWS Command Line Interface (CLI) or one of the AWS SDKs.
Also you can disable Intel Hyper-Threading Technology (Intel HT Technology) for workloads that perform well with single-threaded CPUs, like certain high-performance computing (HPC) applications.
Once the instance is running the number of vCPUs cannot be modified.
Customers do have to pay the full price for the instance even when it is running fewer number of vCPUs.
AWS has more information here and here.
Cost savings can be huge. TSO Logic reports in this blogpost:
One TSO Logic customer was using 1,356 licensed cores of SQL Server on-premise and wanted to bring their SQL license to AWS. Before the new Optimize CPUs feature, they would have had to use 2,220 cores (63% more) on AWS to meet their memory needs. Considering that the list price for Microsoft SQL Server is $14,000 per core, that fixed core count requirement would have meant a huge spike in their licensing costs—effectively making cloud a nonstarter for this workload.