Variables d'environnement pour les optimisations guidées par profil
Il existe trois variables d’environnement qui affectent les scénarios de test sur une image créée avec /LTCG :PGI pour les optimisations guidées par profil :
PogoSafeMode spécifie s’il faut utiliser le mode rapide ou le mode sans échec pour le profilage d’application.
VCPROFILE_ALLOC_SCALE ajoute de la mémoire supplémentaire à utiliser par le profileur.
VCPROFILE_PATH vous permet de spécifier le dossier utilisé pour les fichiers .pgc.
Les variables d’environnement PogoSafeMode et VCPROFILE_ALLOC_SCALE sont déconseillées à partir de Visual Studio 2015. Les options de l’éditeur de liens /GENPROFILE ou /FASTGENPROFILE et /USEPROFILE spécifient le même comportement d’éditeur de liens que ces variables d’environnement.
PogoSafeMode
Cette variable d’environnement est déconseillée. Utilisez les arguments EXACT ou NOEXACT pour /GENPROFILE ou /FASTGENPROFILE pour contrôler ce comportement.
Effacez ou définissez la variable d’environnement PogoSafeMode pour spécifier s’il faut utiliser le mode rapide ou le mode sans échec pour le profilage des applications sur les systèmes x86.
L’optimisation guidée par profil (PGO) a deux modes possibles pendant la phase de profilage : le mode rapide et le mode sans échec. Lorsque le profilage est en mode rapide, il utilise l’instruction INC pour augmenter les compteurs de données. L’instruction INC est plus rapide, mais n’est pas thread-safe. Lorsque le profilage est en mode sans échec, il utilise l’instruction LOCK INC pour augmenter les compteurs de données. L’instruction LOCK INC a les mêmes fonctionnalités que l’instruction INC et est thread-safe, mais elle est plus lente que l’instruction INC .
Par défaut, le profilage PGO fonctionne en mode rapide. PogoSafeMode est obligatoire uniquement si vous souhaitez utiliser le mode sans échec.
Pour exécuter le profilage PGO en mode sans échec, vous devez utiliser la variable d’environnement PogoSafeMode ou le commutateur d’éditeur de liens /PogoSafeMode, en fonction du système. Si vous effectuez le profilage sur un ordinateur x64, vous devez utiliser le commutateur éditeur de liens. Si vous effectuez le profilage sur un ordinateur x86, vous pouvez utiliser le commutateur de l’éditeur de liens ou définir la variable d’environnement PogoSafeMode sur n’importe quelle valeur avant de démarrer le processus d’optimisation.
Syntaxe PogoSafeMode
set PogoSafeMode[=value]
Définissez PogoSafeMode sur n’importe quelle valeur pour activer le mode sans échec. Définissez sans valeur pour effacer une valeur précédente et réactiver le mode rapide.
VCPROFILE_ALLOC_SCALE
Cette variable d’environnement est déconseillée. Utilisez les arguments MEMMIN et MEMMAX pour /GENPROFILE ou /FASTGENPROFILE pour contrôler ce comportement.
Modifiez la variable d’environnement VCPROFILE_ALLOC_SCALE pour modifier la quantité de mémoire allouée pour contenir les données de profil. Dans de rares cas, il n’y aura pas suffisamment de mémoire disponible pour prendre en charge la collecte des données de profil lors de l’exécution de scénarios de test. Dans ce cas, vous pouvez augmenter la quantité de mémoire en définissant VCPROFILE_ALLOC_SCALE. Si vous recevez un message d’erreur lors d’une exécution de test qui indique que vous avez une mémoire insuffisante, affectez une valeur plus importante à VCPROFILE_ALLOC_SCALE, jusqu’à ce que le test s’exécute sans erreur de mémoire insuffisante.
syntaxe VCPROFILE_ALLOC_SCALE
set VCPROFILE_ALLOC_SCALE[=scale_value]
Le paramètre scale_value est un facteur de mise à l’échelle pour la quantité de mémoire souhaitée pour l’exécution de scénarios de test. La valeur par défaut est 1. Par exemple, cette ligne de commande définit le facteur d’échelle sur 2 :
set VCPROFILE_ALLOC_SCALE=2
VCPROFILE_PATH
Utilisez la variable d’environnement VCPROFILE_PATH pour spécifier le répertoire pour créer des fichiers .pgc. Par défaut, les fichiers .pgc sont créés dans le même répertoire que le fichier binaire profilé. Toutefois, si le chemin absolu du binaire n’existe pas, comme c’est le cas lorsque vous exécutez des scénarios de profil sur un autre ordinateur que celui où le binaire a été généré, vous pouvez définir VCPROFILE_PATH sur un chemin d’accès existant sur l’ordinateur cible.
syntaxe VCPROFILE_PATH
set VCPROFILE_PATH[=path]
Définissez le paramètre de chemin d’accès au chemin d’accès du répertoire dans lequel ajouter des fichiers .pgc. Par exemple, cette ligne de commande définit le dossier sur C :\profile :
set VCPROFILE_PATH=c:\profile
Voir aussi
Optimisations guidées par profil
/GENPROFILE et /FASTGENPROFILE
/USEPROFILE