title_parttitle_parttitle_part
静岡県浜松市であれこれソフトを開発している A.K.I Software のブログです。日々の開発日記やサーバー・セキュリティ関連の話題なども掲載。
<< 2024/03 >>12345678910111213141516171819202122232425262728293031
《《《 ネットワーク機器の購入は Amazon で! 》》》
Powered by BLOM 画像フィルタを実装中 その2
小さくも大きくも閉じたりもしません
09/09/16 04:26 / PMailServer2

画像フィルタの処理速度に不満があったのでコツコツと最適化を行って、取りあえずは良いかな?という速度になりました。試作段階から3割ほど速度が上がりました。
まだまだ満足出来るレベルではありませんけど(^-^;

速度UPはかなり苦労する所でして

if SourceBuff[x]=DestBuff[x2] then
begin
inc(cp);
end;

なんてコードを

dec(cp,SouceBuff[x] XOR DestBuff[x2]);

と後から見ると理解し難いコードにして速度を上げていたりします。
(上記の2つのコードは等価ではありません。下のコードで動かす為に前提条件を設けて、その前提条件に合うようにデータを加工して、とやっています。)

CPU ウィンドウと睨めっこして、コンパイラが最適化したコードを参照しつつ、それ以上に最適化したコードにならないかジーーっと眺めて「これだ!」と思ったコードを書いてみたら速度が出たり出なかったりを繰り返します。

画像処理系は2次元になるので面倒くさいんです。
実はお約束ルーチンを書くよりもコーディング自体は楽しいんですけどね。パズルみたいで。

精度を下げれば速度を更に10割増も可能なのですが、精度を下げては意味がありません。精度を上げるのは「認識率を上げる」よりも「誤認識率を下げる」という意味合いの方が強いです。
100通中99通のspamを弾いて1通誤認識するよりも、80通のspamしか弾けないけど誤認識は0の方がメールサーバーとしては大事だと思います。

前回の記事の通り画像のspamフィルタは Pro版のみの機能ですが、FEditor で使う分は Std/Pro どちらでも利用出来るようにしてあります。

予定通り行けば、今週末辺りに 1.80b としてリリースする予定です。

[更新日付:2009/09/16 04:26:45]
トラックバックを見る(0)
Log Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+sl+fc31b5e591bfcdfe246d008e85d6b673fd484d57]
TB Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+tb+fc31b5e591bfcdfe246d008e85d6b673fd484d57]

記事へのコメント

コメントはありません

名前
コメントキー
 
コメントする時はキーを正確に入力して下さい
コメント
アドレスを含んだコメントはできません
© 2008-10 A.K.I Software all rights reserved.