MSSQLSERVER_17890MSSQLSERVER_17890

S’applique à :Applies to: ouiSQL ServerSQL Server (toutes les versions prises en charge) yesSQL ServerSQL Server (all supported versions) S’applique à :Applies to: ouiSQL ServerSQL Server (toutes les versions prises en charge) yesSQL ServerSQL Server (all supported versions)

DétailsDetails

AttributAttribute ValeurValue
Nom du produitProduct Name SQL ServerSQL Server
ID de l’événementEvent ID 1789017890
Source de l’événementEvent Source MSSQLSERVERMSSQLSERVER
ComposantComponent SQLEngineSQLEngine
Nom symboliqueSymbolic Name SRV_WS_TRIMMEDSRV_WS_TRIMMED
Texte du messageMessage Text Une partie significative de la mémoire du processus SQL Server a été hors page. Ce problème peut entraîner une dégradation des performances.A significant part of SQL Server process memory has been paged out. This may result in a performance degradation. Durée : %d secondes.Duration: %d seconds. Plage de travail (en Ko) : %I64d, validé (en Ko) : %I64d, utilisation de la mémoire : %d%%.Working set (KB): %I64d, committed (KB): %I64d, memory utilization: %d%%.

ExplicationExplanation

Vous pouvez rencontrer le message d’erreur suivant dans le journal des erreurs SQL ServerSQL Server ou dans le journal des événements de l’application Windows.You might encounter the following error message in the SQL ServerSQL Server error log or the Windows Application event log.

Une partie significative de la mémoire du processus SQL Server a été hors page. Ce problème peut entraîner une dégradation des performances.A significant part of SQL Server process memory has been paged out. This may result in a performance degradation. Durée : 0 secondes.Duration: 0 seconds. Plage de travail (ko) : 3383250, validée (ko) : 9112480, pourcentage d’utilisation de la mémoire : 37 %.Working set (KB): 3383250, committed (KB): 9112480, memory utilization: 37%.

Vous pouvez également remarquer une dégradation soudaine des performances avec l’exécution de la requête et toutes les autres opérations sur SQL Server.You might also notice a sudden performance degradation with query execution and all other operations on the SQL Server.

CauseCause

SQL ServerSQL Server analyse les diverses informations sur les mémoires relatives au processus de SQL ServerSQL Server.monitors the various memories related information about the SQL ServerSQL Server process. Dans ce cas, il a détecté que la plage de travail du processus était inférieure à 50 % de la mémoire processus allouée.In this case, it has detected that the working set of the process is less than 50% of the committed process memory. Par conséquent, cet avertissement est imprimé.As a result this warning is printed. Les causes habituelles de cet avertissement sont les suivantes :The normal causes of this warning are:

  • Le système d’exploitation pagine de grandes parties de la mémoire allouée SQL ServerSQL Server au fichier d’échange.The operating system pages out large portions of the SQL ServerSQL Server committed memory to the paging file.
  • Cela peut être dû à une demande croissante soudaine de mémoire provenant d’autres applications ou des besoins du système d’exploitation.This could be due to sudden increased demand for memory from other applications or operating system needs.
  • Cela peut également se produire lorsque certains pilotes de périphérique demandent des allocations de mémoire contiguës pour leurs besoins.This could also happen when certain device drivers request contiguous memory allocations for their needs.

Action requiseUser action

Vous pouvez empêcher le système d’exploitation Windows de paginer la mémoire du pool de mémoires tampons du processus SQL ServerSQL Server en verrouillant la mémoire allouée pour le pool de mémoires tampons dans la mémoire physique.You can prevent the Windows operating system from paging out the buffer pool memory of the SQL ServerSQL Server process by locking the memory that is allocated for the buffer pool in physical memory. Vous verrouillez la mémoire en affectant le droit utilisateur Verrouiller les pages en mémoire au compte d’utilisateur utilisé comme compte de démarrage du service SQL ServerSQL Server.You lock the memory by assigning the Lock pages in memory user right to the user account that is used as the startup account of the SQL ServerSQL Server service. Mais avant d’implémenter cette solution, passez en revue les sections Ce qui entraîne la pagination de la mémoire de SQL Server et Considérations importantes avant d’attribuer le droit utilisateur « Verrouiller les pages en mémoire » pour une instance SQL ServerBut before you implement this solution, review the sections What causes SQL Server memory to be paged out and Important considerations before you assign the "Lock pages in memory" user right for an instance of SQL Server

