こんにちは!

開発部の植草です。

皆さん、おまたせ致しました。

前回の投稿の続きです★

前回を見逃したかたはこちら。。。↓

プログラムの高速化手法(ループ展開)~Part①

このコストを抑える方法がループ展開になります。

例えば2段のループ展開だと

For(i=1; i<=100; i+=2)
sum += i;
sum += i+1
}

のように書けるのでループの回数が半分になります。

極論を言えばこれを100個分かけばループが要らなくなります。

しかしながら、通常のプログラムだと100回と決まった回数をループすることは少ないので

N回のループでも対応可能なように実用レベルにするにはもう少し工夫がいります。

それはまた別の機会に紹介します。

実際この手法を使えば速くなるっちゃなるのですが、

たかだか100回や1,000回のループじゃ体感としては何も感じないです。

ループを1万回や10万回もやるようになって初めて効果が出るかと思います。

※注.ハードウェアによっては効果がでない、出づらいことがあります。

ループ展開はプログラムの可読性が犠牲になるので業務で勝手に使ったら怒られるので注意!!