Matlabソースの高速化のために

Matlabソースの高速化のためにできることのまず第一は、ループ(forやwhile)を少なくし、行列内の各々の要素にアクセスする頻度を少なくすることです。そのためにはコードのベクトル化(code vectorization)をしてやる必要があります。

実はこの手法(code vectorization)は、Octaveを使う場合にはより有効になってきます。実は最近のMatlabではJITコンパイラが有効になっているため、ベクトル化がされていなくてもある程度の速度にしてくれるのです。ところがOctaveでは(バージョン3.0の時点では)まだJIT対応できていないので、ベクトル化をすることで劇的な速度向上が見込めるわけです。