Notes

L’utilisation de Verrouiller les pages en mémoire garantit que la mémoire gérée par SQL ServerSQL Server n’est pas paginée. Toutefois, les piles de threads, l’EXE et les images DLL, la mémoire du tas et la mémoire CLR peuvent toujours être paginées par le système d’exploitation.Using Lock Pages in Memory ensure that the memory managed by SQL ServerSQL Server is not paged out. However, thread stacks, the EXE and any DLL images, heap memory, CLR memory can still be paged out by the OS.

À compter de la mise à jour cumulative 2 de SQL ServerSQL Server 2008 SP1, les éditions SQL ServerSQL Server Standard et Enterprise peuvent toutes deux utiliser le droit utilisateur Verrouiller les pages en mémoire.Starting with SQL ServerSQL Server 2008 SP1 Cumulative Update 2, both SQL ServerSQL Server Standard and Enterprise editions can use the Lock pages in memory user right. Pour plus d’informations sur la prise en charge des pages verrouillées, consultez KB970070 - Prise en charge des pages verrouillées sur les systèmes SQL Server Standard Edition (64 bits).For more information about support for locked pages, view KB970070 - Support for Locked Pages on SQL Server Standard Edition (64-bit) systems.

Pour affecter le droit utilisateur Verrouiller les pages en mémoire, procédez comme suit :To assign the Lock pages in memory user right, follow these steps:

  1. Cliquez sur Démarrer, puis Exécuter, tapez gpedit.msc et cliquez sur OK.Click Start, click Run, type gpedit.msc, and then click OK.
  2. Notez que la boîte de dialogue Stratégie de groupe s’affiche.Note The Group Policy dialog box appears.
  3. Développez Configuration ordinateur, puis développez Paramètres Windows.Expand Computer Configuration, and then expand Windows Settings.
  4. Développez Paramètres de sécurité, puis Stratégies locales.Expand Security Settings, and then expand Local Policies.
  5. Cliquez sur Affectation des droits de l’utilisateur, puis double-cliquez sur Verrouiller les pages en mémoire.Click User Rights Assignment, and then double-click Lock pages in memory.
  6. Dans la boîte de dialogue Paramètres de stratégie de sécurité locale, cliquez sur Ajouter un utilisateur ou Ajouter un groupe.In the Local Security Policy Setting dialog box, click Add User or Group.
  7. Dans la boîte de dialogue Sélectionner des utilisateurs ou Sélectionner des groupes, ajoutez le compte qui a l’autorisation d’exécuter le fichier sqlservr.exe, puis cliquez sur OK.In the Select Users or Groups dialog box, add the account that has permission to run the Sqlservr.exe file, and then click OK.
  8. Fermez la boîte de dialogue Stratégie de groupe.Close the Group Policy dialog box.
  9. Redémarrez le service SQL ServerSQL Server .Restart the SQL ServerSQL Server service.

Une fois que vous avez affecté le droit utilisateur Verrouiller les pages en mémoire et que vous redémarrez le service SQL ServerSQL Server, le système d’exploitation Windows ne met plus en page la mémoire du pool de mémoires tampons au sein du processus SQL ServerSQL Server.After you assign the Lock pages in memory user right and you restart the SQL ServerSQL Server service, the Windows operating system no longer pages out the buffer pool memory within the SQL ServerSQL Server process. Toutefois, le système d’exploitation Windows peut toujours paginer la mémoire du pool hors tampon au sein du processus SQL ServerSQL Server.However, the Windows operating system can still page out the nonbuffer pool memory within the SQL ServerSQL Server process.

Vous pouvez vérifier que le droit utilisateur est utilisé par l’instance de SQL ServerSQL Server en vous assurant que le message suivant est écrit dans le journal des erreurs SQL ServerSQL Server au démarrage : « Utilisation de pages verrouillées pour le pool de mémoires tampons »You can validate that the user right is used by the instance of SQL ServerSQL Server by making sure that the following message is written in the SQL ServerSQL Server Error Log at startup: "Using locked pages for buffer pool"

