Procedura: unire più profili PGO in un unico profilo

L'ottimizzazione PGO (Profile-Guided Optimization) è uno strumento ideale per la creazione di file binari ottimizzati in base a uno scenario profilato. Ma cosa accade se si dispone di un'applicazione con diversi scenari importanti, ma distinti? Come si crea un singolo profilo che PGO può usare da diversi scenari? In Visual Studio, PGO Manager , pgomgr.exe, esegue questo processo per l'utente.

La sintassi per l'unione dei profili è:

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

dove num è un peso facoltativo da usare per i file con estensione pgc aggiunti da questa unione. I pesi vengono comunemente usati se esistono alcuni scenari più importanti di altri o se esistono scenari che devono essere eseguiti più volte.

Nota

PgO Manager non funziona con i dati del profilo non aggiornati. Per unire un file con estensione pgc in un file pgd, il file con estensione pgc deve essere generato da un eseguibile creato dalla stessa chiamata di collegamento che ha generato il file pgd.

Esempi

In questo esempio, PGO Manager aggiunge pgcFile.pgc a pgdFile.pgd sei volte:

pgomgr /merge:6 pgcFile.pgc pgdFile.pgd

In questo esempio, PGO Manager aggiunge pgcFile1.pgc e pgcFile2.pgc a pgdFile.pgd, due volte per ogni file pgc:

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

Se PGO Manager viene eseguito senza argomenti di file pgc, cerca nella directory locale tutti i file con estensione pgc con lo stesso nome di base del file pgd seguito da un punto esclamativo (!) e quindi uno o più caratteri arbitrari. Ad esempio, se la directory locale contiene file test.pgd, test!1.pgc, test2.pgc e test!hello.pgc e il comando seguente viene eseguito dalla directory locale, pgomgr unisce test!1.pgc e test!hello.pgc in test.pgd.

pgomgr /merge test.pgd

Vedi anche

Ottimizzazioni PGO