利用Visual Studio 2010中的Concurrency Visualizer优化性能

如今制造商们广泛提供了多核心处理器,新处理器中的单线程性能相对而言可能就显得平淡无奇了。那就意味着,对软件开发人员来说,通过更好地利用并行机制来提高应用程序性能的压力就更大了。

并行编程是一项很有挑战性的工作,其原因很多,但我在本文中只想将重点放在并行应用程序的性能方面。多线程应用程序不止容易成为顺序实现低效率进行(如低效的算法、低速的缓存行为、过多的 I/O)的常见原因,而且还可能具有并行性能 Bug。并行性能和可伸缩性可能受到负载不平衡、同步开销过大、无意的序列化或线程迁移限制。

过去,要了解这样的性能瓶颈,需要专家级开发人员进行大量的检测和分析。即使是程序员中的佼佼者,性能优化也是一个枯燥而耗时的过程。

这种情况应该得到改善了。Visual Studio 2010 中包含了一个新的分析工具:Concurrency Visualizer,它可大大减轻并行性能分析工作的负担。此外,Concurrency Visualizer 还能帮助开发人员分析其顺序应用程序,以发现并行执行这些应用程序的可能性。在本文中,我将概括介绍 Visual Studio 2010 中 Concurrency Visualizer 的功能,并给出一些实践上的使用指导。

CPU 利用率

Concurrency Visualizer 中包含几个可视化和报告工具。有三个主要视图:分别是“CPU 利用率”、“线程”和“核心”视图。

图 1 中显示的“CPU 利用率”视图是开始使用 Concurrency Visualizer 的位置。X 轴显示从跟踪开始时起,到应用程序活动结束或跟踪结束这两个时刻中的较早时刻止,所经过的时间长度。Y 轴显示了系统中逻辑处理器核心的数量。

图 1 “CPU 利用率”视图

时间: 2024-10-29 19:51:03

利用Visual Studio 2010中的Concurrency Visualizer优化性能的相关文章

Visual Studio 2010中的Web开发

Microsoft Visual Studio 2010 为 ASP.NET Web 应用程序的开发提供很多新的功能.这些新功能旨在帮助开发人员快速方便地创建和部署质量高且功能全的 Web 应用程序. 目前,Visual Studio 2010 支持 HTML 代码片段.利用这些代码片段,可以生成高质量的代码.Visual Studio 中附带了很多代码片段,开发人员也可以创建自己的代码片段. Visual Studio 2010 提供的另一个新功能是转换 web.config 文件,以用于部署

在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序

原文 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 Jim Nakashima.Hani Atassi 和 Danny Thorpe 将应用程序或服务部署到 Microsoft 云服务平台 Windows Azure 的原因有很多.例如,只为使用的内容付费从而可降低操作和硬件成本.构建几乎能无限缩放的应用程序.巨大的存储容量.地理位置等等,不胜枚举. 只有

Visual Studio 2010中的C++ IDE增强

如果说对C++新标准的支持为Visual C++的发展奠定了坚实的基础,那么,她在IDE方面的增强,则会让她更加光彩照人. 很多Visual C++程序员都爱吃西红柿(Visual Assist).为什么?因为它可以补偿VC(Visual C++).虽然Visual C++在C++库,编译器,MFC等方面非常强大,但是她的IDE一直受到C++程序员的诟病.特别是进入 Visual Studio 2000之后,Visual C++的IDE并没有大的改变,但是效率却越来越低下,使得程序员们不得不多吃

使用IntelliTrace在Visual Studio 2010中调试.NET应用程序

在Visual Stuido 2010中有一个新的功能那就是IntelliTrace.IntelliTrace被引入到Visula Studio中来加速我们对.NET应用程序的调试,它通过对预先设置的事件和方法在运行过程中的跟踪并将其有效地传递给调试执行者,从而快速的传递程序在执行过程中的状态和各种信息来帮助开发者更好的调试程序,快速的发现问题.实际上,在Visual Studio 2010之前,Microsoft Visual Stuido已经帮助我们很好的继承了调试工具,比如对变量的监控,对

利用Visual Studio 2010的可视化和建模功能为网站和本地代码建模

我之前曾在博客中介绍过Visual Studio 2010中的体系结构工具.这些工具 为了解现有的应用程序.设计新功能以及验证实现是否遵守体系结构规则和限制 ,提供了一种很好的方式. 最近,我们又为MSDN订阅用户发布了可视化和建模功能包,这个功能包为 Visual Studio 2010的体系结构工具添加了如下支持: /C++代码的可视化 网站可视化 改进的UML图生成 从UML图生成代码 导入XMI 2.1 结构性验证的扩展 开发人员常常面对的一项挑战是试图了解改变应用程序的一部分会如何影响

在Visual Studio 2010中自定义开始页

在讲求个性化的今天,什么都要求个性化,自定义,都强调一个大大的i.所以这才有了iGoogle的自定义页面,Windows Live的自定义个性主页.作为程序员们天天使用的开发工具Visual Studio,为了顺应这种自定义.个性化的潮流,也引入了自定义开始页的功能. Visual Studio 2010的开始页由一个StartPage.xaml文件控制,通过编辑这个文件,我们可以在我们的这"一亩三分地"上任意耕种,我们可以添加内容,添加按钮执行某些功能,甚至可以添加一些自定义的控件完

visual studio 2010中创建测试项目时发生错误

问题描述 visual studio 2010中创建测试项目时发生错误 十分感谢! 解决方案 VC++的单元测试?你的VS2010最好打上SP1.我记得VS2010对VC++的Unit Test支持有问题. 解决方案二: 没安装壕吧,修复一下 .

详解Visual Studio 2010中的扩展管理器

扩展能够为核心应用程序提供附加的功能或者自定义设置.在很多应用程序中这都是很流行的,包括流行的web浏览器IE和Firefox.微软的Office.媒体播放器.Photoshop.Eclipse.Visual Studio等等.其中有些可能比较新奇,而针对开发工具--像Eclipse和Visual Studio--的扩展让开发者的生产力得到了显著提高. Visual Studio早期的版本是构建在COM技术之上的.而Visual Studio的主要扩展方式插件是通过COM接口实现的.随着时间的变

laoyu-关于 Visual Studio 2010 中的错误的问题!

问题描述 关于 Visual Studio 2010 中的错误的问题! 为何在Visual Studio 2010 C++中出现错误时为什么不能显示错误提示和红色下划线.请问如何解决? 解决方案 安装visual assist X