翻訳と辞書
Words near each other
・ ルーブ・マーカード
・ ルーブ・ワッデル
・ ループ
・ ループ (やゆゆの曲)
・ ループ (プログラミング)
・ ループ (坂本真綾の曲)
・ ループ (鈴木光司の小説)
・ ループ&ループ
・ ループもの
・ ループアンテナ
ループアンローリング
・ ループジャンプ
・ ループス
・ ループスエリテマトーデス
・ ループスバンド試験
・ ループスライダー
・ ループス・エリテマトーデス
・ ループス帯試験
・ ループス抗凝固因子
・ ループス腎炎


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

ループアンローリング : ウィキペディア日本語版
ループ展開[るーぷてんかい]
ループ展開(ループてんかい、)は、プログラムのサイズを犠牲に実行速度を最適化する(時間と空間のトレードオフ)、と呼ばれる手法の1つである。ループアンローリング()とも呼ぶ。プログラマが手動で行うこともあるし、コンパイラが行うこともある。
ループ展開の目的は、毎回の繰り返しごとに発生する「ループの終了」条件のテストを減少させる(もしくはなくす)事によって、実行速度を向上させることである。ループは、ループ自体を制御するためのオーバーヘッドがなくなるように、独立した命令ブロックの連続に書き換えることができる。
== 利点 ==
ループのオーバーヘッドは、ポインタまたはインデックスをインクリメントして配列の次の要素を指すための命令群(ポインタ演算)と「ループ終了条件」のテストに由来する。最適化コンパイラなどで配列の個々の要素への参照のためのオフセットを事前に計算でき、それを直接機械語命令列にできるなら、実行時の余分な演算を省くことができる。
* ループ展開によってプログラムが長くなったとしても、それ以上に実質的な実行命令数が削減されれば、全体としては性能が強化される。
* 分岐ペナルティが最小化される。
* ループ内の各文が相互に依存していない場合(すなわち、ループのある周回の結果がその後の周回で必要とされない場合)、それらの文は並列計算できる可能性がある。
* コンパイル時にループ回数(配列要素数)が不明な場合でも、動的ループ展開を実装可能である(Duff's device)。
最適化コンパイラには自動的または要求に応じてループ展開できるものもある。

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「ループ展開」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.