Ce message s’applique uniquement à SQL Server.This message applies only to SQL Server. Pour plus d’informations sur ce message dans le journal des erreurs, consultez les rubriques suivantes : Dois-je attribuer le privilège Verrouiller les pages pour la mémoire dans le système localFor more information about this message in the ERRORLOG, visit the following: Do I have to assign the Lock pages for Memory privilege in Local System

Quand le système d’exploitation Windows pagine la mémoire du pool hors tampon, vous pourriez toujours rencontrer des problèmes de performances.When the Windows operating system pages out the nonbuffer pool memory, you may still encounter performance issues. Toutefois, les messages d’erreur mentionnés dans la section « Explication » ne sont pas consignés dans le journal des erreurs SQL ServerSQL Server.However, the error messages that are mentioned in the "Explanation" section are not logged in the SQL ServerSQL Server error log.

Ce qui entraîne la pagination de la mémoire de SQL ServerWhat causes SQL Server memory to be paged out

Trois grandes catégories de causes peuvent être à l’origine de ce problème :There are three broad categories of problems that can cause this issue:

  • Problèmes liés aux applications : Toutes les applications ont épuisé la mémoire physique disponible et le système d’exploitation doit libérer de la mémoire pour les nouvelles demandes d’application pour les ressources.Application-Related Issues: All applications together have exhausted the available physical memory and the OS must free some memory for new application requests for resources. En règle générale, l’approche consiste à rechercher les applications qui épuisent la mémoire et à prendre les mesures nécessaires pour équilibrer la mémoire entre elles sans conduire à l’épuisement de la RAM.Typically, the approach here is to find what applications are exhausting the memory and take necessary steps to balance the memory among them without leading to RAM exhaustion.
  • Problèmes liés aux pilotes de périphérique : Les pilotes de périphériques peuvent provoquer la pagination de tous les processus de la plage de travail si le pilote appelle une fonction d’allocation mémoire de manière incorrecte.Device Driver Issues: Device Drivers may cause working set paging of all processes if the driver calls a memory allocation function incorrectly.
  • Problèmes liés au système d’exploitationOperation System Issues

