Are You Using All Your CPU Cores

Are You Using All Your CPU Cores
Download PDF

We recently worked on a SQL Server Performance Assessment for a client and during that we assisted with the upgrade from SQL Server standard edition to SQL Server enterprise edition.

Part of the upgrade was an attempt to make use of more cores on the server. They were using Standard Edition of SQL Server which was fully utilizing 48 cores (the Standard Edition Limit), but they had 64 cores available on the server. For that reason (and some other reasons relating to memory) they chose to upgrade to Enterprise Edition.  After the upgrade, it turned out that they would be using less cores than they were with Standard Edition.

What, Why, How???

After the upgrade we found this message in the SQL Log at startup time.

Message
SQL Server detected 2 sockets with 16 cores per socket and 32 logical processors per socket, 64 total logical processors; using 40 logical processors based on SQL Server licensing. This is an informational message; no user action is required.

SQL Server Log

With SQL Server Enterprise Edition there are 2 licensing options:

  • Core based licensing
  • CAL based licensing.

If you are using CAL based licensing, you will see the message we saw based on not enough licenses. When the client downloaded their license key and install media, they grabbed the wrong one, and when we were given the media to install, we did not catch that it was the CAL based installer.

All we had to do to fix this was to download the Core based installer, enter the core based license key, finish the install, and restart the computer.  After that message shown in the SQL log at startup was the following showing full use of all cores.

Message
SQL Server detected 2 sockets with 16 cores per socket and 32 logical processors per socket, 64 total logical processors; using 64 logical processors based on SQL Server licensing. This is an informational message; no user action is required.

SQL Server Log

We immediately saw the benefit as all cores were being utilized, rather than 16 just sitting at 0% utilization.

If you are nowhere near full CPU utilization this may not effect you, but if you are constrained by CPU, be sure all your cores are being used.

 

More from Stedman Solutions:

SteveStedman5
Steve and the team at Stedman Solutions are here for all your SQL Server needs.
Contact us today for your free 30 minute consultation..
We are ready to help!

Leave a Reply

Your email address will not be published. Required fields are marked *

*