Concurrency Visualizer SDK: Advanced Visualization Techniques

In the previous entry, I described basic usage scenarios of the Concurrency Visualizer SDK.  In this entry, I will illustrate techniques to gain tighter control over the way you visualize meaningful events in your application. The Application To best illustrate the concepts in this entry, I’ll use a fictional weather simulation app.  It simulates changes…

0

Introducing the Concurrency Visualizer SDK

The Concurrency Visualizer displays rich data related to CPU thread behavior, DirectX activity, and disk I/O, among other things.  This information can be incredibly valuable when investigating application behavior, but sometimes it’s difficult to quickly understand how the data displayed in the Concurrency Visualizer maps to application behavior.  For this reason, we’ve added the Concurrency…

12

Interested in debugging your C++ AMP application?

You may have heard about C++ Accelerated Massive Parallelism (C++ AMP) that lets you leverage the power of GPU in parallel computing. Aren’t you all excited about it? Don’t you want to try your hand at it? Now it is the time with Visual Studio 11 Ultimate Developer Preview on Windows Developer Preview. You can write, build and…


The Garbage Collector Manages my Memory

Profiling a .NET application with the Concurrency Visualizer in Visual Studio 11Developer Preview has a less noisy Synchronization profile report than in Visual Studio 2010. The reason is because synchronizing withthe thread driving garbage collection is now categorized as Memory Management.Without this re-categorization, the Synchronization profile report can list outany method as having been blocked by…

2

New Channel 9 video

MSDN Channel 9 recently published a group interview about the upcoming version of the Concurrency Visualizer: https://channel9.msdn.com/posts/Visual-Studio-vNext-Concurrency-Visualizer

0

Performance Improvements for the Concurrency Visualizer

Downloading Symbols As mentioned in http://blogs.msdn.com/b/visualizeparallel/archive/2011/09/19/how-can-visual-studio-11-developer-preview-visualize-the-behavior-of-a-multithreaded-application.aspx there are noticeable performance improvements to the Concurrency Visualizer in Visual Studio 11 Developer Preview. One source of the performance improvements is that it uses the fastest code, i.e., the fastest code is code that never runs. When the Concurrency Visualizer is opening the trace files generated by Event…

0

Profiling DirectX Activity

In Visual Studio 11 Developer Preview the Concurrency Visualizer highlights the way the traced process makes use of DirectX. To see how Internet Explorer 9 makes use of the GPU give the HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\TabProcGrowth registry key a value of 0. Internet Explorer will then only use one process per window. Navigate Internet Explorer to a…

4

I know I’m doing more File I/O than this

One of the changes made to the Concurrency Visualizer in Visual Studio 11 Developer Preview is that it no longers shows all of the disk I/O activity for the System process in the disk I/O swim lanes. In Visual Studio 2010 the disk I/O swim lanes had I/O segments for all of the disk I/O for the…

0

How Can Visual Studio 11 Developer Preview Visualize the Behavior of a Multithreaded Application

Now that you’ve had a day or two to work with the latest build of Visual Studio 11 Developer Preview and the .Net Framework 4.5 Developer Preview, I’m positive that you’re at the point where you would like to visualize the behavior of your multithreaded application. Remembering how you did that in Visual Studio 2010…

0

Request threading in ASP .NET and WCF

Dustin Metzgar recently posted an entry centered around understanding how ASP .NET and WCF work in order to avoid unnecessarily blocking threads.  He used a couple of different tools to examine the problem, including the Concurrency Visualizer.  See his entry here: http://blogs.msdn.com/b/dmetzgar/archive/2011/06/14/request-threading-in-asp-net-and-wcf.aspx James Rapp – Parallel Computing Platform

0