Partager via


Comment : fusionner plusieurs profils PGO en un seul profil

L'optimisation guidée par profil (PGO) est un formidable outil pour créer des fichiers binaires optimisés à partir d'un scénario profilé. Mais que se passe-t-il dans le cas d'une application ayant plusieurs scénarios importants mais distincts ? Comment créer, à partir de plusieurs scénarios différents, un profil unique utilisable par la PGO ? Dans Visual Studio, PGO Manager (Pgomgr.exe) se charge de cette tâche.

Voici la syntaxe servant à fusionner des profils :

pgomgr /merge[:num] [.pgc_files] .pgd_files

où num est une pondération facultative utilisée pour cette fusion. Les pondérations sont couramment utilisées si certains scénarios sont plus importants que d'autres ou doivent être exécutés plusieurs fois.

Notes

Le PGO Manager ne fonctionnera pas avec des données de profil périmées. Pour fusionner un fichier .pgc dans un fichier .pgd, le fichier .pgc doit être généré par un fichier exécutable créé par le même appel de lien que celui qui a généré le fichier .pgd.

Exemple

Dans cet exemple, le PGO Manager ajoutera six fois pgcFile.pgc à pgdFile.pgd.

pgomgr /merge:6 pgcFile.pgc pgdFile.pgd

Dans cet exemple, le PGO Manager ajoutera pgcFile1.pgc et pgcFile2.pgc à pgdFile.pgd, deux fois pour chaque fichier .pgc.

pgomgr /merge:2 pgcFile1.pgc pgcFile2.pgc pgdFile.pgd

Si le PGO Manager est exécuté sans fichier .pgc, il recherchera dans le répertoire local tous les fichiers .pgc ayant le même nom que le fichier .pgd suivi d'un point d'exclamation (!) puis de caractères arbitraires. Si le répertoire local comporte des fichiers test.pgd, test!1.pgc, test2.pgc et test!hello.pgc, et si la commande suivante est exécutée à partir du répertoire local, alors test!1.pgc et test!hello.pgc seront fusionnés avec test.pgd.

pgomgr /merge test.pgd

Voir aussi

Référence

Optimisations guidées par profil