Vous trouverez ci-dessous des informations sur chacune de ces catégoriesBelow, you can find information on each of these categories

  • Problèmes liés aux applications : Ensemble, les applications peuvent consommer toute la RAM du système.Application-Related issues: Applications together may consume all of the RAM on the system. Si de nouvelles demandes de mémoire sont effectuées, le système d’exploitation tente de les satisfaire, et s’il n’y a pas de mémoire disponible, il supprime la plage de travail des applications en cours d’exécution pour répondre aux demandes de mémoire.If new requests for memory are made, the OS attempts to satisfy them and if there is no free memory, it will trim the working set of running applications to satisfy the memory requests. Dans ce cas, vous pouvez observer que la plage de travail de la plupart des applications (voire toutes) chute de manière significative.In such cases, you may observe that the working set for most if not all applications drop significantly. Pour ce faire, collectez le compteur de l’analyseur de performances suivant pour toutes les applications sur le système :To observe this, collect the following Performance Monitor counter for all applications on the system:

    • Objet de performance : ProcessPerformance object: Process
    • Compteur : Plage de travailCounter: Working Set

    En outre, surveillez le compteur suivant pour mettre en corrélation la quantité de mémoire physique disponible sur le système.Also, monitor the following counter to correlate how much physical memory is available on the system.

    • Objet de performance : MémoirePerformance object: Memory
    • Compteur : Mémoire disponible (Mo)Counter: Available Memory (MB)

    Le comportement classique que vous pouvez observer à la fois la réduction de la mémoire disponible à un niveau proche de 0 Mo et une chute soudaine des compteurs de la plage de travail pour la plupart des processus (voire tous) sur le système.The typical behavior that you may observe is reduction of Available memory close to 0 MB while at the same time a sudden drop of the Working Set counters for most (all) processes on the system. Si vous observez un tel comportement, vous devrez peut-être prendre des mesures pour réduire l’utilisation de la mémoire sur le système, ce qui comprend, par exemple, la réduction de la mémoire maximale du serveur pour SQL Server.If you observe such behavior, you may need to take steps to reduce memory usage on the system, which includes for example reducing Max Server Memory for SQL Server.

    Les applications peuvent également trop utiliser le cache du système, ce qui peut entraîner une croissance importante du cache système.Applications may also use the system cache too much, and may cause a large growth of the system cache. Pour répondre à la croissance de la mémoire cache du système, le système pagine la plage de travail du processus SQL ServerSQL Server ou d’autres applications.To respond to the growth of the system cache, the system pages out the working set of the SQL ServerSQL Server process or of other applications. Si vous rencontrez ce problème, vous pouvez utiliser certaines fonctions de gestion de la mémoire dans l’application.If you experience this problem, you can use some memory management functions in the application. Ces fonctions contrôlent l’espace de la mémoire cache du système que les opérations d’E/S de fichiers peuvent utiliser dans l’application.These functions control the system cache space that file I/O operations can use in the application. Par exemple, vous pouvez utiliser la fonction SetSystemFileCacheSize et la fonction GetSystemFileCacheSize pour contrôler l’espace de la mémoire cache du système que les opérations d’E/S de fichier peuvent utiliser.For example, you can use the SetSystemFileCacheSize function and the GetSystemFileCacheSize function to control the system cache space that file I/O operations can use.

    Vous pouvez utiliser l’objet de performance mémoire pour afficher les valeurs de différents compteurs dans cet objet afin de déterminer si la plage de travail du cache système utilise trop de mémoire.You can use the Memory performance object to view the values of various counters in this object to determine whether the system cache working set uses too much memory. Par exemple, vous pouvez afficher les compteurs Octets du cache et Octets résidents du cache système.For example, you can view the Cache Bytes and System Cache Resident Bytes counters. Pour plus d’informations sur cette rubrique, consultez :For more information about this topic, see:

    Vous pouvez télécharger et déployer le « Service de cache dynamique Microsoft Windows » pour contrôler la mémoire consommée par le cache système.You can download and deploy the "Microsoft Windows Dynamic Cache Service" to control the memory that is consumed by the system cache.

  • Problèmes de pilote de périphérique : Si un pilote de périphérique utilise la fonction MmAllocateContiguousMemory et qu’il définit la valeur du paramètre HighestAcceptableAddress sur une valeur inférieure à 4 gigaoctets (Go), le système d’exploitation Windows peut paginer la plage de travail des processus sur le système, y compris le processus SQL ServerSQL Server.Device Driver Issues: If a device driver uses the MmAllocateContiguousMemory function, and if it sets the value of the HighestAcceptableAddress parameter to less than 4 gigabytes (GB), the Windows operating system may page out the working set of the processes on the system including SQL ServerSQL Server process. Pour résoudre ce problème, contactez le fournisseur du pilote de périphérique pour les mises à jour des pilotes.To resolve this problem, contact the vendor of the device driver for driver updates.

    Lorsqu’un pilote de périphérique tente d’allouer de la mémoire, le système d’exploitation Windows peut paginer le jeu de travail d’autres applications.When a device driver tries to allocate memory, the Windows operating system may page out the working set of other applications. Ce correctif logiciel Windows vous permet d’utiliser le suivi des événements pour rechercher le pilote de périphérique à l’origine du problème.This Windows hotfix lets you use event tracing to find the device driver that causes problem. Pour obtenir plus d’informations sur le pilote spécifique qui provoque le comportement de réduction de la plage de travail, consultez Identification des pilotes qui allouent de la mémoire contiguë.To find more information about the specific driver that causes the working set trimming behavior, see Identifying Drivers That Allocate Contiguous Memory.

  • Problèmes liés au système d’exploitation : Pour résoudre les problèmes connus qui obligent le système d’exploitation Windows à paginer la plage de travail du processus SQL ServerSQL Server, appliquez les correctifs logiciels décrits dans les articles suivants de la base de connaissances Microsoft.Operating System Issues: To resolve the known issues that cause the Windows operating system to page out the working set of the SQL ServerSQL Server process, apply the hotfixes that are described in the following Microsoft Knowledge Base articles.

    Notes

    Les correctifs sont cumulatifs.Hotfixes are cumulative. Une version ultérieure d’un correctif contient les versions antérieures de ce correctif logiciel.A later version of a hotfix contains the earlier versions of that hotfix.

