回到五月,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 的博文中,他也谈到内存的问题,并列出了三个主要的资源消耗情况:
- 托管镜像,尤其是 NGEN 镜像
- 不共享和未托管堆
- 内存泄露
关于托管图像的主要问题在于依赖增加,即使是使用了一小部分 DLL,都会产生大量的依赖关系。至于堆,则存在 CreateHeap 过度使用私有堆,导致大量的资源消耗和应用程序的堆不足。还有内存泄露,但由于 VS2010 是托管应用程序,该问题的影响并不严重。
Rico 结束时还提到:
从我的角度来说,产品是越来越完善了。
查看英文原文: Next Beta Of Visual Studio 2010 Promise Better Performance
评论