High (高)
レジスタースピル/フィル解析とサーベイ + トリップカウント、FLOP、コールスタック (特性化) + メモリー・アクセス・パターン
High (高) 精度で完全な特性化およびメモリー・アクセス・パターンの手順を有効にしてベクトル化とコードの調査パースペクティブを実行した後、インテル® Advisor で以下を行います。

FLOP データを使用して、アプリケーションのメモリー使用量とパフォーマンス値を解析し、適切なベクトル化の方針を決定できます。
計算パフォーマンスのカラム
このカラムを設定して、アプリケーションで使用される特定タイプの操作メトリックのみを表示できます。[Compute Performance (計算パフォーマンス)]カラムのヘッダーにある
コントロールをクリックし、目的のドロップダウン・オプションを選択して次の操作を行います。
特定のループ/関数を選択して、[Code Analytics (コード解析)] タブで FLOP / 整数操作の使用率の詳細を確認します。
![[Code Analytics (コード解析)] ペインの Details of operation utilization (操作利用率の詳細) (ベクトル化のパースペクティブ)](GUID-CBEA70DD-C3BC-4976-8320-EF6D16506357-low.png)
メモリーカラム
このカラムを設定して、1 つ以上の特定のメモリーレベルおよび操作タイプのメトリックのみを表示できます。[Memory (メモリー)] カラムの歯車アイコンをクリックして、使用するドロップダウン・オプションを選択し、グリッドに表示するカラムを決定します。
現在のカラムを非表示にするか、[Show All Columns (すべてのカラムを表示)]、または [Configure Column Layouts (カラムレイアウト設定)] を選択してグリッドに表示するカラムをカスタマイズできます。
[計算パフォーマンス] と [メモリー] カラムでレポートされるトラフィックと AI データを使用して、[メモリー・アクセス・パターン] タブでメモリー使用量を調査すべき候補を見つけることができます。例えば、非効率なアクセスパターンは、AI 値が高いループ/関数に強い影響を及ぼします。これは、メモリー使用量の最適化から始めるべきことを示しています。
カラムで対象とするループ/関数を選択します。選択したループ/関数のメモリー・アクセス・タイプ、データトラバースの方法、およびメモリー・アクセス・パターン解析によるベクトル効率とキャッシュ帯域幅への影響を調べます。
メモリー・アクセス・パターンは、データをベクトルレジスターにロードおよびベクトルレジスターからストアする方法に影響します。

データ構造の配置がパフォーマンスに与える影響を解析するには、次のことに注意してください。
ベクトル化には、ユニットストライドが最適です。ここでの目標は、不規則なストライドを排除し、一定ストライドを最小限にしてメモリー使用量を最適化することです。
[Refinement (リファインメント)] レポートの下部にある [メモリー・アクセス・パターン] レポートのタブで、行をダブルクリックして、選択した操作のソースコードを表示します。
[Memory Access Patterns Source (メモリー・アクセス・パターン・ソース)] ウィンドウには、左上から右下へ順に、次のペインがあります。
[View Activation (ビューの表示/非表示)] ペイン - [Source view (ソースビュー)] に表示する各ビューの表示/非表示を制御します。
[Source View (ソース表示)] ペイン - 選択したループ/関数のソースコードを表示します。
[Assembly View (アセンブリー表示)] ペイン - 選択されたループ/関数のアセンブリー・ソースを表示します。
[Details View (詳細表示)] ペイン - 選択されたサイトの詳細を表示します。