Partage via


ProfileOptimization Classe

Définition

Améliore les performances de démarrage des domaines d'application dans les applications qui requièrent le compilateur juste-à-temps (JIT) lors de la compilation d'arrière-plan des méthodes susceptibles d'être exécutées, en fonction des profils créés lors des compilations précédentes.

public ref class ProfileOptimization abstract sealed
public static class ProfileOptimization
type ProfileOptimization = class
Public Class ProfileOptimization
Héritage
ProfileOptimization

Remarques

Important

L’optimisation des profils nécessite un ordinateur multicœur. Les méthodes sont ignorées sur d’autres ordinateurs.

Chaque fois que vous lancez l’optimisation de profil dans un domaine d’application, le profil qui a été créé lors de l’utilisation précédente est lu. Les informations du profil sont utilisées pour guider la compilation en arrière-plan en identifiant les méthodes les plus susceptibles d’être exécutées au démarrage. Sur les ordinateurs multicœurs, cela augmente les chances qu’une méthode soit déjà compilée au moment nécessaire afin que le thread d’application main n’ait pas à appeler le compilateur JIT.

Le fichier de profil étant remplacé à chaque utilisation, il contient toujours les informations les plus récentes sur les méthodes utilisées au démarrage.

Les profils d’optimisation ne sont pas limités au démarrage du domaine d’application. Ils peuvent être utilisés pour n’importe quelle activité nécessitant une utilisation intensive du compilateur JIT. Vous pouvez gérer plusieurs profils pour un domaine d’application afin que chacune de ces activités ait son propre profil.

Pour utiliser des profils d’optimisation dans un domaine d’application, vous devez appeler la SetProfileRoot méthode et spécifier le dossier dans lequel les profils sont stockés. Le dossier doit déjà exister. Pour commencer à utiliser un profil, appelez la StartProfile méthode et spécifiez le nom de fichier du profil. Si le fichier n’a pas été enregistré précédemment, il est créé lors de la première utilisation. Il n’y a aucun avantage en matière de performances lors de la première création d’un profil.

L’optimisation des profils ne modifie pas l’ordre d’exécution des méthodes. Les méthodes ne sont pas exécutées sur le thread d’arrière-plan ; si une méthode est compilée mais jamais appelée, elle n’est tout simplement pas utilisée. Si un fichier de profil est endommagé ou ne peut pas être écrit dans le dossier spécifié (par exemple, parce que le dossier n’existe pas), l’exécution du programme se poursuit sans profilage d’optimisation.

Méthodes

SetProfileRoot(String)

Active le profilage d'optimisation pour le domaine d'application actif, et définit le dossier dans lequel les fichiers de profils d'optimisation sont enregistrés. Sur les ordinateurs à cœur unique, la méthode est ignorée.

StartProfile(String)

Démarre la compilation juste-à-temps (JIT) des méthodes qui ont été précédemment enregistrées dans le fichier de profil spécifié, sur un thread d'arrière-plan. Démarre le processus d'enregistrement de l'utilisation de méthode actuelle, qui remplace ultérieurement le fichier de profil spécifié.

S’applique à