微软承诺 Visual Studio 2010 的下一 Beta 版本在性能上有所提升

  • Jon Arild Tørresdal
  • 王波

2009 年 8 月 29 日

话题:.NETIDE语言 & 开发

回到五月,Visual Studio 2010 的 Beta 1 版本刚刚正式发布。自此 Visual Studio 开发团队,包括性能专家Rico Mariani,都基于用户反馈来努力提升该软件的性能

尽管 Rico 并没有确切提到 Visual Studio 的哪些部分得到完善,但他却深入的描述了工作中遇到的技术问题:

这个产品比起以往的版本在多线程方面更加强大,而在某些情况下线程间的同步则稍微逊色。在某些情况中,用于延迟后台工作的代码使得前台的反应有点缓慢。这两种情况都让我昏昏欲睡,这不是开玩笑!在某些情况中,线程的同步没有必要,这会破坏有效地并行性。其它情况下,设计在系统中的隐藏并行性并没有得到利用,还有一些情况则是设计了并行性却完全被忽略。

看一看Microsoft Connect站点公布的若干性能问题报告。Visual Studio 项目经理 Weston Hutchins 对“VS2010 慢于 VS2008”的指责回应如下:

我们成立了性能小组来处理问题,例如:过去数月的启动缓慢问题。从 Beta 以来,我们有效降低了大概 30% 的启动时间,但我们仍比 Visual Studio 2008 的启动速度慢。其中的原因是我们现在引导 CLR 的时间有点长。我们期待未来会有所改善,但并不一定可以到达 VS2008 的水平。

在 Rico 的博文中,他也谈到内存的问题,并列出了三个主要的资源消耗情况:

  1. 托管镜像,尤其是 NGEN 镜像
  2. 不共享和未托管堆
  3. 内存泄露

关于托管图像的主要问题在于依赖增加,即使是使用了一小部分 DLL,都会产生大量的依赖关系。至于堆,则存在 CreateHeap 过度使用私有堆,导致大量的资源消耗和应用程序的堆不足。还有内存泄露,但由于 VS2010 是托管应用程序,该问题的影响并不严重。

Rico 结束时还提到:

从我的角度来说,产品是越来越完善了。

查看英文原文:Next Beta Of Visual Studio 2010 Promise Better Performance

.NETIDE语言 & 开发