共用方式為


特性指引最佳化的環境變數

有三個環境變數會影響使用 /LTCG:PGI 建立之映射上的測試案例,以進行設定檔引導式優化:

  • Pogo保管庫Mode 會指定使用快速模式或安全模式進行應用程式分析。

  • VCPROFILE_ALLOC_SCALE會新增額外的記憶體以供分析工具使用。

  • VCPROFILE_PATH可讓您指定用於 .pgc 檔案的資料夾。

從 Visual Studio 2015 開始,Pogo保管庫Mode 和VCPROFILE_ALLOC_SCALE環境變數已被取代。 連結器選項 /GENPROFILE 或 /FASTGENPROFILE 和 /USEPROFILE 會指定與這些環境變數相同的連結器行為。

PogoSafeMode

此環境變數已被取代。 對 /GENPROFILE 或 /FASTGENPROFILE 使用 EXACT NOEXACT 引數 來控制此行為。

清除或設定 Pogo保管庫Mode 環境變數,以指定在 x86 系統上使用快速模式或安全模式進行應用程式分析。

分析引導優化 (PGO) 在分析階段有兩種可能模式: 快速模式 和安全 模式 。 分析處於快速模式時,它會使用 INC 指令來增加資料計數器。 INC 指令較快,但不是安全線程。 分析處於安全模式時,它會使用 LOCK INC 指令來增加資料計數器。 LOCK INC 指令具有與 INC 指令相同的功能 ,而且是安全線程,但速度比 INC 指令慢。

根據預設,PGO 分析會以快速模式運作。 只有在您想要使用安全模式時,才需要 Pogo保管庫Mode

若要以安全模式執行 PGO 分析,您必須根據系統使用環境變數 Pogo保管庫Mode 或連結器參數 /Pogo保管庫Mode 。 如果您要在 x64 電腦上執行分析,則必須使用連結器參數。 如果您要在 x86 電腦上執行分析,您可以在開始優化程式之前,先使用連結器參數或將 Pogo保管庫Mode 環境變數設定 為任何值。

Pogo保管庫Mode 語法

set Pogo保管庫Mode [ = value ]

將 Pogo保管庫Mode 設定 為任何值以啟用安全模式。 設定沒有值以清除先前的值,然後重新啟用快速模式。

VCPROFILE_ALLOC_SCALE

此環境變數已被取代。 使用 MEMMIN MEMMAX 引數至 /GENPROFILE /FASTGENPROFILE 來控制此行為。

修改VCPROFILE_ALLOC_SCALE 環境變數,以變更配置來保存設定檔資料的記憶體數量。 在罕見的情況下,在執行測試案例時,沒有足夠的記憶體可支援收集設定檔資料。 在這些情況下,您可以藉由設定 VCPROFILE_ALLOC_SCALE 來增加記憶體數量。 如果您在測試回合期間收到錯誤訊息,指出記憶體不足,請將較大的值指派給 VCPROFILE_ALLOC_SCALE ,直到測試執行完成且沒有記憶體不足的錯誤為止。

VCPROFILE_ALLOC_SCALE語法

set VCPROFILE_ALLOC_SCALE [ = scale_value ]

scale_value 參數是執行測試案例所需記憶體數量的縮放比例。 預設為 1。 例如,此命令列會將縮放比例設定為 2:

set VCPROFILE_ALLOC_SCALE=2

VCPROFILE_PATH

使用 VCPROFILE_PATH 環境變數來指定目錄來建立 .pgc 檔案。 根據預設,.pgc 檔案會建立在與所分析二進位檔相同的目錄中。 不過,如果二進位的絕對路徑不存在,當您在不同的電腦上執行設定檔案例時,與建置二進位檔不同的電腦時,您可以將VCPROFILE_PATH 設定 為目的電腦上存在的路徑。

VCPROFILE_PATH語法

set VCPROFILE_PATH [ = path ]

path 參數設定為要在其中新增 .pgc 檔案的目錄路徑。 例如,此命令列會將資料夾設定為 C:\profile:

set VCPROFILE_PATH=c:\profile

另請參閱

特性指引最佳化
/GENPROFILE 和 /FASTGENPROFILE
/USEPROFILE