Understanding Logical Processors
Logical processors subdivide a server's processing power to enable parallel processing. Shown here is a server with two physical processors with a view of how the OS recognizes the resulting logical processors.
A physical processor—also referred to as a CPU, a socket, or occasionally as a package—is a chip that is visible on a computer's circuit board. Most modern physical processors have two or more cores, which are independent processing units. Typical servers will have multiple physical processors with at least four or as many as 10 cores in each.
A logical processor is perceived by Windows as a processor, and each logical processor is capable of executing its own stream of instructions simultaneously, to which the OS can in turn assign simultaneous independent units of work. Windows Server enables each core to appear as a logical processor, so the server shown here, which has two quad-core physical processors, can have eight logical processors. Some processors support a technology called symmetric multithreading (which Intel calls "hyperthreading"), which enables a core to execute two independent instruction streams simultaneously. If the technology were enabled here, the result would be 16 logical processors.
While SQL Server 2012 offers licensing that is per-core, that licensing is based on physical cores. The number of logical cores is irrelevant to the per-core licensing costs when licensing physical servers, and instead only plays a role in the number of logical processors that Windows and SQL Server can technically support.
Virtual machines (VMs) are licensed based on the concept of a "virtual core," which is a processor as viewed by the VM guest OS. Logical processors have a potential effect in their licensing, as Microsoft has stated that assigning a virtual core to more than one thread at a time (two or more logical processors) or assigning a logical processor to more than one virtual core at a time may incur additional core license charges.