FIX: Portability and performance differ between Windows and Linux scheduler mappings in SQL Server 2017

Applies to: SQL Server 2017 Developer on WindowsSQL Server 2017 Enterprise on WindowsSQL Server 2017 Enterprise Core on Windows


When you use schedulers in instances of SQL Server 2017 to map to individual processors, portability and performance differ between a Windows-based system and a Linux-based system.


This problem may occur because SQL Server scheduler mappings to a physical core or logical-processor can differ between Windows and Linux implementations for the same underlying system if hyper-threading (HT) is turned on.

This condition affects portability and performance. In Windows, the two adjacent schedulers (even/odd) map to adjacent logical processors on the same core. In Linux, the schedulers may map to logical processors on two adjacent cores. This may unintentionally affect performance and the decision-making process for thread assignment to schedulers.


This fix is included in Cumulative Update 1 for SQL Server 2017.


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.


Learn about the terminology Microsoft uses to describe software updates.