Defrag Tools #113 - PerfView Part 1

Sign in to queue

Description

In this episode of Defrag Tools, Vance Morrison joins Andrew Richards and Chad Beeder to discuss his performance analysis tool, PerfView. In part 1 of this series, we demonstrate downloading and installing the tool, and collecting traces.

Resources:
Download PerfView from Microsoft Download Center
PerfView Tutorial on Channel 9

Timeline:
[00:00] Introduction to Vance Morrison, .Net Performance Architect
[01:15] Downloading and installing PerfView
[03:15] Running the tool, getting started with the intro documentation and videos
[05:32] Collecting an ETW trace (compare and contrast with other tracing tools like Xperf command line and Windows Performance Recorder)
[09:34] Collecting a trace via command line
[10:53] Viewing statistics and size of collected trace
[12:43] Thread Time collection option - when to enable it (wall clock time vs. CPU time)
[15:00] Circular MB limiting option
[17:12] Automatically stop tracing when a particular condition is hit

Next week: Analyzing a trace with PerfView!

Embed

Download

The Discussion

  • User profile image
    Magic​Andre1981

    Looks like I'm the only one who likes pure xperf commandline. I want to control of what I want to trace. Even PerfView enables so many Providers (JS, "Metro" UI Events) that I don't care.

  • User profile image
    Barony

    @MagicAndre1981: I just came to the situation that I am seeing some warnings in SCCM related to the fragmentation of my W2K12 Domain Controllers disks. They all need a file defragmentation (-d) since they have file level fragmentation around 37% and 40% in their logical disks.

    I understand the cost of doing this in DCs, specifically in normal work hours. We will need to schedule this during off hours.

  • User profile image
    Magic​Andre1981

    I don't understand your reply to my.

  • User profile image
    Vancem

    @MagicAndre1981: For what it is worth, While the default is designed to get the common case, PerfView gives you easy, complete control.   In particular

    PerfView /kernelEvent=none /clrEvents=none /providers=YOUR_PROVIDERS collect

    Will only enable YOUR_PROVIDERS.  There is a shortcut for that

    PerfView /onlyProviders=YOUR_PROVIDERS

    However the first form is nicer if you do want some of the kernel events or CLR events.   The later form is great if you just want to turn on your specific EventSource.  

Add Your 2 Cents