Considérations importantes avant d’attribuer le droit utilisateur « Verrouiller les pages en mémoire »Important considerations before you assign the "Lock pages in memory" user right

Vous devez prendre en compte d’autres éléments avant d’attribuer le droit utilisateur Verrouiller les pages en mémoire.You should make additional considerations before you assign the Lock pages in memory user right. Si vous affectez ce droit utilisateur sur des systèmes qui ne sont pas configurés correctement, le système peut devenir instable ou subir une baisse des performances de l’ensemble du système.If you assign this user right on systems that are configured incorrectly, the system may become unstable or experience a performance decrease of the whole system. En outre, l’ID d’événement 333 peut être enregistré dans le journal des événements.Additionally, event ID 333 may be logged in the event log.

Si vous contactez le support technique Microsoft pour résoudre ces problèmes, les ingénieurs CSS peuvent vous demander de révoquer ce droit utilisateur pour le compte d’utilisateur utilisé comme compte de démarrage du service SQL ServerSQL Server.If you contact Microsoft Customer Support Service (CSS) for these problems, CSS engineers may ask you to revoke this user right for the user account that is used as the startup account of the SQL ServerSQL Server service. Cette étape peut être nécessaire pour collecter des données de performances importantes que les ingénieurs CSS peuvent utiliser pour la configuration nécessaire des différentes options de SQL ServerSQL Server et pour d’autres applications qui s’exécutent sur le système.This step may be necessary to collect important performance data that CSS engineers can use for necessary configuration of the various options for SQL ServerSQL Server and for other applications that are running on the system. Une fois que les ingénieurs CSS recueillent les données de performances, vous pouvez affecter le droit utilisateur Verrouiller les pages en mémoire au compte de démarrage du service SQL ServerSQL Server.After CSS engineers collect the performance data, you can assign the Lock pages in memory user right to the startup account of the SQL ServerSQL Server service.

