SSD驱动器和Visual Studio IDE。大的进步?真实的使用故事,没有理论


91

我想使用Windows 7 + Intel SSD驱动器来加快Visual Studio 2008开发周期。

我要加快的领域是:

  • 编译/构建时间
  • 打开Winforms / WebForms的文件
  • 适用于Windows和Web的常规Visual Studio“缓慢运行”

我对Visual Studio的启动时间不感兴趣。同样,每GB的成本也不是问题。我要速度。

有没有人尝试过这种方法(SSD驱动器+ Visual Studio),您对加速/减速有什么看法?

我知道有关SSD的理论,但通常布丁的证据就是在吃东西。因此,我对实际尝试过并使用SSD调试Visual Studio设置的人感兴趣...


可能值得在serverfault.com上询问。有关详细信息,请参见blog.stackoverflow.com/2009/04/server-fault-private-beta-begins
马修·默多克

2
我认为这更多是关于编程的,但我当然考虑过。但是我不想要基准,而是真正的VS2008体验
朱利安·德·威特

很公平。我建议您也在那里问(尽管这可能会引发火焰大战……!)。
马修·默多克

哇,找到一个比Server Fault退出Beta版更早的问题感到很有趣。我一直在寻找2016年的收益(仅VS就达到了80个演出,而我未来的128GB SSD可能不适合Windows和VS ...)
Paul Stelian

Answers:


79

我已经获得了有关Visual C#2008 硬数据。简短的版本是,您最好将钱花在更快的CPU上,而不是更快的I / O上。答案更长……

我们的C#(.NET 3.5)解决方案包含81个项目,这些项目的代码行超过200万行(包括注释和空白行)。几年前,我们从具有标准HDD的Pentium 4 3 GHz PC升级到具有10,000 RPM WD Raptor HDD(74 GB)的Core 2 Duo 2.6 GHz PC。加速是巨大的。大约10分钟缩短至3.5分钟。所有这些都在具有4 GB RAM的Windows XP Pro 32位环境中进行。

我们还获得了一个技嘉i-RAM(有关信息,请访问Google),它基本上是具有电池备份功能的RAM硬盘。与可快速读取但写入速度较慢的SSD不同,i-RAM两者均可快速读取,但如果断电,则电池只能使用约12个小时,因此必须严格检查签入内容。与10,000 RPM Raptor HDD相比,Core 2 Dou平台的编译时间又减少了一分钟(减少到2.5分钟)。

从那以后,我发现那些旧的74 GB 10,000 RPM Raptor驱动器比您的花园品种的7,200 RPM现代驱动器稍慢,并且我们证明了一致地进行基准测试编译。我们还没有尝试过新的Velociraptors,但是它们肯定会更快,但可能不足以仅在编译时值得。

上周,我们获得了一个新的Intel Core i7-870平台,该平台具有G.Skill Falcon 128 GB SSD(带有Indilix Barefoot控制器)和一个标准500 GB HDD作为第二个驱动器。我还把i-RAM插入这台PC并测试了所有配置。

与Core 2 Duo相比,HDD的编译时间为3.5分钟,i-RAM的编译时间为2.5分钟,而i7-870的SSD,HDD和i-RAM的编译时间为1秒40秒,而i7-870的编译时间为3秒。

因此,在两次升级开发人员工作站的过程中,C#编译时性能的绝大部分提高都来自于更快的CPU而不是更快的磁盘。如果您想加快编译时间,请将您的钱投入到CPU中而不是磁盘中。

也就是说,SSD可以更快地加载Visual Studio和打开解决方案(尽管我还没有时间安排)。如果您负担得起SSD,那么您将永远不会回头,因为PC上的每个程序加载速度都非常快,这简直令人难以置信。但这不会显着加快编译速度。这就是Visual Studio C#是单线程的。如果微软采取行动,使他们的编译器在IDE中成为多线程,那么我们实际上可以使用这四个核心...


2012年5月更新:我们现在根据关注CPU性能之前所学的知识再次升级了PC。新的PC具有超频至4.6 GHz的Intel Core i7-2600k CPU,Intel 510系列120 GB SATA III SSD,16 GB RAM和大型CPU散热器!令人惊讶的是,这几乎使编译时间减少一半,我当然可以将其归因于CPU能力的大幅提高,而不是更快的SSD。

