3

加载除小项目以外的任何内容都很慢。戒烟很慢;有时可能需要几分钟。打开新文件可能会很慢。录制宏功能曾经很有用。现在启动太慢了,手动启动几乎总是更快!


更多信息会有所帮助。你的解决方案有多大?你在什么平台上。您正在运行哪些 3rd 方插件?你的电脑上还有什么正在运行?

3.2GHz P4 超线程,2GB RAM。运行 Outlook、Perforce、IE7、目录浏览器。通常有 1-3 个 VS 实例在运行。比 VC6 慢得多。加载项目并关闭似乎需要很长时间。我对人们是否知道发生这种情况的原因很感兴趣,因为 VS 的编写方式。它是否在内部使用 .net 并且 GC 会减慢它的速度?

4

13 回答 13

4

Visual Studio 2005 运行缓慢的最大罪魁祸首之一是 Intellisense。这在 MSDN 论坛上一次又一次地被提出。我经常遇到的是 Intellisense 几乎不间断地“重新索引”符号(或任何你称之为的)。但微软的开发人员并没有对这些抱怨置若罔闻,一些外向的人提出了一些解决方法,这些解决方法对我有帮助,也可能对你有所帮助:

查看此链接以更好地了解 Intellisense:

智能感知信息

然后查看这个链接,了解一些我已经取得了很大成功的宏:

智能感知宏

使用这些宏,您可以关闭智能感知(无需重命名任何 DLL)、重新启动它、删除 ncb 文件(您可以手动执行此操作,但这很方便),它可以为您提供智能感知的状态。

于 2008-09-04T12:47:27.987 回答
2

Visual Studio 2005 运行缓慢的最大罪魁祸首之一是 Intellisense。这在 MSDN 论坛上一次又一次地被提出。我经常遇到的是 Intellisense 几乎不间断地“重新索引”符号 [...]

我同意。我使用视觉辅助。它好多了。也没有真正的方法可以关闭“智能感知”。我发现的唯一方法是重命名 DLL,这样当你重新启动 VS 时它就找不到了。这有效并使VS更快。

于 2008-09-04T14:24:31.137 回答
2

可能是您有一个行为不端的插件。尝试安全模式开关,看看这是否能提高性能

于 2008-09-04T11:38:43.423 回答
1

这是你的问题:

3.2GHz P4 超线程,2GB RAM

Hypertheaded 的意思是“实际上没有两个 CPU,但它是伪造的”。如果你有一个只运行一个线程的进程,那么你的性能就会很差。这是一个很好的短期措施,但与拥有两个 REAL CPU 相比,这是一个缓慢的 hack。

我认为这根本不是问题所在。该机器具有足够高的规格,足以成为大型项目的专业 C++ 开发机器。我可以运行 Eclipse(它是 Java,它需要大量内存并且比本机代码慢),这仍然比 VS 2005 快得多。

我将 RAM 量从 1GB 增加到 2GB。这对链接大型应用程序有很大帮助。我们还使用 Incredibuild 来加速编译。但速度慢的是 VS 应用程序。

如果你认为我是一个脾气暴躁的反 MS 狂热者,问问你自己为什么人们不购买 Vista!:)

于 2008-09-04T14:21:21.053 回答
1

我看到速度更快的机器结果好坏参半。当然,更快的机器隐藏了 vs2005 较差的性能质量,但不是全部。

只需使用您的强制性“hello world”C/C++ 程序,只需编译它,(CL /c helloword.cpp),

#include <stdio.h>
#include <windows.h>

int main(char argc, char *argv[])
{
   printf("Hello World\n");
   return 0;
}

我在 Vc6 下看到 1 秒编译器,在 VS2005 下看到 6 秒编译器。

使用 DEPENDS 来分析这两者,我看到 3 个区域发生 5 秒延迟和时间不同:

  ~2.5 secs with ADVAPI32.DLL, CryptGetHashParam()
  ~1.5 secs with OLE2.DLL, StringFromGUID2()
  ~1.0 secs with C2.DLL, _AbortCompilerPass()  

同样,这只是一个编译,而不是一个链接。VC8+ 编译器可执行文件/dll 引用子系统,如加密 API、注册表,出于某种透明的原因,它为直接和纯编译增加了大量开销。

虽然更快的机器可能会隐藏一些隐藏速度变慢,但人们只能想知道微软是否可以通过提供禁用不必要的开销引用的选项来优化编译器。我知道更好的编译器会带来一些开销,但我看到的是 300-500% 的编译时间降级 - 这太糟糕了。

Hector Santos,首席技术官 Santronics Software

于 2008-11-04T00:00:13.513 回答
1

我倾向于同意 VS 是重量级的。回到过去,我使用 Boxer 文本编辑器和 makefile 在 DOS 中进行编码。Boxer 没有繁重的智能感知和重构功能,但它在文本编辑部门做得更好,有很好的语法突出显示和即时启动/关闭,即使在 486 上也是如此。...那些日子。

