Règles de performance par IDPerformance Rules by ID

WarningWarning DescriptionDescription
DA0001 : Utilisez StringBuilder pour les concaténationsDA0001: Use StringBuilder for concatenations Les appels à System.String.Concat représentent une part importante des données de profilage.Calls to System.String.Concat are a significant proportion of the profiling data. Envisagez l’utilisation de la classe StringBuilder pour construire des chaînes à partir de plusieurs segments.Consider using the StringBuilder class to construct strings from multiple segments.
DA0002 : VSPerfCorProf.dll manquantDA0002: VSPerfCorProf.dll is missing Le profileur n’a pas trouvé VSPerfCorProf.dll lors de l’exécution du profilage.The profiler could not find VSPerfCorProf.dll during the profiling run. Cet avertissement se produit quand les outils en ligne de commande pour la collecte de données du profileur sont utilisés sans l’outil VSPerfCLREnv.cmd pour initialiser les variables d’environnement nécessaires.This warning occurs when command-line tools for the collection of profiler data are used without using the VSPerfCLREnv.cmd tool to initialize the necessary environment variables.
DA0003 : Nombreux échantillons de noyauDA0003: Many kernel samples Une proportion importante des échantillons de la pile des appels qui ont été collectés pour l’application s’exécutaient en mode noyau.A significant proportion of the call stack samples collected for the application were executing in kernel mode. Envisagez de profiler votre application avec une autre méthode de profilage.Consider profiling your application by using a different profiling method.
DA0004 : Utilisation intensive du processeurDA0004: High processor usage L’utilisation du processeur (UC) était très élevée dans les données de profilage qui ont été collectées à l’aide de la méthode d’instrumentation.Processor (CPU) utilization was significantly high in profiling data that was collected using the instrumentation method. Utilisez la méthode de profilage par échantillonnage lorsque vous profilez une application utilisant le processeur de manière intensive.Consider using the sampling profiling method when profiling a CPU bound application.
DA0005 : Collections GC2 fréquentesDA0005: Frequent GC2 collections Un nombre élevé d’objets mémoire .NET est actuellement récupéré dans le cadre d’un garbage collection de génération 2.A high number of .NET memory objects are being reclaimed in generation 2 garbage collection.
DA0006 : Remplacez Equals() pour les types valeurDA0006: Override Equals() for value types Les appels à la méthode Equals ou aux opérateurs d’égalité d’un type valeur public représentent une part importante des données de profilage.Calls to the Equals method or the equality operators of a public value type are a significant proportion of the profiling data. Implémentez une méthode plus efficace.Consider implementing a more efficient method.
DA0007 : N’utilisez pas d’exceptions pour le flux de contrôleDA0007: Avoid using exceptions for control flow Un taux élevé de gestionnaires d’exceptions .NET Framework ont été appelés dans les données de profilage.A high rate of .NET Framework exception handlers were called in the profiling data. Utilisez une autre logique de flux de contrôle pour réduire le nombre d’exceptions levées.Consider using other control flow logic to reduce the number of exceptions that are thrown.
DA0008 : Peu d’échantillons collectésDA0008: Few samples collected Seuls quelques échantillons ont été collectés pendant l’exécution du profilage.Only a few samples were collected in the profiling run. Augmentez la durée d’exécution ou utilisez un taux d’échantillonnage plus rapide pour des résultats plus significatifs.Consider a longer run or faster sampling rate for more significant results.
DA0009 : Pourcentage élevé de temps en JITDA0009: High % time in JIT Un pourcentage important du temps d’exécution de l’application a été passé dans le compilateur JIT.A significant percentage of application execution time was spent in the Just In Time (JIT) compiler.
DA0010 : GetHashCode coûteuxDA0010: Expensive GetHashCode Les appels à la méthode GetHashCode du type représentent une part importante des données de profilage, ou la méthode alloue de la mémoire.Calls to the GetHashCode method of the type are a significant proportion of the profiling data or the method allocates memory.
DA0011 : CompareTo coûteuxDA0011: Expensive CompareTo La méthode CompareTo du type est coûteuse ou alloue de la mémoire.The CompareTo method of the type is expensive or allocates memory.
DA0012 : Quantité importante de réflexionDA0012: Significant amount of Reflection Les appels aux méthodes System.Reflection, telles que InvokeMember et GetMember, ou aux méthodes de type telles que MemberInvoke, représentent une part importante des données de profilage.Calls to the System.Reflection methods such as InvokeMember and GetMember or to Type methods such as MemberInvoke are a significant proportion of the profiling data. Quand vous pouvez, envisagez de remplacer ces méthodes par une liaison anticipée aux méthodes des assemblys dépendants.When you can, consider replacing these methods with early binding to the methods of dependent assemblies.
DA0013 : Utilisation intensive de String.Split ou de String.SubstringDA0013: High usage of String.Split or String.Substring Les appels aux méthodes System.String.Split ou System.String.Substring représentent une part importante des données de profilage.Calls to the System.String.Split or System.String.Substring methods are a signifiicant portion of the profiling data. Utilisez System.String.IndexOf ou System.String.IndexOfAny si vous testez l’existence d’une sous-chaîne dans une chaîne.Consider using System.String.IndexOf or System.String.IndexOfAny if you are testing for the existence of a substring in a string.
DA0014 : Taux très élevés de pagination de la mémoire active sur le disqueDA0014: Extremely high rates of paging active memory to disk Les données de performances système qui ont été collectées durant l’exécution du profilage indiquent qu’un taux très élevé de pagination de la mémoire active vers et depuis le disque a été relevé pendant toute la durée de l’exécution du profilage.System performance data that was collected in the profiling run indicates that an extremely high rate of paging active memory to and from the disk occurred throughout the profiling run. De tels taux de pagination affectent généralement les performances et la réactivité de l’application.Paging rates at this level usually will impact application performance and responsiveness. Réduisez les allocations de mémoire en modifiant les algorithmes.Consider reducing memory allocations by revising algorithms. Envisagez également de revoir les besoins en mémoire de votre application.You might also have to consider the memory requirements of your application. Réexécutez le profilage sur un ordinateur disposant de plus de mémoire.running profiling again on a computer that has more memory.
DA0017 : Taux élevés de pagination de la mémoire active sur le disqueDA0017: High rates of paging active memory to disk Les données de performances système qui ont été collectées durant l’exécution du profilage indiquent qu’un taux élevé de pagination de la mémoire active vers et depuis le disque a été relevé pendant toute la durée de l’exécution du profilage.System performance data that was collected in the profiling run indicates that an high rate of paging active memory to and from the disk occurred throughout the profiling run. De tels taux de pagination affectent généralement les performances et la réactivité de l’application.Paging rates at this level usually will impact application performance and responsiveness. Réduisez les allocations de mémoire en modifiant les algorithmes.Consider reducing memory allocations by revising algorithms. Envisagez également de revoir les besoins en mémoire de votre application.You might also have to consider the memory requirements of your application. Réexécutez le profilage sur un ordinateur disposant de plus de mémoire.running profiling again on a computer that has more memory.
DA0018 : Application 32 bits s’exécutant aux limites de la mémoire managée du processusDA0018: 32-bit Application running at process managed memory limits Les données système qui ont été collectées pendant le profilage indiquent que les tas de mémoire .NET Framework approchent de la taille maximale autorisée pour les tas managés dans un processus 32 bits.System data that was collected during the profiling run indicates the .NET Framework memory heaps approached the maximum size the managed heaps can grow to in a 32-bit process. La valeur indiquée correspond à la valeur maximale des tas qui a été observée pendant que le processus profilé était actif.The value reported is the maximum observed value of the heaps while the profiled process being was active. Envisagez d’optimiser l’utilisation des ressources gérées par l’application.Consider optimizing the use of managed resources by the application.
DA0021 : Taux élevé de garbage collection Gen 1DA0021: High rate of Gen 1 garbage collections Les données relatives aux performances système qui ont été collectées pendant le profilage indiquent qu’une importante quantité de mémoire allouée aux objets .NET Framework a été récupérée dans la génération 1 du garbage collection, par rapport à la collecte de données de la génération 0.System performance data that was collected during profiling indicate that a significant proportion of the memory for.NET Framework objects was reclaimed in generation 1 of garbage collection compared to generation 0 data collection.
DA0022 : taux élevé de garbage collection Gen 2DA0022: High rate of Gen 2 garbage collections Les données relatives aux performances système qui ont été collectées pendant le profilage indiquent qu’une importante quantité de mémoire allouée aux objets .NET Framework a été récupérée dans la génération 2 du garbage collection, par rapport aux garbage collections de génération 0 et 1.System performance data that was collected during profiling indicate that a significant proportion of the memory for.NET Framework objects was reclaimed in generation 2 of garbage collection compared to generation 0 and generation 1 garbage collections.
DA0023 : temps processeur GC élevéDA0023: High GC CPU time Les données relatives aux performances système qui ont été collectées pendant le profilage indiquent que le temps consacré à la garbage collection est très important, par rapport au temps total de traitement de l’application.System performance data that was collected during profiling indicates that the amount of time spent in garbage collection is significant compared with the total application processing time.
DA0024 : Temps UC GC excessifDA0024: Excessive GC CPU Time Les données relatives aux performances système qui sont collectées pendant le profilage indiquent que le temps consacré au garbage collection est extrêmement important, par rapport au temps total de traitement de l’application.System performance data that was collected during profiling indicates that the amount of time spent in garbage collection is excessively high compared with the total application processing time.
DA0026 : Traitement du temps UC excessif pour le noyauDA0026: Excessive kernel CPU time processing Le temps processeur qui a été exécuté en mode noyau a dépassé le temps passé en mode utilisateur.The proportion CPU time that was executed in kernel mode exceeded the amount of time spent in user mode. Effectuez de nouveau un profilage et un échantillonnage du nombre d’appels système (syscalls) pour déterminer la cause des durées élevées d’exécution en mode noyau.Consider profiling again and sampling the number of system calls (syscalls) to determine the cause of the high kernel mode execution times.
DA0029 : Version CLR non prise en chargeDA0029: Unsupported CLR Version Vous essayez de profiler une application qui utilise le .NET Framework version 1.1, qui n’est pas pris en charge par les outils de profilage.You are trying to profile an application that uses the .NET Framework version 1.1 that is not supported by the Profiling Tools.
DA0030 : collecter les mesures d’interaction de couche pour les projets de base de donnéesDA0030: Gather Tier Interaction measurements for database projects Les appels aux méthodes System.Data représentent une part importante des données de profilage et vous n’avez pas collecté de données d’interaction de couche lors de l’exécution du profilage.Calls to System.Data methods are a significant proportion of the profiling data and you have not collected tier interaction data in the profiling run. Effectuez un nouveau profilage et ajoutez des données d’interaction de couche.Consider profiling again and adding tier interaction data.
DA0038 : taux élevé de conflits de verrouillageDA0038: High Rate of Lock contentions Les données relatives aux performances système qui sont collectées avec les données de profilage indiquent qu’un taux très élevé de conflits de verrouillage a été relevé lors de l’exécution de l’application.System performance data that is collected with the profiling data indicates that a significantly high rate of lock contentions occurred during application execution. Effectuez un nouveau profilage à l’aide de la méthode de profilage d’accès concurrentiel pour rechercher la cause des conflits.Consider profiling again using the concurrency profiling method to find the cause of the contentions.
DA0039 : Taux très élevé de conflits de verrouillageDA0039: Very High Rate of Lock contentions Les données relatives aux performances système qui sont collectées avec les données de profilage indiquent qu’un taux excessif de conflits de verrouillage a été relevé lors de l’exécution de l’application.System performance data that is collected with the profiling data indicates that an excessively high rate of lock contentions occurred during application execution. Effectuez un nouveau profilage à l’aide de la méthode de profilage d’accès concurrentiel pour rechercher la cause des conflits.Consider profiling again using the concurrency profiling method to find the cause of the contention.
DA0501 : Consommation d’UC moyenne par le processus en cours de profilage.DA0501: Average CPU consumption by the Process being profiled. Ce message indique le temps, en pourcentage, pendant lequel un processeur a exécuté des instructions à partir de l’application.This message reports the percentage of time that a processor was busy executing instructions from the application. La valeur signalée correspond à la moyenne de tous les intervalles de mesure pendant lesquels le processus profilé était actif.The reported value is the average over all the measurement intervals in which the process being profiled was active. Cette valeur peut être supérieure à 100 % sur les ordinateurs qui comprennent plusieurs processeurs.The value of value can be greater than 100% on a machine with more than one processor.
DA0502 : consommation d’UC maximale par le processus à profilerDA0502: Maximum CPU consumption by the Process being profiled Ce message indique le temps maximal, en pourcentage, pendant lequel un processeur a exécuté des instructions à partir de l’application.This message reports the maximum percentage of time that a processor was busy executing instructions from the application. La valeur signalée correspond à la valeur maximale de tous les intervalles de mesure pendant lesquels le processus profilé était actif.The reported value is the maximum value reported among all the measurement intervals in which the process being profiled was active. Cette valeur peut être supérieure à 100 % sur les ordinateurs qui comprennent plusieurs processeurs.The percentage can be greater than 100% on a machine with more than one processor.
DA0503 : Jeu de travail moyen, en octets, pour le processus à profilerDA0503: Average Working Set in Bytes for the Process being profiled Ce message signale la quantité moyenne de mémoire physique que le processus utilise actuellement, en octets (le jeu de travail).This message reports the average amount of physical memory that the process is currently using in bytes (the working set). Le jeu de travail du processus comprend les pages de l’espace d’adressage de processus qui résident actuellement dans la mémoire physique.The process working set represents pages from the process address space that currently reside in physical memory.
DA0504 : Jeu de travail maximal, en octets, pour le processus à profilerDA0504: Maximum Working Set in Bytes for the Process being profiled Ce message indique la quantité maximale de mémoire physique, en octets, utilisée par le processus.This message reports the maximum amount of physical memory that the process is currently using in bytes. Le jeu de travail du processus comprend les pages de l’espace d’adressage de processus qui résident actuellement dans la mémoire physique.The process working set represents pages from the process address space that currently reside in physical memory. Cette règle signale la valeur maximale du jeu de travail du processus pendant que le profilage était actif.This rule reports the maximum value for the process working set while profiling was active.
DA0505 : Nombre moyen d’octets privés alloués pour le processus à profilerDA0505: Average Private Bytes allocated for the Process being profiled Ce message signale la quantité moyenne de mémoire virtuelle actuellement allouée par le processus, en octets (octets privés).This message reports the average amount of virtual memory that the process has currently allocated in bytes (Private bytes). Les octets privés représentent les emplacements de mémoire virtuelle alloués par le processus et qui ne sont accessibles qu’aux threads actuellement exécutés dans le processus.Private bytes represents virtual memory locations that were allocated by the process that can only be accessed by threads running inside the process.
DA0506 : nombre maximal d’octets privés alloués pour le processus en cours de profilageDA0506: Maximum Private Bytes allocated for the Process being profiled Ce message signale la quantité maximale de mémoire virtuelle actuellement allouée par le processus, en octets (octets privés).This message reports the maximum amount of virtual memory that the process has currently allocated in bytes (Private bytes). Les octets privés représentent les emplacements de mémoire virtuelle alloués par le processus et qui ne sont accessibles qu’aux threads actuellement exécutés dans le processus.Private bytes represents virtual memory locations that were allocated by the process that can only be accessed by threads running inside the process.