When you’re downloading SQL Server, it’s important to choose Enterprise Core, not Enterprise. The plain “Enterprise” one is limited to just 20 CPU cores.
But let’s say you didn’t know that, and you waltzed over to the download page. There are two Enterprises listed, and it’s not really clear what the differences are between the two:
If you click the “Info” link on the Enterprise version, there are no hints to indicate what’s about to happen. But if you download that SQL Server Enterprise one, install it, and then look in the error log after startup, there’s a tiny message hidden in a sea of text:
You see it right there? No? Of course you don’t. ENHANCE!
THAT IS NOT WHAT I CALL ENHANCED!
SQL Server is only using 20 physical CPU cores, no matter how big your machine is. For example, here’s a 128-core VM where this “Enterprise Edition” was installed:
This is especially problematic when the DBAs are seeing tons of SOS_SCHEDULER_YIELD waits, indicating there’s massive CPU pressure, but the sysadmins are saying, “The server’s only 31% busy. Must be a SQL Server problem.” And technically…it is.
This gets better in SQL Server 2019.
If you try to install the plain “Enterprise” version on a big box, you get a warning:
I would argue that the warning is hidden in a small sea of text that a lot of people are going to skip, but still, it’s better than what we had before. Plus, the warning comes up again later during the install:
And if you click on the Warning hyperlink:
Yay! That’s a great improvement.