VSPerf

Applies to: yesVisual Studio noVisual Studio for Mac

Note

This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

Use the VsPerf command line tool to:

  1. Profile UWP apps from the command line when Visual Studio is not installed on the device.

  2. Profile Windows 8 desktop applications and Windows Server 2012 applications using the sampling profiling method.

    For more information about your profiling options, see Performance Tools on Windows 8 and Windows Server 2012 applications.

UWP apps only

These options apply only to UWP apps.

Option Description
/app:{AppName} Starts the profiler and waits for the specified app to be launched from the Start menu.

Run vsperf /listapps to view the app Name and PackageFullName of installed apps.
/package:{PackageFullName} Starts the profiler and waits for the specified app to be launched from the Start menu.

Run vsperf /listapps to view the app Name and PackageFullName of installed apps.
/js Required for profiling JavaScript apps.

Collect performance data from JavaScript apps.

Use only with /package or /attach.
/noclr Optional. Do not collect CLR data.

Use only with /package or /attach.

Optimization, no managed symbols will resolve.
/listapps List installed app Names and PackageFullNames.

Windows 8 desktop applications and Windows Server 2012 applications only

These options do not work on UWP apps.

Option Description
/launch:{Executable} Starts and begins profiling the specified executable file.
/args:{ExecutableArguments} Specifies command line arguments to pass the /launch target.
/console Runs the /launch target in a new command window.

All applications

These option apply to any Windows 8 or Windows Server 2012 application.

Option Description
/attach:{PID|ProcessName}[,PID|ProcessName]... Collects data from the specified processes.

Use Task Manager to view the process id (PID) and process names of running apps.
/file:{ReportName} Optional. Specifies output file (overwrites existing file).

Use only with /package or /attach.
/pause Pause data collection.
/resume Resume data collection.
/stop Stop data collection and terminate target processes.
/detach Stop data collection, but let target processes continue to run.
/status Show profiler status.

See also