マルチプロセッサ ビルド

更新 : 2007 年 11 月

マルチプロセッサ ビルドを使用すると、複数の CPU を搭載したコンピュータ上で同時に複数のプロジェクトをビルドできます。たとえば、コンピュータに 2 つの CPU が搭載されている場合、この機能を使用することで、最大 2 つのプロジェクトを同時にビルドできます。

Visual Studio では、ビルド プロセスを最適化するため、同時実行ビルド数の最大値がコンピュータ上の CPU 数と等しくなるよう自動的に設定されます。この設定は、[オプション] ダイアログ ボックスの [ビルド/実行] プロパティ ページで、[並行にビルドするプロジェクトの最大数] プロパティの値を増減することによって変更できます。詳細については、「方法 : マルチプロセッサ ビルドの同時実行ビルド数を設定する」を参照してください。

マルチプロセッサ ビルドの実行

マルチプロセッサ ビルドは、IDE またはコマンド ラインから実行できます。コマンド ラインからビルドするには、VCBUILD または DEVENV を使用します。実際の作業については、次のトピックを参照してください。

マルチプロセッサ ビルドの出力

マルチプロセッサ ビルドを実行すると、プロジェクト システムにより、ビルドに含まれる各プロジェクト構成に番号が割り当てられ、その番号の後ろに右山形かっこが付加されます。このプロンプトに続けて、ビルド ステップの各ステータス メッセージが表示されます。

マルチプロセッサ ビルドを実行すると、次のようなビルド出力が生成されます。

1>------ Build started: Project: ConsoleApp2, Configuration: Debug Win32 ------
2>------ Build started: Project: ConsoleApp1, Configuration: Debug Win32 ------
1>Compiling...
2>Compiling...
1>stdafx.cpp
2>stdafx.cpp
2>Compiling...
1>Compiling...
2>AssemblyInfo.cpp
1>AssemblyInfo.cpp
1>ConsoleApp2.cpp
2>ConsoleApp1.cpp
2>Generating Code...
1>Generating Code...
1>Compiling resources...
2>Compiling resources...
2>Linking...
1>Linking...
2>Build log was saved at "file://d:\Documents and Settings\username\My Documents\Visual Studio\Projects\Demo\ConsoleApp1\Debug\BuildLog.htm"
2>ConsoleApp1 - 0 error(s), 0 warning(s)
2>
1>Build log was saved at "file://d:\Documents and Settings\username\My Documents\Visual Studio\Projects\Demo\ConsoleApp2\Debug\BuildLog.htm"
1>ConsoleApp2 - 0 error(s), 0 warning(s)
1>
---------------------- Done ----------------------

    Build: 2 succeeded, 0 failed, 0 up-to-date, 0 skipped

マルチプロセッサ ビルドの出力例を見ると、複数のプロジェクトに対するビルド ステップが同時進行していることがわかります。これはマルチプロセッサ ビルドに固有の動作です。通常のビルドでは、現在進行中のプロジェクトが完了してから、他のプロジェクトのビルド プロセスが開始されます。

マルチプロセッサ ビルドではない場合、次のようなビルド出力が生成されます。

------ Build started: Project: ConsoleApp1, Configuration: Debug Win32 ------
Compiling...
stdafx.cpp
Compiling...
AssemblyInfo.cpp
ConsoleApp1.cpp
Generating Code...
Compiling resources...
Linking...
Build log was saved at "file://d:\Documents and Settings\username\My Documents\Visual Studio\Projects\Demo\ConsoleApp1\Debug\BuildLog.htm"
ConsoleApp1 - 0 error(s), 0 warning(s)

------ Build started: Project: ConsoleApp2, Configuration: Debug Win32 ------
Compiling...
stdafx.cpp
Compiling...
AssemblyInfo.cpp
ConsoleApp2.cpp
Generating Code...
Compiling resources...
Linking...
Build log was saved at "file://d:\Documents and Settings\username\My Documents\Visual Studio\Projects\Demo\ConsoleApp2\Debug\BuildLog.htm"
ConsoleApp2 - 0 error(s), 0 warning(s)

---------------------- Done ----------------------

    Build: 2 succeeded, 0 failed, 0 up-to-date, 0 skipped

参照

参照

ビルド処理の高速化