2008-09-10 81 views

回答

10

我有VS2008在所有4个CPU上运行。只需设置这个环境变量/项目标志。

/MP

(它可以在C/C++设置来设置,高级在项目设置。)

编辑:MP标志还可以接受的数,例如/ MP2,这意味着它只能运行在2个内核上。将它保留为/ MP意味着它将运行在最大数量的内核上。

编辑2:MP标志可能仅用于编译器。

+1

,对于一切正常?我所知道的唯一能够应用的是构建,至少这是根据MS的工作原理。 – 2008-09-10 13:01:21

2

我们还增加了多个核心支持,用于在命令行上为您的大量项目和构建时间长的多线程构建。启用多核心支持只需要一些新的属性,而MSBuild管理所有的工作来有效和高效地安排项目。 MSBuild团队通过在64-CPU机器上构建一些项目来测试这种扩展能力。

是从somasegar blog

所以他们有点开始​​做它,以及至少为构建。

0

的/ MP标志只建立,我们至少可以根据该msdn

现在我会爱错了,但即时通讯肯定它只是建立。当然这仍然非常有用。

0

我确定这很难。庞大的现有的图形用户界面非繁多的非线程代码库为多线程。听起来像是我10。

但是它似乎使用多核心给我。 Intellesense似乎有线程。构建系统也具有多项目构建和C++多文件构建的功能。

这些工具的问题听起来有点深入,他们使用CPU的能力有多强。

6

您可以要求VS并行编译多个项目以及在项目中并行编译(!?)。

工具>选项>项目和解决方案>最大数量的并行项目构建。

这将同时生成C++和C#!

3

现在Visual Studio 2010中已经发布了一下,可以考虑升级到使用中的MSTest的.testsettings文件parallelTestCount属性,截至How to: Run Unit Tests Faster Using a Computer with Multiple CPUs or Cores描述。

有一些局限性,如:

  1. 只有简单的单元测试的支持(即不包括编码的UI测试和ASP.NET托管测试)
  2. 测试必须是线程安全的(全测试是在同一个进程中运行)
  3. 你不能在同一时间收集的代码覆盖率(其它数据&诊断)中

例,使用意味着自动检测(默认为):

<?xml version="1.0" encoding="UTF-8"?> 
<TestSettings 
    name="Release" 
    id="{GUID}" 
    xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010"> 
    <Description> 
    These are default test settings for a local test run. 
    </Description> 
    <Execution parallelTestCount="0"> 
    (...) 
    </Execution> 
</TestSettings> 

一些博客已经指出,您可能必须关闭并重新打开您的项目为Visual Studio的通知您添加/更改了该属性。另外,如果使用GUI编辑测试设置文件,则可能必须重新添加parallelTestCount属性。

4

万一任何人遇到这个老问题,VS2012引入了并行版本作为standard feature。从文章引用:

Visual Studio 2010包含一个选项“最大并行 项目构建”。尽管没有任何限制, 这个IDE选项只适用于C++项目。幸运的是,这种限制不再适用于Visual Studio 11.相反,现在有对其他语言的并行构建的全面支持。要查看 ,请在运行Process Explorer副本的同时使用 许多项目正在构建的解决方案。您将看到创建了多个MSBuild 实例 - 与“并行项目构建的最大数量 ”中指定的数量相同。

0

对于Visual Studio 2010转到工具>选项>项目&解决方案>构建和运行。

然后,您将看到一个条目,输入'最大并行项目构建数量'的数字;我的电脑有一个i7-3770 CPU,四核超线程,所以它被设置为8

有关在不同版本的Visual Studio到这里,并选择您的版本:https://msdn.microsoft.com/en-us/library/cyhcc7zc(v=vs.100).aspx

例如对于Visual Studio 2010,此属性仅影响C++构建:

指定可同时构建的Visual C++项目的最大数量。为了优化构建过程,最大数量的并行项目构建自动设置为您计算机的CPU数量。最大值是32。

但用于Visual Studio它是C++和C#:

并行项目的最大数量建立 指定的Visual C++和Visual C#项目,可以建立在同一时间的最大数量。为了优化构建过程,最大数量的并行项目构建自动设置为您计算机的CPU数量。最大为32

相关问题