Visual Studio 2010中的C#编译性能结果为:

  • 159秒:Intel Core i7-870股票(2.9-3.3 GHz),带有SATA II SSD的4 GB RAM
  • 109秒:Intel Core i7-2600k股票(3.4-3.8 GHz)16 GB RAM和SATA III SSD
  • 84秒:Intel Core i7-2600k超频(4.63 GHz)16 GB RAM和SATA III SSD

1
太可惜了,我已经订购了一台SDD怪物计算机:)我也将结果发布在这里,但恐怕它们将是相同的结果。
朱利安·德·威特

您是通过ASP.NET还是Winforms完成的?
朱利安·德·威特

9
好的-我需要纠正:首先-您没有提到您使用的SSD。SSD驱动器直接连接到SATA2接口,即iRAM为SATA1(130MB / s)。除此之外,iRAM还具有有限的控制器,这很关键。如果RAID 0中有2个磁盘,则速度应高达200MB / s。我同意SSD不会改善您的编译时间,但是我已经看到SSD在大约一秒钟的时间内开放了Visual Studio。最后,我认为iRAM不具备典型的SSD驱动器的资格。您的结果具有误导性,事实是错误的。
JL。

13
您需要阅读并可能在键入之前进行思考。首先,我确实提到了我正在使用的SSD,实际上它是BOLD。我知道iRAM具有SATA1接口,因此读取速度比几乎所有新的SSD都慢-我之所以加入它,是因为我有一个要测试,并且因为它的写入速度与读取速度一样,而大多数SSD却没有。我没有用RAID测试2,因为我只有1!在上一段中,我还提到SSD加载VS的速度要快得多。因此,事实都是正确的,您同意结果,但是您说它们具有误导性?有趣的...
Ben Robbins

1
@BenRobbins是否使用/ MP标志在Visual Studio外部对C#项目进行了基准测试?
约翰·扎布罗斯基

27

我只是买了一个,而我唯一的遗憾就是没有更早地购买SSD。

编译时间以前还可以,但是现在整个IDE的响应速度更快。它不仅是Visual Studio,还包括其他应用程序。当整个系统快速运行时,保持流程顺畅变得容易得多。


4
数月之后..我有同样的感觉..整个计算机的体验更好。
朱利安·德·威特

11

作为测试,我们只是订购了90 GB基于Sandforce的SSD,以查看它是否可以帮助我们缩短构建时间。我们有一个大型的C ++项目,需要21分钟才能完全重建(一个较旧的Xeon 3.4 GHz盒子)。

每次运行三个测试,构建的时间差异可以忽略不计;大约快30秒。

我们较新的(!)Xeon 5150盒子(带有硬盘)在大约11分钟内重建了同一项目,这表明编译确实受CPU限制。

(这让我感到惊讶,因为我认为固态硬盘具有出色的4k和512k读/写性能在构建时将非常有用。)


11

经过长期的性能测试,我这里获得了最佳设置,但是是C ++编译器。你会需要:

  • 适用于Windows和程序文件的 SSD (通常为C:驱动器)
  • 1 TB WD鱼子酱黑,分为两个分区:
    • 驱动器D:启动圆柱体上只有一个TEMP文件夹的微小驱动器(最大35 GB);您应该将TMP和TEMP环境变量映射到D:\ TEMP(这一点非常重要!!!)
    • 驱动器E:与其余驱动器一起存放;除软件开发外,用于一般数据存储
  • 您要存储Visual Studio 2008项目/解决方案的任何分区布局中的1 TB WD Caviar Black。根据Subversion的使用情况,我最终得到了四个分区:
    • 820 GB(用于干线和通用项目)
    • 60 GB用于“功能分支”
    • 产品稳定期间使用60 GB的“稳定分支”
    • 60 GB(用于“产品质量分支”),用于已批准软件的次要修复
  • 使用/ MP编译器开关的6核或8核处理器(不要与Visual Studio 2008本机的“并行项目构建”功能混淆—我不知道为什么AMD Phenon II处理器能与这个组合)
  • Windows 7 64位(我不确定为什么在64位OS中即使使用32位编译器也能使其运行得更快)
  • SATA 3兼容主板

此设置优于我测试过的任何其他组合。

大型模块化项目的典型编译将具有以下结果:

  • 没有/ MP和常规HDD的并行构建:大约12:00分钟
  • 建议的设置:4:30分钟
  • 此设置,但交替使用WD Caviar Green驱动器:每个驱动器+1:00(两个驱动器均为5:30或6:30)
  • 将TEMP分区移动到RAMDRIVE:5:30