Avant d’attribuer le droit utilisateur Verrouiller les pages en mémoire, assurez-vous de capturer un journal de l’analyseur de performances pour déterminer les besoins en mémoire des divers services et applications installés sur le système.Before you assign the Lock pages in memory user right, make sure that you capture a Performance Monitor log to determine the memory requirements of various applications and services that are installed on the system. Ces applications incluent également SQL Server.These applications also include SQL Server. Pour déterminer les besoins en mémoire, collectez les informations de ligne de base suivantes :To determine the memory requirements, collect the following baseline information:

  • Veillez à définir l’option max server memory et l’option min server memory correctement.Make sure that you set the max server memory option and the min server memory option correctly. Ces options reflètent uniquement les besoins en mémoire du pool de mémoires tampons du processus SQL ServerSQL Server.These options reflect only the memory requirement of the buffer pool of the SQL ServerSQL Server process. Ces options n’incluent pas la mémoire allouée pour d’autres composants au sein du processus SQL ServerSQL Server.These options do not include the memory that is allocated for other components within the SQL ServerSQL Server process. Ces composants incluent :These components include the following:

    • Threads de travail SQL ServerSQL ServerThe SQL ServerSQL Server worker threads
    • Divers composants et DLL que le processus SQL ServerSQL Server charge dans l’espace d’adressage du processus SQL ServerSQL ServerVarious DLLs and components that the SQL ServerSQL Server process loads within the address space of the SQL ServerSQL Server process
    • Les opérations de sauvegarde et de restaurationThe Backup and restore operations
  • Les composants et DLL incluent différents fournisseurs OLE DB, des procédures stockées étendues, des objets Microsoft COM utilisés pour la procédure stockée sp_OACreate, les serveurs liés et SQL ServerSQL Server CLR.The DLLs and components include various OLE DB providers, extended stored procedures, Microsoft COM objects that are used for the sp_OACreate stored procedure, linked servers, and SQL ServerSQL Server CLR. La mémoire allouée à ces composants se trouve sous la région du pool hors mémoire tampon de l’espace d’adressage du processus SQL ServerSQL Server.Memory that is allocated for these components falls under the nonbuffer pool region of the address space of the SQL ServerSQL Server process. Pour déterminer idéalement la quantité maximale de mémoire que l’ensemble du processus SQL ServerSQL Server peut utiliser, vous devez soustraire la mémoire allouée aux composants qui n’utilisent pas le pool de mémoires tampons de la mémoire totale que vous voulez que le processus SQL ServerSQL Server utilise.To ideally determine the maximum amount of memory that the whole SQL ServerSQL Server process can use, you must subtract the memory that is allocated for components that do not use the buffer pool from the total memory that you want the SQL ServerSQL Server process to use. Ensuite, vous pouvez utiliser la valeur restante pour définir l’option max server memory.Then, you can use the remainder value to set the max server memory option. Avant de définir l’option max server memory et l’option min server memory, vous devez examiner attentivement la rubrique « Paramétrage manuel des options de mémoire » dans la documentation en ligne de SQL ServerSQL Server.Before you set the max server memory option and the min server memory option, you should carefully review the "Setting the memory options manually" topic in SQL ServerSQL Server Books Online.

  • Déterminez la mémoire requise par les autres applications et les composants du système d’exploitation Windows.Determine the memory requirement of other applications and of the Windows operating system components. Les applications peuvent inclure d’autres composants SQL ServerSQL Server, par exemple l’agent SQL ServerSQL Server, les agents de réplication SQL ServerSQL Server, les services de rapport SQL ServerSQL Server, les services d’analyse SQL ServerSQL Server, les services d’intégration SQL ServerSQL Server et la recherche en texte intégral SQL ServerSQL Server.Applications may include other SQL ServerSQL Server components, for example, SQL ServerSQL Server Agent, SQL ServerSQL Server Replication Agents, SQL ServerSQL Server Reporting Services, SQL ServerSQL Server Analysis Services, SQL ServerSQL Server Integration Services, and SQL ServerSQL Server Full Text Search. Les applications qui effectuent des opérations de sauvegarde et des opérations de copie de fichiers peuvent utiliser un grand nombre de mémoires.Applications that perform Backup operations and file copy operations may use lots of memories. Envisagez des opérations telles que la copie en bloc et les agents d’instantanés qui génèrent des E/S de fichier.Consider operations such as bulk copy and the Snapshot Agent that generate file IO. Vous devez prendre en compte les besoins en mémoire de toutes ces applications lorsque vous déterminez la valeur de l’option max server memory et de l’option min server memory.You must consider the memory requirement of all these applications when you determine the value of the max server memory option and of the min server memory option. Vous pouvez utiliser le compteur Octets privés et le compteur Jeu de travail sous l’objet Processus pour chaque processus afin de déterminer les besoins en mémoire pour un processus spécifique.You can use the Private Bytes counter and the Working Set counter under the Process object for every process to determine the memory requirement for a specific process.

  • Par défaut, le droit utilisateur Verrouiller les pages en mémoire a déjà été affecté au compte système local intégré.By default, the Lock pages in memory user right have already been assigned to the built-in Local System account. Pour plus d’informations, consultez le site web Microsoft suivant : Dois-je attribuer le privilège Verrouiller les pages pour la mémoire du système local ?For more information, visit the following Microsoft Web site: Do I have to assign the Lock pages in Memory privilege for Local system?

  • Si vous utilisez un compte d’utilisateur Windows globalement pour tous les processus SQL ServerSQL Server d’un domaine, déterminez les droits utilisateur affectés à l’aide d’une configuration de stratégie de groupe.If you use a Windows user account globally for all SQL ServerSQL Server processes in a domain, determine the user rights that are assigned by using a Group Policy configuration. Un processus SQL ServerSQL Server 32 bits peut utiliser ce compte comme compte de démarrage.A 32-bit SQL ServerSQL Server process may use this account as the startup account. Toutefois, ce compte requiert le droit utilisateur Verrouiller les pages en mémoire pour activer la fonctionnalité Address Windowing Extensions (AWE).However, this account requires the Lock pages in memory user right to enable the Address Windowing Extensions (AWE) feature. Pour plus d’informations, consultez la rubrique « Apport de la quantité maximale de mémoire à SQL Server » dans la documentation en ligne de SQL ServerSQL Server.For more information, see the "Providing the maximum amount of memory to SQL Server" topic in SQL ServerSQL Server Books Online.

  • Avant de configurer l’option max server memory et l’option min server memory pour plusieurs instances de SQL ServerSQL Server, prenez en compte les besoins en mémoire du pool hors mémoire tampon pour chaque instance de SQL Server.Before you configure the max server memory option and the min server memory option for multiple SQL ServerSQL Server instances, consider the memory requirements of the nonbuffer pool for each instance of SQL Server. Configurez ensuite ces options pour chaque instance de SQL Server.Then, configure these options for each instance of SQL Server.

