When you use the spatial data type and associated methods in Microsoft SQL Server 2012 or Microsoft SQL Sever 2014, the SQL Server Operating System (SQLOS) scheduler’s quantum targets are protected by the SQL Server CLR hosting layer. This protection involves preemptive, SQLOS switches may increase the CPU consumption. The reason for the preemptive switch is to protect the SQLOS scheduler. A call into a SQL Server CLR based implementation can take unspecified time without yielding to the SQLOS scheduler or changing the behavior and concurrency patterns. Therefore, the spatial data type is designed to switch preemptive during each invocation.
Note The spatial data type is based on SQL Server CLR, it may encounter various levels of .NET memory consumption and thread switching behavior.
The spatial data type methods executions are usually sub-millisecond and may not require the full SQL OS scheduler and preemptive protection. The overhead of switching to and from preemptive mode can be much larger than the execution of the spatial method itself.
Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.