AOT デプロイを最適化する
Native AOT 発行プロセスでは、アプリ専用に調整されたランタイム ライブラリのサブセットを含む、自己完結型の実行可能ファイルが生成されます。 通常、コンパイルはアプリケーションのスタティック分析に依存し、可能な限り最善の出力を生成します。 ただし、"可能な限り最善の" という用語には多くの意味があります。 場合によっては、発行プロセスにヒントを提供することで、コンパイルの出力を向上させることができます。
サイズまたは速度を最適化する
発行プロセスはコンパイル時に、可能な限り理論的に最速の実行可能ファイルを生成することと、実行可能ファイルのサイズとの間で決定と妥協を行います。 既定では、コンパイラは混合のアプローチを選択します。つまり、高速なコードを生成しつつ、アプリケーションのサイズにも注意を払います。
<OptimizationPreference>
MSBuild プロパティを使うと、既定の混合アプローチではなく、一般的な最適化の目標を指示することができます。
<OptimizationPreference>Size</OptimizationPreference>
OptimizationPreference
を Size
に設定すると、他のパフォーマンス メトリックではなく実行可能ファイルのサイズを優先するように発行プロセスに指示できます。 アプリのサイズは小さくなることが予想されますが、他のパフォーマンス メトリックが影響を受ける可能性があります。
<OptimizationPreference>Speed</OptimizationPreference>
OptimizationPreference
を Speed
に設定すると、コードの実行速度を優先するように発行プロセスに指示できます。 アプリの最大スループットは高くなることが予想されますが、他のパフォーマンス メトリックが影響を受ける可能性があります。
さらなるサイズ最適化オプション
Native AOT デプロイはトリミングの使用を意味するため、追加のトリミング オプションを指定することで、アプリケーションのサイズをさらに改善することが可能です。 たとえば、Trim フレームワーク ライブラリ機能セクションでは、グローバリゼーションなどのライブラリ機能を無効にする方法について説明しています。
.NET