Regarding SQL Server 2012 Microsoft changes the processor based licensing to core based licensing model. So far only pieces of information referred to the coming change, that not all the processors will be equal from a licensing perspective.
Microsoft now published the SQL Server Core Factor table. This is pretty much alike to Oracle’s and Microsoft’s practice, though the table is not that huge yet. There are two important rules to follow when counting the core licenses:
- Each physical processor (socket) needs at least 4 core licenses.
- Some AMD processors only require a 0.75 multiplier, because next to the same amount of cores they perform slightly weaker.
Similarly to other vendors this table will keep changing as well, as technology improves. To sustain appropriate licensing the follow-up of this information will be vital in future.
In case of physical processors cores – where SQL Server runs – simply need to be counted, then with the help of the Core Factor table the core license need can be calculated. Number of threads are not important in this case. Example: in two six-core Intel processors together there are 12 cores, which need 6 dual-core license packages, as core licenses can only be procured in pairs. If these two processors happen to be AMD processors, then 0.75 multiplier has to be applied, which then results in (12*0.75) 9 core licenses. If the result contains fraction, it has to be rounded up.
Table is not valid for virtual processors, because each virtual processor core (v-core) has to be licensed, at least 4 per each virtual machine. Each core, and thread of the physical processor counts as a v-core. Example: a six-core (two threads each) processor counts as 12 v-cores. In case of Enterprise edition, licensing all the physical cores can be still selected instead of licensing the virtual cores.