タグ
練習がてら、圧縮符号化の手法のひとつである Range Coder を Perl で実装してみました。http://github.com/naoya/perl-algorithm-rangecoder/tree/masterRange Coder は算術符号を実数ではなく整数で実現した手法です。高速な算術圧縮を実現する「Range Coder... 続きを読む
ご覧のように、データを出現頻度の降順で並び替えた上で SSE によるシーケンシャルサーチを使うことで、二分検索を使った場合と比べて 56% パフォーマンスが向上しています。また、この手法はデータのアクセスパターンも改善する (二分検索によるランダムアクセ... 続きを読む
« Tritonn (MySQL+Senna) の join を高速化 | メイン | Range Coder の展開速度を SSE で高速化 (してもらった) » 2008年02月22日 Range Coder の終了処理 CodeZine:高速な算術圧縮を実現する「Range Coder」(算術圧縮, データ圧縮, Range Coder)等を見てい... 続きを読む
はじめに 本記事では、全体のサイズが最小となる算術圧縮を高速に実現するRange Coder(以下RC)を紹介します。 算術圧縮は、各文字の出現確率が分かっている場合にそのデータを最小長で表現可能な符号法です。各文字に固定の符号を割り当てるHuffman法とは違... 続きを読む

