SPDConvert

Pomocí SPDConvert můžete připravovat a spravovat data vzorových profilů pro optimalizaci Sample Profile-Guided Optimization (SPGO).

Tento nástroj koreluje nezpracované hardwarové vzorky v souborech SPT s strukturou kódu v SPD. Tento krok provádí ukázkovou korelaci, vyhlazování toku a rozhodování o velikosti a rychlosti a vytvoří obohacený soubor SPD s počtem spuštění anotovanými v grafu toku.

V jednom převodu můžete kombinovat data z více zdrojů, jako jsou srovnávací testy testovacího prostředí, interní monitorování a produkční telemetrie. Pokud chcete zdůraznit důležitost konkrétního scénáře, můžete jeho soubor SPT zadat několikrát. Uvedení kritického benchmarku SPT třikrát ve výsledku ztrojnásobí jeho váhu.

Tento nástroj funguje ve třech režimech:

  • import data .SPT do souboru .SPD pro sestavení /SPGO
  • extrahuje vložený . SPD soubor z . PDB
  • sloučit více souborů .SPD z jednotlivých běhů profilování

SPDConvert funguje se třemi typy souborů:

  • ETL (záznam trasování událostí) Nezpracované hardwarové události výkonu zaznamenané pomocí xperf
  • SPT (Sample Profile Trace) zabalené ukázkové události vytvořené pomocí SPTAggregate ze souborů ETL
  • SpD (ukázková databáze profilu) Zpracovávala data profilu používaná kompilátorem během optimalizovaného sestavení. Soubory SPD můžete také vložit do souborů symbolů PDB během /spdembed sestavení.

Syntax

Import dat SPT do existujícího souboru SPD:

SPDConvert [možnosti] spdfilesptfile(s)

Extrahujte vložený soubor SPD z PDB:

SPDConvert /extractpdbfilespdfile

Sloučení několika souborů SPD do jednoho:

SPDConvert /mergeoutputspdfilespdfile(s)

Parametry

REŽIM IMPORTU

možnosti
V režimu importu zadejte následující možnosti:

  • /režim:<IP|LBR> Zvolte režim profilu. IP použijte pro data profilu instrukčního ukazatele (výchozí) nebo LBR pro data profilu záznamu posledního větvení.
  • /Obnovit: Obnovte počet na 0. Tato akce ignoruje spT. Tuto možnost použijte k resetování souboru SPD před importem nových dat nebo k vytvoření prázdného souboru SPD, pokud zadaný soubor neexistuje.
  • /sptlist:<Soubor> Zadejte názvy souborů SPT v textovém souboru s jedním názvem souboru na řádek.
  • /Shrnutí Vytiskněte souhrn souboru SPD.
  • /Pomoc Zobrazení informací nápovědy

spdfile
Soubor SPD pro import ukázkových dat do.

sptfiles
Jeden nebo více souborů SPT, které chcete importovat. Soubory SPT jsou vytvořeny SPTAggregate.

REŽIM EXTRAKCE (/extrakce)

pdbfile
Soubor PDB, který obsahuje vložené SPD.

spdfile
Výstupní soubor SPD, který chcete vytvořit.

SLUČOVACÍ REŽIM (/sloučení)

outputspdfile
Výstupní soubor SPD, který chcete vytvořit.

/Odejít:<N> Nastavte rychlost vyřazení dat profilu na N/16, kde 0 ≤ N ≤ 16. Výchozí hodnota je 8. Tato hodnota určuje, kolik existujících dat v spD se má odstranit při přidávání nových dat SPT. Například /retire:8 před přidáním nových dat SPT odstraní 8/16 (polovinu) existujících dat. Toto nastavení váží novější profilová data silněji, protože zahodí polovinu starších dat. Dva nejběžnější způsoby použití jsou /retire:0, které přisuzuje stejnou váhu všem spuštěním profilování, nebo /retire:16, aby se započítávala pouze nejnovější data, protože odstraní všechna stará data. Pomocí /retire:N můžete řídit, jak agresivně SPDConvert potlačuje starší data v profilu. Tento koncept "přenést dál" umožňuje aktualizovat profil pomocí existujících dat SPD, aniž byste začali s novými daty profilace, což je časově náročné. Tento koncept je podrobněji rozebrán v návodu SPGO – Opětovné použití informací SPD mezi buildy.

spdfiles
Jeden nebo více souborů SPD, které chcete sloučit.

Remarks

Note

Spusťte tento nástroj z příkazového řádku Visual Studio developer.

SPDConvert je hlavní nástroj pro převod v pracovním postupu SPGO. Po shromáždění trasovacích dat pomocí xperf a jejich převedení do souboru SPT pomocí SPTAggregate použijte SPDConvert k importu ukázkových dat do souboru SPD. Předejte výsledný soubor SPD kompilátoru pomocí příznaku /SPGO k sestavení optimalizovaného binárního souboru.

Slouží /extract k obnovení souboru SPD, který byl vložen do souboru PDB během /SPGO sestavení. Pomocí /merge zkombinujte soubory SPD z více profilovacích relací před opětovným sestavením.

Identifikátor GUID a věk binárního souboru se musí shodovat mezi soubory SPT a SPD. Pokud neodpovídají, SPDConvert hlásí chybu „Verze SPD není kompatibilní“. Slouží SPTDump /progid ke kontrole binárních identifikátorů v souboru SPT a SPDDump /header ke kontrole souboru SPD.

Identifikátor GUID a stáří binárního souboru zaznamenaného v souboru SPD musí odpovídat souboru SPT. Chcete-li diagnostikovat tuto chybu, použijte SPTDump /progid ke kontrole binárních identifikátorů v souboru SPT a SPDDump /header ke kontrole souboru SPD. Platný soubor SPD se používá v co největší míře. Menší aktualizace kódu, který nemění tok řízení programu, jsou tolerovány. Nezměněné funkce také používají data pro optimalizaci. Pokud zadáte platné, ale jinak nesouvisející SPD, proces funguje, ale pravděpodobně nebudou pro optimalizaci použitelná žádná data.

Example

Tento příklad importuje data profilu LBR ze souboru SPT do souboru SPD:

SPDConvert /mode:LBR sample.spd sample.spt

Tento příklad importuje data profilu PROTOKOLU IP pomocí seznamu souborů SPT:

SPDConvert /mode:IP /sptlist:mysptfiles.txt sample.spd

Tento příklad vytiskne souhrn dat profilu v souboru SPD:

SPDConvert /summary sample.spd

Tento příklad extrahuje vložené SPD ze souboru PDB:

SPDConvert /extract sample.pdb sample_extracted.spd

Tento příklad sloučí dva soubory SPD z různých spuštění profilace:

SPDConvert /merge combined.spd run1.spd run2.spd

Viz také

Návod: Použití optimalizace řízené profilem pomocí vzorkování (SPGO) ke zvýšení výkonu
SPDDump
SPTAggregate
SPTDump