Compartilhar via


Referência: comandos vcperf

As ferramentas do Build Insights do C++ estão disponíveis a partir do Visual Studio 2019 e posterior. Para ver a documentação dessa versões, defina o controle seletor de Versão do Visual Studio para este artigo do Visual Studio 2019 ou posteriores. Ele é encontrado na parte superior da tabela de conteúdo nesta página.

Este artigo lista e descreve os comandos disponíveis em vcperf.exe e como usá-los.

Comandos para iniciar e parar rastreamentos

Importante

A menos que você especifique /noadmin, os comandos a seguir exigem privilégios administrativos.

Opção Argumentos e descrição
/start [/noadmin] [/nocpusampling] [/level1 | /level2 | /level3] <sessionName>
Inicia um rastreamento com o nome de sessão fornecido.

A /noadmin opção é executada vcperf.exe sem privilégios de administrador e ignora a /nocpusampling opção. Quando você executa vcperf sem privilégios de administrador, pode haver mais de uma sessão ativa em uma determinada máquina.

A /nocpusampling opção especifica vcperf.exe não coleta amostras de CPU. Ele impede o uso da exibição de Uso de CPU (Amostrado) no Windows Performance Analyzer, mas torna os rastreamentos coletados menores.

As /level1opções , /level2, ou /level3 especificam quais eventos MSVC coletar, em nível crescente de informações. O nível 3 inclui todos os eventos. O nível 2 inclui todos os eventos, exceto eventos de instanciação de modelo. O nível 1 inclui todos os eventos, exceto instanciação de modelo, função e eventos de arquivo. Se não for especificado, /level2 é selecionado por padrão.

Depois que vcperf.exe inicia o rastreamento, ele retorna imediatamente. O rastreamento coleta eventos em todo o sistema para todos os processos em execução no computador. Isso significa que você não precisa criar seu projeto na mesma janela de prompt de comando que a que você usa para executar vcperf.exe. Por exemplo, você pode criar seu projeto no Visual Studio.
/stop (1) [/templates] <sessionName> <outputFile.etl>
(2) [/templates] <sessionName> /timetrace <outputFile.json>
Interrompe o rastreamento identificado pelo nome da sessão fornecido. Executa uma etapa de pós-processamento no rastreamento para gerar um arquivo especificado pelo <outputFile> parâmetro.

A /templates opção inclui eventos de instanciação de modelo no arquivo.

(1) Gera um arquivo visível no Windows Performance Analyzer (WPA). O arquivo de saída requer uma .etl extensão.
(2) Gera um arquivo visível no visualizador de rastreamento do Microsoft Edge (edge://tracing). O arquivo de saída requer uma .json extensão.
/stopnoanalyze <sessionName> <rawOutputFile.etl>
Interrompe o rastreamento identificado pelo nome da sessão fornecido e grava os dados brutos não processados no arquivo de saída especificado. O arquivo resultante não se destina à visualização no WPA.

A etapa pós-processamento envolvida no comando /stop às vezes pode ser longa. Você pode usar o comando /stopnoanalyze para atrasar esta etapa pós-processamento. Use o /analyze comando quando estiver pronto para produzir um arquivo visível no Windows Performance Analyzer ou no visualizador de rastreamento do Microsoft Edge.

Comandos variados

Opção Argumentos e descrição
/analyze (1) [/templates] <rawInputFile.etl> <outputFile.etl>
(2) [/templates] <rawInputFile.etl> /timetrace <outputFile.json>
Aceita um arquivo de rastreamento bruto produzido pelo comando /stopnoanalyze. Executa uma etapa de pós-processamento nesse rastreamento para gerar o arquivo especificado pelo <outputFile> parâmetro.

A /templates opção inclui eventos de instanciação de modelo no arquivo.

(1) Gera um arquivo visível no Windows Performance Analyzer (WPA). O arquivo de saída requer uma .etl extensão.

(2) Gera um arquivo visível no visualizador de rastreamento do Microsoft Edge (edge://tracing). O arquivo de saída requer uma .json extensão.

Confira também

Introdução ao C++ Build Insights
Tutorial: noções básicas sobre o Windows Performance Analyzer
Referência: exibições do Windows Performance Analyzer
Windows Performance Analyzer