KB2928300 - CORRECTIF : la charge de travail intense de compilation des requêtes n’évolue pas avec le nombre croissant de cœurs sur le matériel NUMA et entraîne une saturation du processeur dans SQL Server

S’applique à
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Symptômes

Prenons le scénario suivant :

  • Vous utilisez une instance de Microsoft SQL Server 2012 ou SQL Server 2014 sur laquelle NUMA est activé.
  • SQL Server est configuré pour utiliser de nombreux cœurs de processeur sur plusieurs nœuds NUMA (par exemple, 4 nœuds NUMA dotés de 12 cœurs chacun).
  • Vous exécutez une charge de travail de compilation lourde qui génère un taux de compilation élevé à partir de plusieurs connexions simultanées.

Dans ce scénario, vous ne remarquez aucune augmentation des résultats d’une requête compilation/s avec un nombre croissant de cœurs disponibles au-delà de 12 environ. En outre, le processeur peut afficher une utilisation à 100 %.

Remarque : La gravité de la saturation du processeur dépend du nombre de cœurs par nœud NUMA et aussi de votre taux de compilation.

Cause

Le problème se produit car SQL Server utilise une structure de données qui peut contribuer aux modèles de conflit de processeur sur le matériel compatible NUMA sur des compilations simultanées.

Résolution

Une fois ce correctif appliqué, SQL Server remplace l’utilisation d’une structure partagée par des données thread-local.

Le problème a été résolu pour la première fois dans la mise à jour cumulative suivante de SQL Server.

Mise à jour cumulative 1 pour SQL Server 2012 SP2 /en-us/help/2976982

Mise à jour cumulative 2 pour SQL Server 2014 /en-us/help/2967546

Mise à jour cumulative 10 pour SQL Server 2012 SP1 /en-us/help/2954099

À propos des mises à jour cumulatives pour SQL Server

Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et tous les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :

      

Solution de contournement

Pour contourner le problème, réduisez le taux de compilation dans votre système SQL Server.

État

Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».