読者です 読者をやめる 読者になる 読者になる

SourceForge.JPに新しくプロジェクトを申請した。
https://sourceforge.jp/projects/imagefilter/
最近作った画像ブラー処理をまずはコミット。利用するメモリの範囲を狭めたら以前は10msぐらい掛かってた処理が6msぐらいで終わるようになって結構高速化出来た。メモリの書き込み範囲が広いとキャッシュから溢れた部分をメインメモリに書き込む必要が出てそれが負担になるのかもしれない。となるとキャッシュに収まらないサイズのデータをマルチパス処理しようとすると大変だなぁ…。

現実世界に例えると、工場(CPU)で加工をする場合に材料(データ)をいちいち倉庫(メインメモリ)から出してまた戻してを繰り返していると無駄が多いので、工場内に棚(キャッシュ)を用意してバッファに使ったり、パイプライン方式で処理する場合の置き場所に使う感じだろうか。。棚の容積が大きかったり、倉庫からの出し入れ作業が十分に速ければ問題が置きにくい、という感じだろうか。。