Concurrency Visualizer: Avoiding Interference During Profile Collection

Those of you who are used to doing performance analysis can appreciate the value of reducing interference between your application and other applications and services running on the system under study.  So far, I’ve been using the Visual Studio IDE to show you how you can collect and analyze a profile.  Since Visual Studio itself…


Concurrency Visualizer: Linking Visualizations to Application Phases

In my PDC 2008 presentation, I showed how the Concurrency Visualizer in Visual Studio 2010 allows users the option of instrumenting their code in order to link the visualizations with application constructs or phases of execution.  The Concurrency Visualizer does not require any instrumentation to function, but for some complex application scenarios, it is often…


VS2010 Concurrency Visualizer: Parallel Performance Demystified!

Hi, In my previous post, I mentioned the “Demystify” feature of our tool that isn’t quite working in the VS2010 Beta 2 release (Premium and Ultimate versions).  Our team has now placed a web-based preview of this feature on our Team Blog.  Demystify is a great way of learning about our tool’s features and it…


VS2010 Beta 2 Concurrency Visualizer Parallel Performance Tool Improvements

Hi, I’m very excited about the release of Visual Studio 2010 Beta 2 that is going to be available to MSDN subscribers today and to the general public on 10/21.  This release includes significant improvements in many areas that I’m sure you’ll love.  But, as the Architect of the Concurrency Visualizer tool in the VS2010 profiler, I’m extremely…


Performance Pattern 2: Disk I/O

A common source of performance bugs is disk I/O.  In this blog, I’m going to give an overview of the features in our tool that help developers understand source of I/O stalls, including determining latency, files involved, and relating behavior to application source code. The first screenshot, shown above illustrates how I/O stalls are depicted in…


Performance Pattern 1: Identifying Lock Contention

In this article, I describe the first of a series of Performance Patterns that you can use the VSTS concurrency visualization tool to identify.  I thought that it would be appropriate to start with a simple lock contention scenario.  The code that I will use is a naive parallel matrix multiplication of two SIZE x SIZE…


VS2010: How to use the Parallel Performance Analysis Tools

This is a second post in the series about the parallel performance tools that my team is shipping in VS2010. In the previous post, I gave a quick overview of the features of our tools.  In this post, I will demonstrate how you can start analyzing your multithreaded application’s performance using the VS2010 Beta 1…


Visual Studio 2010 Beta 1: Parallel Performance Tools Overview

Today, Microsoft’s Developer Division released Visual Studio 2010 Beta 1 for general download.  VS2010 is a fully installable release that you can use to preview the great features that we have been working on.  I’m especially excited about the beta release of the parallel performance analysis tools that my team has been working hard on. …


MVP Summit 2009 Presentations on Visual Studio Parallel Performance Tools

I’m excited to be presenting our work on parallel performance tools in Visual Studio 2010 to Microsoft MVPs today.  I will be covering the features of our tools and improvements that we have made since PDC for native and managed developers.  I’m looking forward to a healthy discussion and any follow-ups here.