Questions tagged [xperf]

xperf.exe is a tool from Windows SDK to control event tracing via designated Windows facility called ETW. The tool is often used for performance analysis and OS troubleshooting.

xperf.exe is a tool from Windows SDK Performance Kit to control event tracing via designated Windows facility called ETW (Event Tracing for Windows). Windows OS components are capable of emitting various ETW events corresponding to events in the Operating System. Examples are context switches and timer interrupts (for CPU profiling). xperf.exe can enable or disable emission of specific types of ETW events and save emitted events in log files for future analysis.

84 questions
3
votes
0 answers

How to properly define custom event time-stamp fields in ETW, to be used as StartTime and EndTime for gannt graph in WPA?

I'm interested in getting custom ETW events to display Start Time and End Time, like some default windows events do, in order to present it in gantt form, like so: I've hacked around Bruce Dawson's demo manifest and multi-provider files, to add…
Sirotnikov
  • 444
  • 4
  • 10
3
votes
0 answers

aggregating of function calls from WPR/xperf profiling data, e.g. KCacheGrind?

Is it possible to load WPR/xperf profiling data into KCacheGrind? Or is there a way to aggregate function calls in WPA directly? Or some other tool? Would the gprof2dot/graphviz route be the best option? I find WPA useful, but grouping by stack…
JDiMatteo
  • 12,022
  • 5
  • 54
  • 65
3
votes
3 answers

Is DisablePagingExecutive required to allow xPerf to stackwalk for a 32-bit application running on 64-bit Windows

I have two questions: I found a blog entry saying that DisablePagingExecutive should be set when using xperf: http://blogs.msdn.com/b/pigscanfly/archive/2009/08/06/stack-walking-in-xperf.aspx Disable Paging Executive In order for tracing to work…
user2414574
  • 45
  • 1
  • 4
3
votes
2 answers

windows performance recorder record specific process

Using the Windows Performance Recorder, is it possible to generate an ETL file based on the tracing of a single process? The ETL files generated for all of the processes in the system result in ETL files measured in GBs for intervals as small as a…
DenizEng
  • 400
  • 4
  • 14
3
votes
2 answers

Viewing event data with XPerf?

I'm experimenting with using XPerf to instrument an application for performance analysis. My goal is to log start/stop events within my C# application and analyse certain kernel metrics between these events. I am creating a TraceListener and…
simonhaines
  • 481
  • 7
  • 22
2
votes
3 answers

xperf callstack tracing, specific to dlls

I'm running into some problems getting full call stacks with my xperf traces. This is on a Win7 64bit pc. At a higher level, I have an exe that loads several dlls, which also do the bulk of the work. All pdb files are in a single directory, and I…
g3cko
  • 920
  • 1
  • 6
  • 21
2
votes
1 answer

Analyze Network events with xperf

I have written a small tcp-client/server-thing for testing the xperf-networkttrace capabilities. But as it seems I did do something wrong with xperf. When I use the Xperf kernel group NETWORK or DIAG+NETWORKTRACE it just shows me the "casual" stuff…
Juarrow
  • 2,232
  • 5
  • 42
  • 61
2
votes
0 answers

Does an Image control release a BitmapImage's source?

Is a BitmapImage's source released automatically after it is shown in the UI? I'm seeing that after a BitmapImage is shown once in an Image control, showing it again takes ~300ms. During that delay nothing is drawn on the screen. Profiling with…
Tristan
  • 1,466
  • 1
  • 16
  • 24
2
votes
1 answer

XPerfViewer with the new Storport Provider?

Does anyone know of a way to parse out disk latency information from the new Storport provider with XPerfViewer (or any other tool)? I used the following article to capture a…
Pam Lahoud
  • 1,095
  • 6
  • 9
2
votes
1 answer

Xperfview: What's the difference between CPU sampling and CPU Usage?

This question pertains to xperf and xperfview, utilities that are part of the Windows Performance Toolkit (in turn part of Windows SDK 7.1). Comparing two charts, "CPU sampling by thread" and "CPU Usage by thread", there are several differences I…
Phill
  • 65
  • 1
  • 7
2
votes
1 answer

Why is there no call stack for "generic events"

I did read Capture callstack and events in Xperf and other sources, but the most straightforward thing I'd like to do is simply display the "Stack" column in WPA's "Generic events" graph. Why is it not there? Sure, because stack information is not…
user5873943
2
votes
2 answers

How I profile multithreading problems?

This is the first time I am trying to profile a multi-threaded program. I suspect the problem is it waiting for something, but I have no clue what, the program never reaches 100% of CPU, GPU, RAM or I/O use. Until recently, I've only worked on…
speeder
  • 6,197
  • 5
  • 34
  • 51
2
votes
1 answer

WPA shows NIC driver DPC fragment running for 232 milliseconds

I'm stress testing my UDP proxy on a machine with 8 logical CPUs. At around 14 thousand UDP clients, one of the CPUs (CPU 4) starts spiking and UDP throughput (as shown by Task Manager) plummets to zero. I used WPR to record CPU usage during the…
Marc Sherman
  • 2,303
  • 14
  • 22
2
votes
1 answer

How do I trace a custom allocator using xperf's heap profiling tools?

xperf (part of Windows Performance Analysis Toolkit) is very helpful in tracking memory usage with its heap analysis. However, my app uses a custom allocator -- it grabs chunks via VirtualAlloc directly and manages its own heap. I'd like to…
vvuk
  • 164
  • 1
  • 7
2
votes
2 answers

Error viewing xperf ETL file on another machine

I have a machine with Windows 8.1 and the ADK (xperf 6.3.9600) installed. I have another machine with Windows 7 SP1 and the 8.1 ADK (xperf 6.3.9600) installed. If I use xperf to generate a trace on the 8.1 machine, I cannot load that trace on the…
Miral
  • 12,637
  • 4
  • 53
  • 93