Vance Morrison's Weblog

Vance Morrison is currently an Architect on the .NET Runtime Team, specializing in performance issues with the runtime or managed code in general.

PerfView Hard Core CPU Investigations (Using CPU Counters) on Windows 10

One of the bread-and-butter investigations that people use the PerfView profiling tool for is a CPU...

Author: Vance Morrison Date: 03/14/2019

Diagnosing .NET Core ThreadPool Starvation with PerfView (Why my service is not saturating all cores or seems to stall).

This article is worth a read if you have A service written in .NET (and in particular .NET ASP.NET...

Author: Vance Morrison Date: 10/16/2018

Debugging through the .NET Core framework using VSCode (e.g. on Linux)

In my blog 'Debugging Through the .NET Core framework' I give specific instructions for setting...

Author: Vance Morrison Date: 07/02/2018

Update: Debugging Through the .NET Core Framework V2.0.3+ (Windows)

This blog shows you how to debug through the .NET Core source code using Visual Studio.  There is a...

Author: Vance Morrison Date: 12/20/2017

PerfView: How to .NET Core Framework Symbols and Source (On Windows)

In a previous blog on using PerfView with .NET Core  I pointed out that free PerfView profiling tool...

Author: Vance Morrison Date: 12/15/2016

Performance Analysis on .NET Core applications with PerfView (on Windows)

Back in July, the .NET Runtime Team shipped the first official version of .NET Core.    .NET Core is...

Author: Vance Morrison Date: 11/02/2016

Collecting Performance Data on Linux using PerfCollect and PerfView.

In a previous post on Linux Tracing I described how it was possible to collect traces of CPU samples...

Author: Vance Morrison Date: 10/07/2016

PerfView is now Open Source On GitHub

I am happy to announce, that the PerfView source code is now open source as a GitHub repository....

Author: Vance Morrison Date: 09/18/2016

Encore Presentation Measure Early and Often For Performance

Back in 2008 I wrote a two-part MSDN article (April 2008 and May 2008) about the basics of...

Author: Vance Morrison Date: 05/13/2016

Things I learned about Performance Investigation : My talk at Perf@Scale conference

Last Wednesday, I gave a talk at the one day Perf@Scale conference entitled 'Keys to Actionable...

Author: Vance Morrison Date: 03/01/2016

Encore Presentation: Understand the Impact of Low-Lock Techniques in Multithreaded Apps

Back in October 2005 I wrote a MSDN article entitled Understand the Impact of Low-Lock Techniques in...

Author: Vance Morrison Date: 02/27/2016

Encore Presentation: What Every Dev Must Know About Multithreaded Apps

Back in August 2005 I wrote a MSDN article entitled What Every Dev Must Know About Multithreaded...

Author: Vance Morrison Date: 02/27/2016

Histograms with PerfView (Ad-hoc Data Analysis).

In my blog on external profile data in PerfView as well as my blog on disk space analysis and Linux...

Author: Vance Morrison Date: 02/20/2016

Using PerfView on 'External' data (e.g. Other Profilers)

Executive Summary If you want to emit JSON or XML data that PerfView can simply view in the stack...

Author: Vance Morrison Date: 02/20/2016

What is using up all my Disk Space? Using PerfView for Directory Size Analysis

In my last blog entry, I talked about the fact that PerfView's stack view can be used on all sorts...

Author: Vance Morrison Date: 02/20/2016

Analyzing CPU traces from Linux with PerfView

Executive Summary If you want to use PerfView to view Linux profile data see the Help->Viewing...

Author: Vance Morrison Date: 02/20/2016

PerfView Version 1.9 Released to the Web

Today I have updated the PerfView Download Site, to version 1.9 of the program. In particular this...

Author: Vance Morrison Date: 02/19/2016

Issue with Symbols Lookup with PerfView V1.8 collecting on older OS version

I wanted to blog about this just to increase the visibility of this bug since it may me more common...

Author: Vance Morrison Date: 01/25/2016

Just For Fun: Instructions for building a Marble Tree Using a Laser Cutter.

Over 15 years ago I was visiting some relatives and they showed me a toy that they had bought called...

Author: Vance Morrison Date: 11/14/2015

Dynamically Defined Events in EventSource V4.6

In a previous blog I talked about the second of three interesting features of the new Version of...

Author: Vance Morrison Date: 10/02/2015

Rich Payload Data in EventSource V4.6.

In a previous blog I talked about the first of three interesting features of the new Version of V4.6...

Author: Vance Morrison Date: 09/20/2015

EventSource Activity Support Demo Code

In yesterday's blog post, wrote a summary of the new support in .NET V4.6 for Activities. In...

Author: Vance Morrison Date: 09/15/2015

Exploring EventSource Activity (correlation and causation) Features

In this post we will be going over the New EventSource Activity support introduced in .NET version...

Author: Vance Morrison Date: 09/14/2015

Version 1.8 of PerfView is now on the Download Center

This is to let you know that the PerfView Download Site has been updated to version 1.8 today. The...

Author: Vance Morrison Date: 09/02/2015

Version 1.1.24 of the EventSource NuGet Package marked as STABLE

As some of you may know, since last August, there has been a Prelease version of EventSource 1.1...

Author: Vance Morrison Date: 05/11/2015

Starting a couple of Defrag Tools #113 - PerfView Part 1months ago I did a series of Channel 9...

Author: Vance Morrison Date: 01/28/2015

PerfView Version V1.7 released to the web.

It has been a 9 months since the last public version of PerfView, so today I have updated the...

Author: Vance Morrison Date: 11/03/2014

More on using EventSources with XPERF or WPR

In my introduction to EventSource blog, I showed a simple example of using EventSource to log ETW...

Author: Vance Morrison Date: 04/10/2014

Walk Through Getting Started with ETW TraceEvent NuGet Samples package

In a previous post, I talked about the TraceEvent NuGet Library, which allows you to read and...

Author: Vance Morrison Date: 03/15/2014

New Version of PerfView available at the download center

This is a quick announcement that I have refreshed the version of PerfView at the PerfView Download...

Author: Vance Morrison Date: 02/07/2014

TraceEvent Nuget package has moved from Prelease to Stable

Back in August in this blog enty, I announced that the TraceEvent Library Nuget Package and the...

Author: Vance Morrison Date: 01/03/2014

TraceEvent NuGet package moves from Beta to Release Candidate (RC) status

In my August blog I announced that the TraceEvent library for parsing Event Tracing for Windows...

Author: Vance Morrison Date: 12/10/2013

PerfView version 1.5 has been released

It has been over 6 months since the last public release of PerfView, so I felt it was time to...

Author: Vance Morrison Date: 12/09/2013

TraceEvent ETW Library published as a NuGet Package

I am happy to report that the TraceEvent Library Nuget Package and the TraceEvent Library Samples...

Author: Vance Morrison Date: 08/15/2013

WPR/WPA Support for Viewing System.Diagnostics.Tracing.EventSource

Up until now, when I have demonstrated how to use the System.Diagnostics.Tracing.EventSource to...

Author: Vance Morrison Date: 08/10/2013

The EventSource NuGet package and support for the Windows Event Log (Channel Support)

One of the more common questions we get about the System.Diagnostics.Tracing.EventSource class is...

Author: Vance Morrison Date: 08/10/2013

Updated Instructions for collecting ETW data on a ARM WinRT device (e.g. Surface)

I have updated my blog entry on collecting ETW data on an ARM WinRT device. Previously I told you to...

Author: Vance Morrison Date: 05/09/2013

PerfView does JavaScript investigations too

Do you have a windows store JavaScript/HTML applications that needs performance tuning? PerfView can...

Author: Vance Morrison Date: 04/02/2013

Using TraceEvent to mine information in OS registered ETW providers

In previous blocks on TraceEvent I shows you how easy it was to start up ETW sessions to collect...

Author: Vance Morrison Date: 03/09/2013

More Support for EventSource and strongly typed logging: The Semantic Logging Application Block

If you have been following my blog at all, you have seen my articles about...

Author: Vance Morrison Date: 03/09/2013

A Lab on investigating Memory Performance with PerfView

As part of a conference that I participated in this week, I have created a lab on using PerfView to...

Author: Vance Morrison Date: 02/27/2013

New version of TraceEvent / PerfMonitor Posted to bcl.codeplex.com

For several years now, I have had code called the 'TraceEvent library' that allows you to access ETW...

Author: Vance Morrison Date: 01/07/2013

Why doesn't my EventSource produce any events?

This is a quick entry to warn about a pitfall that you are likely to run into sooner or later if you...

Author: Vance Morrison Date: 12/21/2012

Using TraceSource to log ETW data to a file

Yesterday's blog post was showing how you can use EventSource to generate ETW events and the...

Author: Vance Morrison Date: 12/20/2012

How many samples are enough when using a sample based profiler in a performance Investigation?

Performance analysis is my job, and so I answer a lot of questions about perf, and this blog is...

Author: Vance Morrison Date: 12/20/2012

An End-To-End ETW Tracing Example: EventSource and TraceEvent

I have already made a series of blogs about EventSource starting with my tutorial introduction to...

Author: Vance Morrison Date: 12/20/2012

Collecting ETW/PerfView data on an Windows RT (WinRT, ARM, Surface) device

If any of you have tried to run PerfView a Surface or other WinRT device, you will find that it does...

Author: Vance Morrison Date: 12/19/2012

Video: Wall clock time analysis of ASP.NET Applications using PerfView

ASP.NET applications are one of the more common uses of .NET code today, and the PerfView tool has...

Author: Vance Morrison Date: 11/28/2012

Next>