我的结论如下:

  • 请勿让TEMP文件夹在SSD中运行,因为它们是不好的“写入器”,并且在WD Caviar Black内部没有可比较的64 MB缓存
  • 使用用作TEMP的专用驱动器可使两个WD驱动器并行工作:cl.exe临时文件的TEMP和存储* .cpp / h,*。obj,*。lib,*。exe等的项目驱动器。
  • WD Caviar Black缓存算法令人印象深刻,结合SATA 6 GB / s的性能,胜过我为TEMP驱动器测试的RAMDRIVE设置
  • 分区可以减少对碎片的影响,这在编译器环境中是不可避免的。TEMP驱动器也一样

希望能对您有所帮助。


1
忘了说,SATA模式应该处于AHCI模式。
Mathias A. Gruber

1
我不确定TEMP文件夹部分。为什么说SSD是“坏作家”?关于其板载缓存大小,通常大于64MB(Vertex 4带有512MB DRAM缓存,对于较大的驱动器,最大为1GB)。您糟糕的RAMDRIVE体验真的很奇怪。它有多大?您的交换文件在哪里?您确定没有交换到磁盘吗?普通的DDR2 RAM的带宽是SATA 6GB的10倍,更不用说Windows本身为磁盘写入提供RAM缓存了。您所谈论的甚至不是RAID。
Groo 2012年

5

我只是通过克隆原始的5400 RPM硬盘将笔记本电脑升级到SSD,这是一个很轻松的过程。我使用秒表来捕获指标之前和之后。(Dell Inspiron 1525、3 GB RAM,Windows Vista 32位)

Windows的启动/启动

63秒-> 52秒

加载我的ASP.NET Visual Studio解决方案

换句话说,从单击.sln文件到完全加载Visual Studio的时间,您可以开始编码。在进行测量之前,我执行了一次此操作,因为第一次的时间总是比随后的时间更长。

16秒-> 8秒。

调试

F5 到完全加载的主页。

5秒-> 3.5秒


1
从5400rpm转到SSD,您仅将启动时间节省了21%?您应该从中看到更大的收益。也许您的笔记本电脑没有足够的RAM?
Brian Kendig 2012年

@Bria Kendig谢谢,我可以尝试一下。我目前有3GB,因此我最多只能使用4GB。
詹姆斯·劳鲁克

我有一个关键的SSD,Win7在完全关闭后的15秒内启动。
tunafish 2012年

您如何在Dell Inspiron笔记本电脑中将HDD更改为SSD?
Karthik Nishanth

我从亚马逊购买了克隆软件和小型螺丝刀。lawruk.com/blog/40/closured-laptop-hard-drive-to-an-crucial-ssd
James Lawruk


4

当我购买一台新计算机时,我不确定是什么使我的体验更快。

但是,我的一个同事将7200 RPM硬盘驱动器更改为SSD。立刻,Visual Studio(特别是启动/调试ASP.NET)的速度至少快两倍


2

我也一直在考虑这一点,不久前我买了一张快速SD卡,可以将其插在笔记本电脑上,而不必理会它,以便Windows Vista可以使用ReadyBoost功能。感觉好像有所不同,但是肯定不足以保证为此购买SSD驱动器。

然后,我在进行Subversion更新时开始遇到问题,并决定放弃ReadyBoost的想法,并将SD驱动器安装在一个安装点上,然后在该安装点上创建所有项目文件。SD卡不是很大(1 GB),但是它无疑减少了我的构建等待时间,并使调试工作相当快。

其中大多数是主观的,我用“我感觉到”和“我感觉到”来回答一个需要事实的问题。由于我尝试从不同的驱动器运行Visual Studio文件,因此我当然相信这会有所作为,我愿意为此付出多少,以及我愿意为此付出多少,我也一直在寻找一个答案。我的笔记本计算机可以装另一个硬盘驱动器,但我无法在SDD和7200 RPM笔记本计算机驱动器之间下定决心。


1
嗨,谢谢..我从7200到10.000速激肽的切割效果也差不多。我希望SSD能够带来革命性的变化
。–朱利安·德·威特

1
不用说,我不认为Velociraptors是SSD驱动器。
Brett
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.