我会说自定义 VS 以消除您无论如何都不会使用的所有开销会非常好,但我认为不会发生这种情况。

于 2008-09-04T12:26:52.590 回答
0

您能否安排一些操作并发布它们,以便我们了解您所说的“慢”是什么意思?在我的机器上,我不会说 VS 2005 很慢,但是如果你将它与记事本或我的网络浏览器进行比较,它似乎很慢。以下是一些可以帮助人们弄清楚发生了什么的事情:

  • 关闭任何可能影响加载时间的功能。这包括卸载所有附加组件并确保 VS 未配置为自动打开项目。
  • 重新启动您的机器。
  • VS 2005 启动的时间,从您单击图标到程序启动的时间。
  • 创建一个您愿意在此处发布的程序,该程序似乎编译缓慢(这可能无法实现,具体取决于进行缓慢编译所需的条件);发布程序以及您的计算机构建它需要多长时间。
  • 你知道其他人安装了 VS 2005 的同类机器吗?它看起来比你的慢还是快?

我相信开尔文勋爵对这样的情况说了最好的话:

当你可以衡量你在说什么,并用数字来表达它,你就会知道一些事情;但是,当你不能衡量它,当你不能用数字来表达它时,你对它的了解是微不足道的和不能令人满意的;它可能是知识的开端,但在你的思想中,它几乎没有发展到科学阶段。

在您给我们一些测量结果之前,我们无法告诉您您的机器是否真的很慢,或者您是否对机器的期望超出了它所能提供的范围。您的 HT CPU 可能是问题所在;我在工作和家里的机器大致相当,但是在运行 VS 时,我的双核工作机器围绕着我的单核家用机器运行。

于 2008-09-04T14:30:04.853 回答
0

最近我的机器上同时安装了 Visual Studio 2008 和 Visual Studio 2005,我同意 VS2005 真的很重。他们在 VS2008 中对其进行了改进,尽管我不确定您是否会充分考虑性能改进。

于 2008-09-04T12:51:48.177 回答
0

我注意到上面你提到你也在使用 perforcet。项目在不执行时加载是否更快,我敢打赌,您看到的一些延迟与加载期间的执行有关。最新版本的 perforce 似乎也慢了很多。

于 2010-05-24T06:35:43.173 回答
0

恐怕这纯粹是主观的事情。

  • 可能是因为您的低端系统配置。
  • 可能是 VS 试图从网上获取更新?
  • 可能是您在后台运行了太多应用程序。
  • 可能是您正在尝试打开一个巨大的解决方案。
于 2008-09-04T11:35:38.470 回答
0

在 Visual Studio 顶部给出的“任何 CPU”选项上更改您的解决方案平台,那么您的程序构建速度肯定会提高。

于 2014-01-02T11:04:32.187 回答
0

VS 2005 比 VS 6 慢,因为它对速度的优化不够好。VS 6 的开发者的机器比 VS 2005 的开发者要慢。当时他们让它“足够”快。在现代机器上,VS 现在“快得令人愉快”,而 VS 2005 的速度刚刚好。

让我恼火的是他们决定放弃 VS 6 并为 VS 2005 重新开始,当时 VS 6 是一个很棒的软件,只需要更新。

于 2009-10-08T09:37:07.507 回答
-5

这是你的问题:

3.2GHz P4 超线程,2GB RAM

Hypertheaded 的意思是“实际上没有两个 CPU,但它是伪造的”。如果你有一个只运行一个线程的进程,那么你的性能就会很差。这是一个很好的短期措施,但与拥有两个 REAL CPU 相比,这是一个缓慢的 hack。

根据您所说的运行情况,2GB 的 RAM 也将是一个问题。如果你有一个基本的 5400RPM 磁盘,那么它会让一切变得更糟。

根据您发布的内容,我建议:

  • 一台好的 core2 机器,如果你有预算的话,也许是四台机器。
  • 如果您运行的是 32 位操作系统,则需要 3GB 的内存,如果您运行的是 x64,则需要 4+GB。4GB 意味着你在 32 位下浪费了 1GB。
  • 获得 7200RPM 或更高的磁盘。如果可以,RAID0(条带)或 RAID0+1(条带+镜像)如果您可以获得 4 个驱动器(条带 == 在两个磁盘上拆分内容,因此您可以同时从两个磁盘读取。条带 + 镜像 = = 条带化的安全版本,因此您的代码始终位于两个磁盘上)

我有一个 2GB 的 2.0ghz Core2(大约是 P4 性能的 3-4 倍,如果将 2 个 CPU(内核)计算为 2 倍),2GB,我最多可以运行 2 个 VS.NET 2008 实例。这个很正常——VS.NET 没什么问题,它只是一个巨大的应用程序。

更多内存。更多 CPU。更多屏幕。更多的。更多的。更多的 :)

于 2008-09-04T12:50:03.893 回答