Zmienne środowiskowe dla optymalizacji sterowanych profilem

Istnieją trzy zmienne środowiskowe, które mają wpływ na scenariusze testowe na obrazie utworzonym za pomocą /LTCG:PGI na potrzeby optymalizacji z przewodnikiem profilu:

  • Pogo Sejf Mode określa, czy używać trybu szybkiego, czy trybu bezpiecznego na potrzeby profilowania aplikacji.

  • VCPROFILE_ALLOC_SCALE dodaje dodatkową pamięć do użycia przez profilera.

  • VCPROFILE_PATH umożliwia określenie folderu używanego dla plików pgc.

Zmienne środowiskowe Pogo Sejf Mode i VCPROFILE_ALLOC_SCALE są przestarzałe, począwszy od programu Visual Studio 2015. Opcje konsolidatora /GENPROFILE lub /FASTGENPROFILE i /USEPROFILE określają to samo zachowanie konsolidatora co te zmienne środowiskowe.

PogoSafeMode

Ta zmienna środowiskowa jest przestarzała. Użyj argumentów EXACT lub NOEXACT do /GENPROFILE lub /FASTGENPROFILE, aby kontrolować to zachowanie.

Wyczyść lub ustaw zmienną środowiskową Pogo Sejf Mode, aby określić, czy używać trybu szybkiego, czy trybu bezpiecznego do profilowania aplikacji w systemach x86.

Optymalizacja sterowana profilem (PGO) ma dwa możliwe tryby w fazie profilowania: tryb szybki i tryb awaryjny. Gdy profilowanie jest w trybie szybkim, używa instrukcji INC w celu zwiększenia liczników danych. Instrukcja INC jest szybsza, ale nie jest bezpieczna wątkowo. Podczas profilowania jest w trybie awaryjnym, używa instrukcji LOCK INC w celu zwiększenia liczników danych. Instrukcja LOCK INC ma taką samą funkcjonalność jak instrukcja INC i jest bezpieczna wątkowo, ale jest wolniejsza niż instrukcja INC.

Domyślnie profilowanie PGO działa w trybie szybkim. Tryb Pogo Sejf Mode jest wymagany tylko wtedy, gdy chcesz użyć trybu bezpiecznego.

Aby uruchomić profilowanie PGO w trybie awaryjnym, należy użyć zmiennej środowiskowej Pogo Sejf Mode lub przełącznika konsolidatora /Pogo Sejf Mode, w zależności od systemu. Jeśli wykonujesz profilowanie na komputerze x64, musisz użyć przełącznika konsolidatora. Jeśli wykonujesz profilowanie na komputerze x86, możesz użyć przełącznika konsolidatora lub ustawić zmienną środowiskową Pogo Sejf Mode na dowolną wartość przed rozpoczęciem procesu optymalizacji.

Składnia pogo Sejf Mode

set Pogo Sejf Mode[=value]

Ustaw wartość Pogo Sejf Mode na dowolną wartość, aby włączyć tryb awaryjny. Ustaw bez wartości, aby wyczyścić poprzednią wartość i ponownie włączyć tryb szybki.

VCPROFILE_ALLOC_SCALE

Ta zmienna środowiskowa jest przestarzała. Użyj argumentów MEMMIN i MEMMAX do /GENPROFILE lub /FASTGENPROFILE, aby kontrolować to zachowanie.

Zmodyfikuj zmienną środowiskową VCPROFILE_ALLOC_SCALE , aby zmienić ilość pamięci przydzielonej do przechowywania danych profilu. W rzadkich przypadkach nie będzie wystarczającej ilości pamięci do obsługi zbierania danych profilu podczas uruchamiania scenariuszy testowych. W takich przypadkach można zwiększyć ilość pamięci, ustawiając VCPROFILE_ALLOC_SCALE. Jeśli podczas przebiegu testu zostanie wyświetlony komunikat o błędzie wskazujący, że masz niewystarczającą ilość pamięci, przypisz większą wartość do VCPROFILE_ALLOC_SCALE, dopóki przebieg testu nie zakończy się bez błędów braku pamięci.

składnia VCPROFILE_ALLOC_SCALE

set VCPROFILE_ALLOC_SCALE[=scale_value]

Parametr scale_value jest czynnikiem skalowania ilości pamięci potrzebnej do uruchamiania scenariuszy testowych. Wartość domyślna to 1. Na przykład ten wiersz polecenia ustawia współczynnik skalowania na 2:

set VCPROFILE_ALLOC_SCALE=2

VCPROFILE_PATH

Użyj zmiennej środowiskowej VCPROFILE_PATH , aby określić katalog do tworzenia plików pgc. Domyślnie pliki pgc są tworzone w tym samym katalogu co profilowany plik binarny. Jeśli jednak ścieżka bezwzględna pliku binarnego nie istnieje, tak jak w przypadku uruchamiania scenariuszy profilu na innej maszynie, z której utworzono plik binarny, można ustawić VCPROFILE_PATH na ścieżkę istniejącą na maszynie docelowej.

składnia VCPROFILE_PATH

ustaw VCPROFILE_PATH[=ścieżka]

Ustaw parametr path na ścieżkę katalogu, w której chcesz dodać pliki pgc. Na przykład ten wiersz polecenia ustawia folder na C:\profile:

set VCPROFILE_PATH=c:\profile

Zobacz też

Optymalizacje sterowane profilem
/GENPROFILE i /FASTGENPROFILE
/USEPROFILE