Build Cache
この機能は現在、限定的に提供されています。詳しくは、カスタマーサクセスマネージャーにご相談ください。
Build Cache は、Incredibuild で実行したすべてのワークロードのキャッシュを作成し、これらを使用して将来のワークロードを高速化することで、時間とリソースを節約します。イニシエータエージェントごとに特別なライセンスが必要です。
概要
ワークロードは、しばしばツリー状の構造で処理されます。レイヤー 1 のファイルはレイヤー 2 のファイルを作成するために使用され、レイヤー 2 はレイヤー 3 のファイルを作成するために使用され、最終的な出力が生成されるまで同様に使用されます。
Incredibuildは、ワークロードが処理されると、そのプロセスの詳細を保存し、将来使用することができます。他のファイルから生成された各処理部分は、入力ファイルと出力ファイルのペアとしてキャッシュに保存されます。ファイルの一部を変更した後にワークロードを実行すると、Build Cacheは類似している部分を使用して、プロセスの一部が実行されないようにすることができます。
Helper Cacheとの違い
Helperにタスクが与えられると、処理に必要なファイルがHelper Cacheに保存されます。全く同じファイルが送られてきた場合でも、ヘルパーは再度処理を行いますが、ファイルの再転送は必要ありません。
Build Cache では、Initiator は既に処理されたファイルを認識し、それらは完全に省略されます。再転送または再実行する必要はありません。
Build Cache ライセンスの割り当て方法
Build Cacheを使用するすべてのイニシエータに、特別なBuild Cacheライセンスを割り当てる必要があります。
-
Coordinator > Agent List にアクセスしてください。
-
Build Cacheを有効にしたいイニシエータエージェントをすべて選択します。
-
Actions >Build Cache License >Allocate License をクリックします。
注意 : また、各エージェントの隣にあるオプション (...)メニューを使用して、1つのイニシエータにライセンスを割り当てることもできます。
イニシエータエージェントでBuild Cacheを有効にする方法
ライセンスの割り当てに加えて、Build Cacheを使用するすべてのイニシエータ エージェントに対して、以下の設定を行う必要があります。
Agent Settings > Build CacheでBuild Cacheを有効にし、設定を調整することができます。一度有効にすると、Build Cacheはすべてのワークロードに使用され、個々のワークロードで無効にすることはできません。
-
イニシエーターマシン上で、Agent Settings > Build Cache にアクセスします。
-
General のウィンドウにアクセスします。
-
Enable Build Cache をクリックします。
-
Build Cache > Database にアクセスします。
-
Build Cacheは、メタデータを保存するためにRedisデータベースが必要です。インストール時に、各イニシエータに自動的にインストールされる、デフォルトのデータベースを使用するか、リモートのRedisデータベースを指定することができます。
リモートデータベースを使用し、データベースにアクセスする必要がある場合、アドレス 、ポート 、パスワード を入力します。
-
リモートデータベース、ローカルデータベースのどちらを使用する場合でも、Folder のフィールドで場所を指定します。パフォーマンスを最適化するために、リモートネットワークフォルダではなく、ローカルフォルダを使用することをお勧めします。
フォルダに認証情報 が必要な場合は、ユーザー名 とパスワード を指定してください。
-
Build Cache >File Cache にアクセスしてください。この領域は、キャッシュファイルそのものを定義します。場所、サイズ制限、必要な認証情報を定義することができます。サイズ制限は、実行予定のすべてのワークロードの出力の2~3倍で、10GB以上である必要があります。
また、Coordinator の Agent List で、フォルダとキャッシュのサイズを変更することができます。イニシエータエージェント を選択し、オプションメニューを開き、Build Cache Configuration を選択します。これは、複数のエージェントを選択し、アクションメニューを使用することで、大規模に行うことができます。
高度な設定
-
キャッシュファイルのステータスを一覧表示します。コマンドラインでワークロードを実行する際に、どのファイルがキャッシュされたかを列挙します。
-
キャッシュされたプロセス出力を復元します。ビルドキャッシュで一致するキャッシュが見つかり、ワークロードの一部が省略された場合でも、このオプションを使用すると、完全に実行されたかのようにコンソールで詳細を表示することができます。これを無効にするとパフォーマンスが向上しますが、場合によってはコンソール出力が必要なこともあります。無効化する際はご注意ください。
-
キャッシュを消去する:データベースとビルドキャッシュの両方をクリアします。これらの項目は、Build Cache機能の基本であるため、通常の場合、キャッシュの消去はお勧めしません。
Build Cacheの効果を検証する
Build Cacheを使用することでどれだけ時間が短縮されたか、についての詳細は、すべてのビルドの出力に含まれます。これは、コーディネーター モニターの出力タブや、コマンドラインで表示される出力で確認することができます。
制限事項
-
Build cacheはVisual Studio 2017以降でのみ使用可能です。
-
Build cache は、cl ツールセット (cl.exe) を使用する msbuild ワークロードのみをサポートします。
-
Build cacheは、複数のビルドの同時実行をサポートしていません。