12.07.2015 Views

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

NEON ベ ク ト ル 化 コ ンパイ ラの 使 用例 3-2 ベク ト ル 化 可 能 なループの 分 類float *a, *b;int i, j, n;...for (i = 0; i < n; i++){*(a+j) = x +b[i];j += 2;};ベ ク ト ル 化 する には、 コ ンパイ ラ がベク タ ア ク セスパターンで 変 数 を 識 別 する 必 要 があ り ます。 また、 ループの 繰 り 返 しの 間 でデータの 依 存 関 係 が 生 じないよ う にする 必 要 もあ り ます。ストライドパターンとデータアクセスループ 内 のデータ ア ク セスのス ト ラ イ ド パターン と は、 シーケンシ ャルなループの 繰 り 返 しの 間 にデータ 要 素 がア ク セス されるパターンです。 例 えば、配 列 の 各 要 素 を 直 線 的 にア ク セスするループは、 1 つのス ト ラ イ ド を 持 っています。 別 の 例 と し ては、 使 用 さ れる 各 要 素 間 を 一 定 のオフセ ッ ト で 配 列 にアクセスするループは、 一 定 のスト ライドを 持 つという ことになります。例 3-2 では、b には 1 のス ト ライ ドでアクセスし、a には 2 のス ト ライ ドでアクセスしています。3.3.3 ベク トル 化 によるパフォーマンスに 影 響 を 与 える 要 因自 動 ベ ク ト ル 化 処 理 および 生 成 さ れる コー ド のパフ ォーマン スは、 以 下 の ものに 影 響 を 受 け ます。ループの 構 成最 高 のパフ ォーマン ス を 得 るには、 ネス ト し たループの 最 深 部のループは 1 つのス ト ラ イ ド で 配 列 にア ク セスする 必 要 があ り ます。データ の 構 造また、 データ 型 は NEON レ ジ ス タ で 保 持 で き るデータ 要 素 の 数に も 影 響 を 与 え、 そのために 並 列 に 実 行 で き る オペレーシ ョ ンの 数 に 影 響 が 及 びます。3-6 Copyright © 2002-2010 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DUI 0205IJNon-Confidential, ID 100419

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!