リリースノート
Incredibuild 9 の最新版をダウンロード
このバージョンは現在 RC 版です。試用をご希望の場合は support@incredibuild.com までお問い合わせください。
-
バグの修正と安定性の向上
-
WindowsアップデートKB5017380のサポートを追加しました。
-
バグの修正と安定性の向上
-
Visual Studio 2022 17.3 のサポートを追加しました。
-
VS 2022 (64ビット) の安定化とサポートが改善され、多数の繰り返し発生している問題に関連しています。
-
コマンドラインからVSを実行するとき、/usemsbuildフラグがVS 2022 64bitをサポートするようになりました。
-
大規模環境(900以上のAgent)におけるBuild Groups APIの安定性を改善しました。
-
LLVM 13以降へのサポートを強化しました。
-
制限事項 Visual Studio 2022 17.3には未対応です。
-
投機的実行を個々のビルドで有効化・無効化できるようになりました。
-
Coordinator Settings > Agent Subscription > Reset ボタンに関する問題を解決しました。
-
C++ 20のサポートを強化しました。
-
Agent Hostnamesの15文字制限を解除しました。
-
Helperキャッシュのクリーニング処理の改善、キャッシュロックによるリモートタスクの実行阻害の防止など、ヘルパーキャッシュの大幅な改良を行いました。
-
MSBUILD 出力パーサーがリファクタリングされ、多くのマイナーな問題をより強固に処理できるようになりました。
-
Build Group REST APIの安定性を向上させました。
-
ビルドの安定性とタスクの分散に関する全般的な改善を行いました。
-
VS2012 の最新バージョンで投機的実行のサポートを更新しました。
-
非常に小さなタスクが大量にある場合、ポートの枯渇により Helper を割り当てられない不具合を修正しました。
-
最近バージョンのいくつかのマイナーなリグレッションを修正し、安定性を向上させました。
-
REST サービスが System ユーザーの下で実行されるようになりました。
-
インクリメンタル ビルドのリターンコードの問題を修正しました。
-
一部のビルドが配布できない 2 つの問題を修正しました。
-
複数のビルドを同時に実行した場合の .pdb ファイルの ID に関する問題を修正しました。
制限事項
-
Visual Studio 2022 Preview 5 MSBuild 64 bit は現時点では投機的実行機能をサポートしていません。
-
クラウドが有効な極めて大規模な環境 (10,000 コア以上) における Coordinator の安定性の問題を修正しました。
-
make などいくつかのビルドツールの実行時にメモリが不足する問題を修正しました。
新機能・特徴
-
Visual Studio 2022 に対応しました。
-
Windows 11 と Windows Server 2019 に対応しました。
-
「Standalone Build Monitor Viewer」をインストールすることで、Incredibuild がインストールされていないマシンでもビルド ファイルを開くことができるようになりました。
-
次の Visual Studio バージョンが Microsoft のサポート期間が終了により非推奨となりました。VS 2005、2008、2010、6.0、.NET 2003。
-
[Coordinator Console Utility] が生成する情報に Helper として使用可能なコア数が含まれるようになりました。
-
CLI を使って特定のビルドを停止したり、[BuildConsole] や [IBConsole] CLI からすべてのビルドを停止したりできます。
-
Agent をBuild Groupに割当てるための Rest API 構文を変更しました。
-
QtCreator の Incredibuild プラグインが Android アプリのビルドに対応しました。
主な改善点
-
Helper が数秒以上タスクを実行できない場合は、ビルドモニターの通知エリアに以前にはなかった警告メッセージ (「Task execution was not successful. Retrying...」) が表示されるようなりました。これは新たな問題ではありません。
-
バックアップコーディネーターがシームレスに起動しないことがある問題を修正しました。
-
メモリのパフォーマンスを改善しました。
-
QtCreator の Incredibuild プラグインで Android アプリをビルドする際の問題を修正しました。
-
IBTestConsole がテストバイナリの相対的なロケーションパスに対応できるようになりました。
-
コーディネーター モニターの列の並べ替え機能を改善しました。
-
xgConsole.exe で分散されるカスタム ツールの CPU 使用率を改善しました。
制限事項
-
Visual Studio 2022 Preview 5 MSBuild 64 bit は現時点では投機的実行機能をサポートしていません。
新機能・特徴
-
Visual Studio との新たな統合メカニズム: Incredibuild の新しい Visual Studio との統合メカニズムが利用可能になりました。Visual Studio のビルド メニューから Incredibuild でビルドを実行するように設定すると次の連携が可能です。
-
超高速にビルドを初期化
-
Visual Studio ネイティブのテキスト出力とエラー メッセージ ペインの表示
-
ビルド後の Visual Studio アドインやアクションとシームレスに連携 (Visual Studio テスト エクスプローラーやコード カバレッジなど「ビルド完了」通知に依存するアドインは通知後に起動)
-
Visual Studio で Incredibuild の分散処理技術とビルドの可視化の機能をネイティブに利用できます。
-
Visual Studio の CMake ビルドをサポート(テクニカルプレビュー): Visual Studio での CMake ビルドを Incredibuild で高速化できます。Incredibuild の分散処理技術によって Visual Studio で開始した CMake ビルドをスムーズに高速化。Incredibuild のビルドビジュアライゼーションは、CMake ビルドのテキスト出力を直感的なグラフィカルなビルドビジュアライゼーションに変換します。
-
Incredibuild Docker コンテナエージェントDockerコンテナ 内でシームレスに Incredibuild を使用できるようになりました。Docker Hub で入手可能な Incredibuild Docker イメージを使用すると、Dockerコンテナ内で Helper および Initiator として機能する Incredibuild Agents を利用することが可能です。
-
UI 設定と API を介した Build Group へのエージェントの新しい割り当てオプション [Incredibuild Enterprise](テクニカルプレビュー) :Incredibuild は、Build Groupへのエージェントの割り当てと Incredibuild 環境内のBuild Group管理方法を強化しました。コーディネーター モニターに加えて、様々な使いされた方法とロケーションで Build Group にエージェントを割り当てることができるようになりました。
-
インストール時: Agent のインストール中に表示される設定画面で起動時に Agent を割り当てるビルド グループを選択
-
Agent ホストマシン - 既存の Agent の Build Group への割り当ては、エージェントマシンのAgent Settings ダイアログボックスから実行することができます。
-
API: 新しい REST API では次を実行可能:
-
ビルド グループ内の Agent リストの取得
-
各 Agent の詳細の取得
-
ビルド グループへの Agent の追加
-
ビルド グループの削除
-
-
その他の事項
-
大規模な Incredibuild 環境における Visual Studio ビルドのパフォーマンスが向上しました。
-
大容量 (>2GB) の PCH ファイルのサポートを改善しました。
-
投機的実行機能を有効にした場合のカスタム ステップの検出を改善しました (Visual Studio 2019)。
-
排他制御のために .lock ファイルを使用したタスクの分散を改善しました。
バグの修正
-
IBConsole で呼び出されたプロセスに対して間違ったエラー コードが返される問題を修正しました。
-
プロジェクトに特定の名前のファイルが含まれている場合にビルドが失敗する問題を修正しました。
-
.gch 拡張子を持つプリコンパイル済みヘッダー ファイルの検出に影響する問題を修正しました。
-
Visual Studio 2019 16.6 を起動すると Incredibuild ビルドモニターが例外を表示する問題を修正しました。
-
脅威防御アプリケーションとの動作に影響するいくつかの問題を修正しました。
-
その他のバグを修正しました。
新機能・特徴
-
単体テスト用Incredibuildソリューションは現在Google Test (GTest) フレームワークに対応GTest フレームワークで作成されたテスト実行ファイルは、専用マシンの割り当てや各参加マシンへのテスト環境のインストールなしで、ローカルおよびリモートコアの数だけ Incredibuild で並列実行することが可能です。テスト ファイルを分析し、実行する全てのテストをリスト化するテスト ディスカバリの段階から GTest の高速化を実現します。このリストに基づいて複数のテストを並列分散して実行し、成果物をターミナルに集約します。また、サポートされた GTest のフラグを Incredibuild IBTestConsole に追加し、ディスカバリや実行、テスト ファイルの生成をカスタマイズすることも可能です。
-
新しい暗号化通信 Incredibuild:9.5.0環境 のすべてのコンポーネント間で転送されるビルドデータを暗号化することができるため、転送データにもう 1 つのセキュリティ層を提供することができます。
-
Google Stadia SDK V.1.44 以降のサポートを強化し、さらなる高速化を実現
-
複数の Visual Studio Edition の同時使用を新たにサポート Community、Professional、Enterprise など、同じバージョンの異なる Visual Studio Edition と Incredibuild を同時に使用することが可能になりました。
-
Visual Studio インストールの通知メッセージ: 新たにインストールされた Visual Studio で Incredibuild の拡張機能が無効になっている場合、通知メッセージが届くようになりました。
その他の事項
-
Visual Studio での clang-cl 分散を改善しました。
-
オフライン ライセンスを読み込むメカニズムを改善しました。
-
ビルドモニターで 2GB 以上のファイルをロードできるようになりました。
-
ローカルマシンでリモートプロセスを再起動する オプション (Agent Settings > Initiator > General)のデフォルト設定がオフ に変更されました。新規インストールのみ。
バグの修正
-
成功したビルドが失敗と表示される mspdbcmf (MS fast PDB converter) での問題を修正しました。
-
WorkCPU の数値が不正確だった xgCoordConsole の問題を修正しました。
-
TFS や TeamCity でのビルド中に「Specified cast is not valid」や「Object must implement IConvertible」のエラーが発生していた問題を修正しました。
-
2GB 以上の PCH ファイルがある場合にビルドがループする問題を修正しました。
-
バグの修正と安定性の向上
Incredibuild Cloud
Incredibuild Cloud の正式版をリリースしました。一般向けの提供を開始しました (2019/9/25 時点)。
Incredibuild の仮想化技術をクラウド サービスと組み合わせることで直ちに数百のコアに性能を拡張し、開発タスクを高速に処理することができます。
ご利用方法や運用方法など Incredibuild Cloud ソリューションの詳細についてはこちらをご覧ください。
その他の事項
-
Visual Studio 2019 (Clang/LLVM) に対応。Clang/LLVM をご利用の Visual Studio からシームレスなビルドの実行、IncredIbuild によるリモートマシンへの分散、高速化が可能になりました。Visual Studio 2019 での Clang/LLVM の利用方法は https://devblogs.microsoft.com/cppblog/clang-llvm-support-in-visual-studio をご覧ください。
-
Unreal Engine での Clang++ ディストリビューションのサポートが向上しました。
-
Incredibuild Windows のインストール処理を最適化しました。
-
文字エンコードの処理を強化しました。
-
投機的実行機能を使用したビルドで不完全な出力が行われる問題を修正しました。
ユニットテストの高速化
- .NET ベースのユニットテストのフレームワークによって分散されたテストのパフォーマンス最適化: .NET ベースのユニットテストのフレームワーク (NUnit、MSTest、VSTest、xUnit など) のテスト タスクが、Coordinator によって適切な OS の Helper マシンに自動的に分散されます。OS は Initiator マシンの OS に従って決定されます。Initiator マシンと同じ OS を搭載した Helper マシンのみが、パフォーマンス向上のために Coordinator からテストタスクを受け取ります。
Incredibuild - Visual Studio 間の統合
- 複数の Visual Studio エディション向けの追加の表示・設定オプション: 1 台の エージェントマシンに異なるエディションの Visual Studio がインストールされている場合、すべてのエディションが Agent Settings ダイアログに表示され、エディションごとに個別に設定できます。注意: この機能は Visual Studio 2017 および 2019 でのみご利用になれます。
- MSBuild バージョン 16.2.32702 (Visual Studio 2019) 向けに投機的実行機能のコンパイル性能が最適化されました。
Incredibuild Cloud
- Incredibuild Cloud のリモート管理の制限: Coordinator を管理するためにリモート Agent に管理者権限を付与する場合でも Incredibuild Cloud の管理は別となります。Incredibuild Cloud の動作と VM の管理は Coordinator マシンからしか行えません。この制限は Incredibuild Cloud の誤用を防いで、不必要なクラウド費用が発生しないようにするためのものです。
- Incredibuild Cloud のアンインストール時のソリューション非アクティブ化: Incredibuild Cloud のアンインストールを完了する前にソリューションのアクティベーションを解除する必要があります。これは Incredibuild Cloud 向けに作成された VM がアクティブなままになるのを回避するための仕様です。ソリューションは使用できなくなります。
- Incredibuild Cloud VM の CPU 使用率を最適化: オンプレミスの Helper マシンに設定されたタスクの実行で使用できる CPU の最小制限は、Incredibuild Cloud によってアクティブ化された VM には適用されません。これらの VM はタスクの高速化の目的でのみ起動されているため、起動時点の CPU 使用率に関係なく、空き CPU は常にタスクの実行に使用されます。
- コーディネーター モニターの [Cloud Machines] ペインの機能強化
- 安定性の向上
Incredibuild - Visual Studio 間の統合
Incredibuild 試験的な機能として、標準のVisual Studioコマンド (メニュー項目) を介して自動的に Incredibuild ビルドコマンドを有効にするように Visual Studio を設定することが可能です。つまり、Visual Studio の標準ビルドコマンドの一つをクリックすると、同等の Incredibuild コマンドが有効になります。例えば、Visual Studioビルド メニューのビルドソリューション コマンドをクリックすると、Incredibuild を使ってソリューションのビルドが行われます。Visual Studioを設定して、特定のソリューションまたはすべてのソリューションに対して Incredibuild ビルドコマンドを自動的にアクティブにすることができます。
注意:この機能は Visual Studio 2017 および 2019 でのみご利用になれます。
その他の事項
Visual Studio のサポート
- コンパイルパフォーマンスを最適化するIncredibuildの投機的実行機能は、MSBuildのバージョンを16.1.76.45076 (Visual Studio 2019) まで認証しています。
Incredibuild Cloud
- 安定性の向上
- コーディネーター モニターの [Cloud] メニューからクラウド レポートと設定にアクセスできるようになりました。
新機能・特徴
Incredibuild Cloud (ベータ版)
Incredibuild の仮想化技術とパブリッククラウドで利用可能な無限のリソースを組み合わせることで開発環境を即座に数千コアまで拡張し、タスクを高速化します。ピュア クラウド、ハイブリッド クラウドを問わず Incredibuild をクラウドと統合することで、必要に応じて CPU パワーを追加してビルド、テスト、グラフィックなど時間のかかる開発プロセスを高速化できます。
詳しくはウェブサイトやユーザー マニュアルをご覧ください。
Incredibuild Cloud ベータ プログラムへの参加をご希望の方は CloudBeta@Incredibuild.com までご連絡ください。
Visual Studio 2019 のサポート
本バージョンは Visual Studio 2019 に対応済みです。Visual Studio 2019 の [拡張機能] メニューから Incredibuild にアクセスできます。
Google Stadia を公式サポート
Google Stadia (Project Yeti) の高速化に対応しました (追加設定は不要)。Visual Studio の [Incredibuild] メニューから Stadia ソリューションをビルドするか、Incredibuild コマンドライン インターフェイスを使用してビルドを行います。この機能を利用するには、Agent 起動時に「Incredibuild for Visual Studio C/C++」と「Incredibuild for Google Stadia」の両方のソリューションが必要です。
その他の事項
ユニットテストの高速化
- ビルドモニターにテスト実行用 (Nunit) の DLL 名とテスト グループが表示されるようになりました。
- NUnit2 と NUnit3 実行のパフォーマンスと安定性が向上しました。
Visual Studio のサポート
- MSBuild バージョン 4.7.3190 (Visual Studio 2010/2012) および 16.0.452.47617 (Visual Studio 2019) 向けに投機的実行機能のコンパイル性能が最適化されました。
- 「Cannot find ‘Debug Win32’ in the build map」のようなエラー メッセージが表示される問題を修正しました。
Incredibuild エンタープライズ
- QuickValidate オプション使用時に稀にインクルード ファイルを読み込めない問題を修正しました。
新機能・特徴
ユニットテストの高速化 (ベータ版)
Incredibuild for Unit Test (ベータ版) をリリースしました。Incredibuild for Unit Test を使うと、専用のマシンを割当てることなく、ローカルとリモートの CPU コアでユニットテストの処理を並列実行できます。また、処理に参加するマシンにテスト環境をインストールする必要もありません。
Incredibuild が対応しているフレームワークは次の通りです。NUnit、MSTest、VSTest、XUnit、Google Test (Gtest)、CppUTest、QTtest、CTest。
ローカルでのみ失敗するタスク
Incredibuild がタスクを実行する際のデフォルトの方法が大きく変わりました。今後はリモートで実行されたタスクの終了コードが「0」でない場合、ローカル マシンでタスクを再実行し、追加の検証を行います。
この機能は AgentSettings の [Initiator] > [Advanced] > [Recovery] で設定できます。
.proj および .target ファイルのサポート
BuildConsole コマンドで Visual Studio および MSBuild の .proj と .target ファイルをコンパイルできるようになりました。
その他の事項
Incredibuild エンタープライズ
- ビルドの精度を迅速に検証する (beta) -Visual Studio プロジェクトのビルド時間をさらに10%~50%改善することができます。/quickvalidate BuildConsole フラグを使用すると、Incredibuild はさらにビルド時間の最適化を導入することができます。この方法でビルドすると、デバッグシンボルは生成されません。また、時間のかかる他の ビルドフラグも省略されます。この新機能は、継続的ビルドに非常に適しています。
パフォーマンス
- Initiator への Helper の割り当てが最適化され、Incredibuild 環境全体で Helper の利用効率が向上しました。
Visual Studio のサポート
- Incredibuild の投機的実行機能により、MSBuild バージョン 15.9.21.664 (Visual Studio 2017) まで、および MSBuild バージョン 16 .0.360.33175 (Visual Studio 2019) までのコンパイルのパフォーマンスを最適化できます。
Unreal Engine のサポート
- Unreal Engine 4 との統合で、Unreal Engine のクロスコンパイラを使用する際に「error: non-portable path to file」警告が発生する可能性があった問題を修正しました。
その他
- Incredibuild Coordinator に新しいライセンスをロードすると、Incredibuild Agent へのライセンス割り当てに関して、Incredibuild インフラと同じ状態で維持されるようになりました。
- ビルドモニターに「Active Tasks」という新しいグラフが追加されました。このグラフは Incredibuild で現在実行中のタスクの数を示しています。
- Incredibuild の管理者が、ユーザーによる [Enable / Disable as Helper] ステータスの変更を阻止できる機能を追加しました。このオプションは コーディネーター モニターから利用できます。
- Windows 7 の Initiator が Windows 10 の Helper にタスクを分散する際に発生する問題を修正しました。
新機能・特徴
- 本バージョンは Visual Studio 2019 へ実験的に対応したバージョンです。
FreeDev
- FreeDev 版が 30 日の期限前に無効化されてしまう問題を修正しました。
Visual Studio のサポート
- 最適化されたコンパイル高速化を実現する Incredibuild の投機的実行 (Predictive Execution) に関し、下記の MSBuild バージョンまで動作承認されました。
- 15.9.20.62856 for Visual Studio 2017
- 16.0.218.25180 for Visual Studio 2019 Preview.
- Xbox のプロジェクトを Visual Studio でビルドする際に稀に発生するエラー (「error MSB6003: The specified task executable “X” could not be run. The process cannot access the file ‘Y’ because it is being used by another process」)を修正しました。
- VS2017 のビルドツールのみがインストールされている環境で、/vsversion=vc15 オプションが効かない問題を修正しました。
その他
- コマンドラインの /profile オプションで指定されているプロファイルが見つからない場合、警告が表示されるようになりました。
- Windows 10 の Initiator マシンから Windows 7 の Helper マシンにタスクを分散する際に稀に失敗する問題を修正しました。
- 各種バグを修正しました。
アンチウイルス関連
- 「Avecto Privilege Guard」および「Trend Micro」のアンチウィルス ソフトウェアと Incredibuild を併用した際に発生する問題を修正しました。
Incredibuild for Unit Tests によるテストの高速化 (NUnit、GTest、VSTest、xUnit など)
時間のかかるテストの実行を高速化できます。
既存の Incredibuild インフラを使用して、開発者やテスト担当者がテストをより高速に実行できるようになったことで、CI イテレーションの短縮、シフトレフトの実現、より「アジャイル」な開発が可能になります。
Incredibuild エンタープライズ
- Visual Studio IDE の 2 つの異なるインスタンスから並行してビルドできるようになりました。Incredibuild の分散機能により、両インスタンスのビルドを並列実行して、Incredibuild のインフラ利用を最適化しながら両方のビルドを高速化できます。
- 大量の DB データに対するクエリを改善し、ダッシュボードのパフォーマンスが向上しました。
- Incredibuild が内部計算している「Cost Saved (節約できたコスト)」KPI を計算するための計算ベース「時間あたりのコスト」(米ドル) をカスタマイズできるようになりました。
Visual Studio のサポート
- 本バージョンは、Visual Studio バージョン 15.8.9 までを公式サポートしています。
- Visual Studio IDE を終了することなく、Incredibuild のバージョンをアップグレードできるようになりました。
- Visual Studio 2017 で Incredibuild のキーボードショートカットに対応しました。
- 最適化されたコンパイル高速化を実現する Incredibuild の投機的実行 (Predictive Execution) が MSBuild バージョン 15.8.169.51996 まで動作承認されました。
- Visual Studio の 2 つの異なるマイナー バージョンをインストールしているシナリオに対応できるようになりました。VCToolsVersion プロパティ ファイル (「Microsoft.VCToolsVersion.14.12.props」など) でどちらのバージョンを使用するかを指定することができます。
- Visual Studio 2017 でサイレント インストール オプション「IBSetupConsole /AGENT:INSTALLADDINS =ON」を使用して Incredibuild をインストールする際に発生する問題を修正しました。
その他
- セットアップ ファイルのサイズが 25% 減り、60MB になりました。
- その他のマイナーなバグを修正しました。
新機能・特徴
本バージョンは Visual Studio バージョン 15.8.2 までを正式にサポートしています。
投機的実行 (Predictive execution) によるパフォーマンスの最適化は、MsBuild バージョン 15.8.168.64424 までを正式にサポートしています。
DirectX を使用するプロセスのリモート マシンへの分散実行を大幅改善
本バージョンでは、Incredibuild の仮想化エンジンを大幅に改良し、DirectX を使用しているプロセスをリモートで分散実行するために必要な様々な必要要件をカバーしました。多くの Incredibuild ユーザーが Incredibuild の様々な統合オプションを使用して、自社製や商用のグラフィック関連のツールを大幅に高速化しています。
VSTest (ユニットテスト ツール) の実行の高速化に対応 (ベータ版)
本バージョンでは非常に時間のかかる VSTest を使用するユーザーのために、ベータ版として VSTest の分散化をサポートしました。
これにより、VSTest の実行を並列分散し、非常に高速に実行するできるようになりました。継続的統合ツールやコマンドラインを使用したVSTestの実行については、support@Incredibuild.com までご連絡ください。お客様のテストサイクルのスピードアップをお手伝いさせていただきます。
NCRIncredibuild を使用してテストサイクルを高速化することにより、どのように生産性の向上と市場投入までの時間の短縮を達成できたのか、導入の成功例をご覧いただけます。
Windows Core OS (実験段階)
Windows Core OS ホスト内で動作する Incredibuild Agent のサポート レベルを強化しました。
Windows Docker コンテナ (実験段階)
Windows Docker コンテナ内での Incredibuild の動作に様々な修正を行いました。
Incredibuild エンタープライズ
- TeamCity の拡張機能として Incredibuild を実装 (実験段階)
CI ツールとして TeamCity をご利用の方へ朗報です。TeamCity 用の新しい Incredibuild 拡張機能 (Extension) により、利便性の高い TeamCity 標準の UX を使用して TeamCity 内から Incredibuild のビルドステップをシームレスに作成・実行できるようになりました。
- ユーザーが VM をプロビジョンするイメージに変更を加える必要があるケースで、「シングルユース VM イメージ」を手動でリセットできるようになりました。「シングルユース 仮想マシンイメージ機能」を使用すると、イメージから仮想マシンをプロビジョニング / プロビジョニング解除 することができます。これらの VM に割当てられた Incredibuild ライセンスは、VM がデプロビジョンされると自動的にライセンス プールに戻されます。
- Jenkins 向け Incredibuild プラグインの機能を大幅に改善しました。
- Incredibuild エンタープライズのダッシュボードに様々な改善・修正を行いました。
Visual Studio と MSBuild のサポート
- コンパイルで /E フラグ (プリプロセス処理のみ実行) を使用するケースに対応し、CUDA のコンパイルやその他のコンパイラによるコンパイル処理のパフォーマンスが向上しました。
Incredibuild の投機的実行 (Predictive Execution) では、/E フラグを指定したコンパイルタスクがビルドに含まれる際、このコンパイルタスクに依存するタスクは、本コンパイルタスク (/E フラグ使用のコンパイル処理) がブロッカーとなり、事前に並列処理されませんでした。このため、CUDA におけるビルド プロセスは並列処理されず、逐次処理となっていました (これは Visual Studio の通常ビルドでも同じです)。この新機能により、ユーザーは投機的実行を強制的にオンにできるので、投機的実行を使わない場合とのパフォーマンスの比較ができるようになります。本機能を有効にするには次のレジストリキーに新規文字列を追加します。
レジストリキー: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Xoreax\Incredibuild\Builder
新規文字列 (REG_SZ): AllowPredictedInPreprocessCL
このレジストリ値を「1」に設定すると、/E フラグを含んだコンパイルタスクを含むビルドで予測実行をオンにできます。
- Visual Studio 2017 IDE の [表示] メニューに、Incredibuild のビルドモニター (Incrediuild Monitor) が追加されました。
- Windows にインストールしたサービス上のアカウントで Incredibuild で Visual Studio のソリューションをビルドした際に (主に Jenkins などの CI ツール)、「MS Visual Studio xx.x is not installed on this computer」とエラーが表示されてビルドできなくなる問題を修正しました。
- Visual Studio や MSBuild の出力でプレフィックス (「>1」「>2」など) が表示されなくなる問題を修正しました。
- 稀にビルド成功のステータスが正しく報告されない問題を修正しました。
- その他様々なバグを修正しました。
その他
- 大規模な Incredibuild インフラ (Coordinator が非常に多くの Agent を管理している Incredibuild インフラ) で、ごく稀に一部の Agent が短時間オフラインとなる問題を修正しました。
- UX を大幅に修正・改善しました。
Visual Studio のセットアップで Incredibuild FreeDev を利用する際に発生する問題を修正しました。
新機能・特徴
このバージョンのIncredibuildは、Visual Studioバージョン15.7.2を認証しています。
Incredibuild の投機的実行によるコンパイル性能の最適化により、MSBuild のバージョンを 15.7.179.6572 まで認証します。
CI / CD 環境でビルドマシンに Visual Studio IDE がインストールされていなくても、Visual Studio ビルドツールのみインストールされていれば、Visual Studio のソリューション (プロジェクト) の分散ビルドを実行できるようになりました。
Incredibuild コンソール コマンドの終了コード
Incredibuild のコマンドラインによる実行コマンド (BuildConsole および IBConsoleコマンド) の終了コードが Incredibuild によって実行されたツール (ビルドツールなど) の終了コードと同一コードになりました。
ビルドツール独自の終了コードとの衝突を避けるため、Incredibuild の内部エラーを示す終了コードをユーザーが選択できるようになりました。
Windows Core OS (実験段階)
Windows Core OS (WCOS) 上で、Initiator Agent として Incredibuild を利用することができるようになりました。Agent を Windows Core OS にインストールして Initiator Agent として参加させることができます。Windows Core OS で Helper として Incredibuild を利用する機能は現在準備中です。
Windows Docker コンテナ (実験段階)
Windows Docker コンテナ環境内 Incredibuild をインストールし、Initiator として利用できるようになりました。これにより、Windows Docker コンテナを使用した CI / CD のワークフロー内で Incredibuild を使用することが可能です。
Docker コンテナが連続的にプロビジョン / デプロビジョン (破棄) されるシナリオにおいては、Docker コンテナ内にインストールされた Agent に対して自動的にライセンスを付与し、コンテナが破棄された際に自動的にライセンスがプールに戻る機能を提供している Incredibuild エンタープライズの利用を推奨します。
この機能に関する詳細は、こちら をご覧ください。
本バージョンでは Windows Docker コンテナ内にインストールされた Agent は Initiator としてのみ使用できます。Helperとしては機能しません。
Windows Docker コンテナ内にインストールした Agent を Helper として動作させる機能は現在準備中です。
Windows 10 build 17040 に関する重大な不具合の修正
バージョン 9.2.2 でご案内の通り、Windows 10 build 17040 に関連した重大な不具合を修正しています。
この問題は、新しく導入された Windows API に起因しており、Windows 10 build 17040 以降の OS 上で Helper Agent がタスクを正常に実行できないというものでした。
Visual Studio のサポート
- コンパイル処理の最適高速化機能である、投機的実行 (Predictive Execution) 機能をアクティベートできる MSBuild のバージョンを手動で更新できるようになりました。詳しくは「投機的実行と MSBuild のバージョン」をご覧ください。
- Visual Studio 2017 IDE の [表示] メニューで Incredibuild のビルドモニターを再表示させることができるようになりました。
- Visual Studio のインストールの一部として C ++ ワークロードがインストールされていない時に Incredibuild が C# プロジェクトをコンパイルできない問題を修正しました。
- Incredibuild の Visual Studio プラグインで「.NET Framework Initialization Error」エラーが発生して失敗する問題を修正しました。
- XAML で生成された cpp を Incredibuild でコンパイルする際に「c1xx: fatal error C1083: Cannot open source file: [file name]」エラーでコンパイルが失敗する問題を修正しました。
- コンパイルの際に「cl : Command line error D8037 : cannot create temporary il file; clean temp directory of old il files」エラーで失敗する問題を修正しました。
- 稀にビルドが失敗しているにもかかわらず、ステータスバーでは成功マークが出る問題を修正しました。
Make & Build ツール ソリューション
- Make & Build ツール ソリューションで、Android NDK のビルドツール類のすべてを正式にサポートしました。本バージョンでは、次のプロセスが自動的に Helper マシンに分散されます。「arm-linux-androideabi-g++」「arm-linux-androideabi-gcc」「x86_64-linux-android-g++」「x86_64-linux-android-gcc」「aarch64-linux-android-g++」「aarch64-linux-android-gcc」
- Ruby バージョン 2.4 を正式にサポートしました。DevTools ソリューションのインターフェイスで Ruby のコンパイルを分散して高速化できます。
- 最新の Xilinx コンパイラ「arm-linux-gnueabihf-g++.exe」を正式にサポートしました。
その他
- Nintendo Switch 向けのビルドで、特定のケースでコンパイルする必要がないファイルをリコンパイルする問題を修正しました。
- コーディネーター モニターの表示時やライセンスを読み込む XLicProc コマンド実行時に管理者権限に昇格されず、エラーが出る問題を修正しました。
- OfficeScan アンチウィルスがインストールされているマシンで「Failed to load build set」エラーが発生してタスクが失敗する問題を修正しました。
- 特定のロケールの OS で「ERROR: INSERT has more expressions than target columns」エラーが発生して Incredibuild コマンドが失敗する問題を修正しました。
- ユーザーがビルドをキャンセルした場合、ビルド ステータスバーが黄色ではなく、白で表示されるようになりました。ビルド中に警告があった場合のみビルド ステータスバーが黄色で表示されます。
- 稀に「THandleIntegerMap_HashTable: Hashtable does not allow duplicates」エラーが発生する問題を修正しました。
- 稀に Agent が Coordinator から切断される問題を修正しました。
新機能・特徴
本バージョンは、Windows 10 build 17046 以降で新しく追加された Windows API により、Windows 10 17046が Helper として動作した際に致命的な問題となることに対処したものです。
投機的実行 (Predictive Execution) がオンの際、ビルドエラーの出力がコンソールに送られない問題を修正しました。本不具合は、(IDE を含めたVisual Studio 全体ではなく) Visual Studio のビルドツールのみをインストールした CI (継続的インテグレーション) 環境で発生していました。
Visual Studio のサポート
Visual Studio のソリューションのビルドにおいて、Clang コンパイラの使用で投機的実行が適用されている際 (Android NDK や Nintndo Switch のビルドなど) に、不必要なリビルド (フルビルド) が実行されてしまう (差分ビルドがフルビルドになってしまう) 問題を修正しました。
マルチビルド実行時に「Cannot create file: …\DependencyCache.dat」のエラーが発生する問題を修正しました。
非常に稀に Incredibuild がコマンドラインに D8003 のエラーコードで表示されるエラーが発生する問題を修正しました。
XCopy タスクが期待されるゼロ以外の終了コードを返した場合に、Incredibuild が Visual Studio ビルドの失敗としてマークされる問題を修正しました。
Make & Build ツール ソリューション
cl コンパイラのサポートが追加されました。
BSCMake の使用時に稀に発生するエラーを修正しました。
その他
Helperが (Initiator のものではなくローカルの) UNC パスを直接参照できるオプションを導入し、さらなる高速化が可能となりました。この機能は異なる OS バージョンが混在する環境でも機能します。
Tencent Anti-Phishing ウィルスソフトがインストールされているリモートマシンにタスクが分散できない問題を修正しました。
本バージョンは、Windows 10 build 17046 以降で新しく追加された Windows API により、Windows 10 17046が Helper として動作した際に致命的な問題となることに対処したものです。
Incredibuild エンタープライズの提供を開始しました。本製品はソフトウェアの高速化だけでなく、企業特有のニーズに対応した高度な機能を搭載しています。
Incredibuild エンタープライズは、大規模なデプロイメントの管理、ビッグデータの分析とレポート作成に重点を置いています。これにより、先進的な開発技術との緊密な統合、CI や DevOps に対するサポートの強化、企業の IT や運営からの要求に対応することができます。
Incredibuild Enterprise Edition の詳細はこちらをご覧ください。
一般
本バージョンは 2017年12月7日までにリリースされた Windows OS およびそのシステム アップデートに対応しています。
Qt Creator の拡張機能をリリースしました。
既知の問題
Windows10 の Fall Creators Update (FCU) (バージョン 1709) には、CreateWindow() 関数や CreateWindowEx() 関数が予期せず失敗する不具合があります。これは多くの Visual Studio 拡張機能に影響を及ぼし、Microsoft も認識している既知の不具合です。
Microsoft のアップデート、今後の修正に関しては、以下の URL から詳細をご確認下さい。https://support.microsoft.com/ja-jp/help/4054150/issues-when-windows-10-fall-creators-update-calls-createwindowex-for-s。
この問題により、Visual Studio の Incredibuild 拡張機能が断続的にクラッシュする可能性があります。
Visual Studio のサポート
-
本バージョンは、Visual Studio 2017 update 5 (version 15.4.5) および該当する MSBuild のバージョンを正式にサポートしています。
-
Visual Studio のセットアップ プログラムで Incredibuild をアップグレードすると、Incredibuild 製品および Visual Studio の Incredibuild 機能拡張がアップグレードされるようになりました。
-
Incredibuild が Visual Basic のプロジェクトを含む (C/C++の) ソリューションをコンパイルする際の処理を改善しました。
Make & Build ツール
-
Qt Creator の Incredibuild 拡張機能が利用可能になりました。試用を希望される場合は support@Incredibuild.com までお問い合わせください。
-
Arm コンパイラ「arm-xilinx-linux-gnueabi-g ++」を Make & Build ツール ソリューションの一部としてデフォルトでサポートしています。
-
デフォルトで JOM ビルドシステムをより並列化できるようになりました。
バグの修正
-
バージョン 9.0 で発生していた buildconsole /command を使用した MSBuild コンパイル実行時に、コンパイルタスクの stderr ストリームに「xgTaskID = 00000000」という値が返され、コンパイルが失敗する問題を修正しました。
-
マイナーなバグの修正
本バージョンは 2017/8/18 までにリリースされたすべての Windows OS をサポートしています。
Visual Studio のサポート
本バージョンは Visual Studio 2017 update 3 および Visual Studio 2017 update 3 とともにリリースされた MSBuild のバージョンをサポートしています。
Visual Studio 2017 update 3 に関して次の 2 つの問題を認識しています。
- Visual Studio の「Lightweight solution load」機能には対応していません (現在開発中)。
- Visual Studio 2017 update 3 での変更により、このバージョンの Visual Studio でコンパイルする際に、Incredibuild の [Build Monitor] > [Project View] では各プロジェクトでステータスが色分け表示されません。この問題は次期バージョンで修正予定です。
C# コードベースのタスクを高速化するための新しい最適化ソリューションを開発するために、既存の C# 高速化サポートにいくつか変更を加えました。30 以上のプロジェクトを持つソリューションに対応します。複数の MSBuild ソリューションが並列に実行される状況では、新しい Incredibuild の機能による同時実行が、C# のフルビルド サイクルを高速化するための大きなメリットになります。
Nuget の普及に伴い、Visual Studio 内で開始されたビルドが欠けている Nuget パッケージを復元するように設定されている状況に対処可能になりました。Visual Studio の通常機能の一部として提供できるように現在開発中です。現在のバージョンではレジストリ値を作成する必要があります。Initiator マシンで「HKEY_LOCAL_MACHINE¥SOFTWARE¥Wow6432Node¥Xoreax¥Incredibuild¥Builder」下に「AutoRestoreNugetPackages」というレジストリの文字列を作成して値を「1」に設定します。
新着情報
- Incredibuild で一般的な Qt Creator IDE で実行されるビルドを高速化することができるようになりました。Qt Creator プラグインは現在開発中です。Qt Creator のビルドを高速化する方法については support@Incredibuild.com までお問い合わせください。
- Incredibuild で CTest の実行を大幅に高速化できるようになりました。CTest は CMake の一部として配布されるテスト用のツールです。CTest 実行の高速化に興味のある方は support@Incredibuild.com までお問い合わせください。
- 「/IbExitCodeShift=」スイッチで Incredibuild BuildConsole の終了コードを変更できるようになりました。
- ビルドモニターのプログレスビューに追加された新機能で特定のバーを検索できます。プログレスビュー エリアで「Ctrl + B」を押下して、表示されているバーのキャプションを検索する文字列を入力できます。[OK] ボタンをクリックすると、検索文字列を含むすべてのバーがハイライトで表示されます。作成されたテキスト ファイルがデフォルトのテキスト エディタで開かれ、検索した文字列に該当するタスクが一覧表示されます。
- Incredibuild の一時データの書き込み場所が変更可能になりました。
ゲーム コンソール
Nintendo Switch のコンパイルの高速化にさまざまな修正・改善を行いました。Nintendo Switch のビルド パフォーマンスを最適化するため、[Max Compilations] フィールドに大きい値を設定してください。これにより、Nintendo Switch ビルドシステムに Incredibuild がリモート Helper に分散する多くのコンパイル タスクを同時に実行するよう指示が出されます。Visual Studio でこの値を設定するには、プロジェクトのプロパティ ページから [C/C++] -> [General] を開いて、[Max Compilations] フィールドに大きな値を設定します (100 以を推奨)。
XBox、Sony PlayStation、Nintendo、Unreal Engine、Lumberyard の開発キットの最新バージョンに対応しました。
バグの修正
- Helper マシンで実行された際に VsTest 単体テストの失敗を引き起こす問題を修正しました。
- 「Unknown argument -j」とともにビルドの失敗を引き起こす CMake の問題を修正しました。
- Windows 10 の Helper にタスクを分散できない問題を修正しました。
- Incredibuild のユーザーインターフェイス、仮想化、実行エンジンのマイナーなバグを修正しました。