2010-12-16 94 views
1

我们的开发人员经常在大型Visual Studio项目中工作,我们经常使用MSBuild和Nant运行命令行构建。这些自动化流程可能涉及重置本地SQL Server数据库,在大型分层项目结构上执行完整构建,甚至运行自动UI测试套件(通过Selenium和Watin)。构建性能的最佳开发人员工作站配置?

有很多性能基准和围绕游戏玩家理想机器配置的讨论。我有兴趣为专业开发人员获得最佳机器配置。

一些投机沉思我已经包括:

1)够糟糕的显卡会降低性能? (例如,当视频卡的入门级过高时,我已经看到Visual Studio控制台输出速度降低了重建过程。)

2)使用固态驱动器(SSD)发展的一部分?或者甚至用更便宜的RAM来填充机器,并划分2GB RAM驱动器,并在该超高速分区中进行点构建活动?

3)C#编译器是否利用多个内核? Nant或MSBuild是否可以利用多核?

任何想法沿着这些线将不胜感激。我们花了很多时间在我们的工作站上等待,即使它们已经很健壮。我们的操作系统,应用程序,代码工作目录和SQL数据库目前都位于同一个大型本地驱动器分区,并且优化似乎已经成熟,但我想收集来自社区的见解。

感谢, 杰夫

+0

你目前的配置是什么?这些系统有多大? – AngerClown 2010-12-16 17:14:00

+1

不要使用开发人员工作站进行构建,请使用构建服务器。 – 2010-12-16 19:46:58

+0

我们最近在我们的产品上做了一些构建分析工作,发现存储,RAM磁盘等不会帮助我们,因为我们的构建没有足够的并发性。我们的沉思是有价值的,但只是没有泛滥。我想知道第一次花费的时间,但我希望你能从#3中找到最大的收益。 (顺便说一下,Chromium的构建过程是高度并行的,并且相信他们使用msbuild,但msbuild不是我的背景,因此无法对此方法发表评论) – 2011-02-19 05:24:37

回答

1

我不知道,如果你还在寻找一个答案,但如果不出意外,有人可能会发现在未来,这是有用的。我一直在运行性能测试来优化我们的构建,这里是我发现的:

1)我不会担心太多,除了最小化构建shell。但是,我的机器有一个体面的视频卡,所以我不能给你一个明确的答案。

2)我们的测试主要集中在SSD上,我们首先学到的是他们不值得。在具有足够内存(〜12 GB)的计算机上,SSD在长达一个小时的时间内只会产生几分钟的差异。在内存较少(〜4 GB)的机器上,差距会增加几分钟,但最重要的是购买更多的内存会让您的性能大幅提升。这就是说,我们没有测试在构建运行时你正在做很多其他事情的情况,我认为这可能会给SSD带来优势。

3)是的。这个论坛帖子1可能会帮助你开始。

相关问题