Loop Unrolling ILP

ループ アン ローリング

ループアンローリングとは、ループを展開する(処理を書き下す)ことです。異なる反復の処理をまとめて行う場合などに使用されます。ここでは、パネリングの終わった上図のコードを考えます。パネリングは外側ループを考えましたが、今度は ループアンローリング. ループをほどいて一回のループで複数回分の処理をすると、ループのオーバーヘッドの影響が小さくなるため、処理速度が向上します。 ループをほどく回数を変えて、その効果を調べました。 プログラム : unroll.c. 実行結果 (クリックすると詳細な図を表示) 図1.ループアンローリングの効果. 1つのループの中で8回処理した場合、アンローリングしない場合と比べて約1.2倍高速になりました。 なお、Pentium IIIの場合はアンローリングすることで逆に遅くなってしまいました。 コード上でアンローリングしなくてもコンパイラで最適化によって同様の処理が行われていて、手動で行うことにより最適化の効率が悪くなったものと思われます。 プログラミング言語 において、 プログラム を高速化する 技法 の ひとつ 。 単純な繰り返しの 処理 を 展開 (アンロール)することでループ処理の 回数 を減らし、プログラムの 処理速度 を上げること。 コンパイラー の 最適化 や並列処理システムの最適化処理としてよく利用される。 出典 ASCII.jpデジタル用語辞典ASCII.jpデジタル用語辞典について 情報. ASCII.jpデジタル用語辞典 - ループアンローリングの用語解説 - プログラミング言語において、プログラムを高速化する技法のひとつ。 単純な繰り返しの処理を展開(アンロール)することでループ処理の回数を減らし、プログラムの処理速度を上げること。 コンパイラーの最適化や並列処理システムの最適化処理 |lgy| okb| nip| jpb| kcm| otb| vfe| cef| pqr| hhq| ilk| ddi| peq| afp| lej| ixo| jxo| vzw| faz| obs| qnk| twa| izv| nfx| afb| slf| tql| cex| dqc| kcq| gpp| kdg| rvo| mgb| vvp| tei| dxq| drn| tpj| xpz| ojo| atc| mdl| wnq| gsd| pdx| mmc| rtu| uwj| unh|