Dans l’idéal, vous collectez ces informations de référence pendant les pics de charge.Ideally, you collect this baseline information during peak loads. Par conséquent, vous pouvez déterminer les besoins en mémoire pour divers composants et applications afin de pouvoir soutenir la charge maximale.Therefore, you can determine the memory requirements for various applications and components to support the peak load. Les besoins en mémoire varient d’un système à un autre, et selon les activités et applications qui s’exécutent sur le système.The memory requirements vary from one system to another system, depending on the activities and the applications that are running on the system. Vous pouvez interroger les informations fournies dans la vue de gestion dynamique sys.dm_os_process_memory pour savoir si le système rencontre des conditions de mémoire insuffisante.You can query the information that is provided in the dynamic management view sys.dm_os_process_memory to understand whether the system is encountering low memory conditions. Pour plus d’informations, consultez sys.dm_os_process_memory (Transact-SQL).For more information, see sys.dm_os_process_memory (Transact-SQL).

Améliorations apportées à Windows Server 2008 et à la version R2Improvements added in Windows Server 2008 and R2 version

Windows Server 2008 et Windows Server 2008 R2 améliorent le mécanisme d’allocation de mémoire contiguë.Windows Server 2008 and Windows Server 2008 R2 improve the contiguous memory allocation mechanism. Cette amélioration permet à Windows Server 2008 et Windows Server 2008 R2 de réduire dans une certaine mesure les effets de la pagination de la plage de travail des applications lorsque de nouvelles demandes de mémoire arrivent.This improvement lets Windows Server 2008 and Windows Server 2008 R2 reduce to a certain extent the effects of paging out the working set of applications when new memory requests arrive.

Vous trouverez ci-dessous une explication des améliorations apportées, tirées du livre blanc Microsoft « Évolutions de la gestion de la mémoire dans Windows » :The following is an explanation of the improvements from the Microsoft whitepaper "Advances in Memory Management in Windows":

Dans Windows Server 2008, l’allocation de mémoire physiquement contiguë a été grandement améliorée. Les demandes d’allocation de mémoire contiguë sont plus susceptibles d’avoir lieu, car le gestionnaire de mémoire remplace désormais les pages de manière dynamique, généralement sans tronquer la plage de travail ou effectuer d’opérations d’E/S. En outre, de nombreux autres types de pages, comme les piles de noyau et les pages de métadonnées du système de fichiers, sont désormais des candidats pour le remplacement. Par conséquent, une mémoire plus contiguë est généralement disponible à tout moment donné. En outre, le coût d’obtention de ces allocations est sensiblement réduit.In Windows Server 2008, the allocation of physically contiguous memory is greatly enhanced. Requests to allocate contiguous memory are much more likely to succeed because the memory manager now dynamically replaces pages, typically without trimming the working set or performing I/O operations. In addition, many more types of pages—such as kernel stacks and file system metadata pages, among others—are now candidates for replacement. Consequently, more contiguous memory is generally available at any given time. In addition, the cost to obtain such allocations is greatly reduced.

Pour plus d’informations, consultez Problèmes de réduction de plage de travail avec SQL Server.For more information, view SQL Server Working Set Trim Problems.

Les produits tiers mentionnés dans cet article sont fabriqués par des sociétés indépendantes de Microsoft.The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft ne formule aucune garantie, expresse ou implicite, concernant les performances ou la fiabilité de ces produits.Microsoft makes no warranty, implied or otherwise, about the performance or reliability of these products.