Nach der Installation von SQL Server Enterprise 2012 mit dem Server + Cal-Lizenzmodell waren auf einem Computer mit 2 Prozessoren mit jeweils 16 Kernen (und ohne Hyperthreading) und einer extrem hohen Belastung des Servers die 16 Kerne des ersten Prozessors sehr wenig ausgelastet Die ersten 4 Kerne auf der 2. CPU waren stark ausgelastet, und die letzten 12 Kerne wurden überhaupt nicht verwendet (aufgrund des 20-Kern-Limits für diese SQL Server-Version). Die gesamte CPU-Auslastung lag bei rund 25%. Leider litt der Server unter einer extrem schlechten Leistung, obwohl die Aufgaben bei gleichmäßiger Verteilung auf die 20 Kerne nicht annähernd so schlecht gewesen wären.
Der Windows Server wurde auf einem virtuellen VMWare-Image unter ESX Server ausgeführt, aber die gesamte CPU wurde dem Windows Server zugewiesen.
Wir haben versucht, die Affinitätseinstellungen zu ändern (z. B. die meisten Kerne der CPU und die anderen der E / A zuzuweisen), aber das hat nicht zur Lösung der Leistungsprobleme beigetragen.
Durch das Upgrade der Produktversion auf SQL Server Enterprise Core 2012 konnte SQL Server nicht nur die 12 zuvor nicht verwendeten Kerne auf dem 2. Prozessor verwenden, sondern auch die Aufgaben auf alle Prozessoren verteilen. Um den Rückstand an Anfragen zu überwinden, stieg die CPU-Auslastung auf rund 90% und ging nach dem Aufholen auf rund 33% zurück. Die Leistung verbesserte sich jedoch dramatisch, da wir auf die neu aktualisierte Version umgestiegen sind. Die Leistungsprobleme verschwanden.
Ich habe mich gefragt, ob jemand weiß, was dazu führen kann, dass SQL Server die Last ungleichmäßig verteilt, wobei er sich fast ausschließlich auf die ersten 4 Kerne des 2. Prozessors mit 12 im Leerlauf befindlichen Kernen stützt und jedem der 16 Kerne des ersten nur wenige Aufgaben zuweist Prozessor. Gibt es auch eine Möglichkeit, die Last gleichmäßiger auf die 20 Kerne zu verteilen, die ohne das Upgrade der Product Edition verwendet wurden?
Die Kehrseite dieser Frage ist, was das Produkt-Upgrade bewirkt hat, das dazu geführt hat, dass SQL Server die Last gleichmäßig auf alle erkannten Kerne verteilt hat.
Vielen Dank für die Beantwortung dieser Fragen und / oder Links, die mir helfen könnten, besser zu verstehen, wie ich das Geschehen verstehen kann.