Czy ktoś może mi wyjaśnić różnicę między opcjami profile-generate
i pg
?Generowanie profilu kontra PG
8
A
Odpowiedz
9
Obie wygenerują dane profilu. Ale ich użycie jest inne.
fprofile-generate
jest generowanie pliku binarnego z profilowania informacji, które można ponownego wykorzystania wyrazić opinię na kompilator podczas kompilowania go ponownie fprofile-use
.
Na przykład:
$ gcc -fprofile-generate filename.c
Jeśli wykonanie binarnego generowanego przez około polecenia, będzie produkować plik o nazwie filename.gcda
z danych w profilu.
Podczas kompilowania go fprofile-use
jeszcze:
$ gcc -fprofile-use filename.c
Tym razem gcc będzie wykorzystywać tych danych z filename.gcda
celu optymalizacji dalej.
Po uruchomieniu pliku binarnego skompilowanego z -pg
wygeneruje on gmon.out
, który może być później użyty do analizy kodu za pomocą komendy gprof
. Jest to bardziej jak analiza statyczna, która dostarcza informacji o ścieżce kodu.