各種skkservの比較skkservとdbskkdなどで検索にかかる時間を比較してみました。(調査は1998年12月ごろに行いました。rskkserv-1.0.2Cプログラムckskkserv.cで測定。(このプログラムのskkservアクセスルーチンはskkfepから持ってきたものです)検索した単語は、私のユーザ辞書にある単語6941個。(pskkservの結果の値とほぼ同じ)。結果コードの'1'や'4'の1文字を読み込むまでにかかる時間を計りました。localhost上でサーバを動かしてテスト。(初回はディスクアクセスの影響が大きいため平均の計算には入れていません)。検索速度も向上します。dbskkd-cdbとrskkserv以外は1回分6941個の単語を検索するのに約23分かかりました。実際の検索結果を全て読み込むまでにかかる時間。かかった時間を単語数で割ったもの。8481.15この速度はdbskkd-cdbとrskkserv以外はどれもほぼ同じ。だいたい1秒間で5個の単語を検索できる。これが実際のSKKの使用において検索にかかる時間になります。残り1/3が10000μs以上かかっています。時間がかかっているのはディスクアクセスが入るからのようです。キャッシュに入りきらなかったのだと思います。キャッシュファイルSKK-JISYO.L.aとSKK-JISYO.L.nを作ります。メモリ使用量(KB)psで一度くらい見てみるという方法でチェックしてみました(かなりいいかげんです)。入力として与えた最後の単語を検索したあとの時点でのpsの出力を見てみました。pskkserv-Gでは"-"が検索できません。FOUNDになります。FOUNDのときに、'\0'のあとに'\n'を入れて返してきます。skkipserv.c.difのように変更してみました。">"で終わる単語をうまく検索できません。具体的には、"はん>"、"しん>"など。dic.c.difのように変更してみました。以下のものも完全ではありません。おくりがななしと判断してしまいます。FOUNDになります。具体的には、"ぜん>"、"だい#かい"など。skk.rb.difのように変更してみました。私はrubyは知らないので、みようみまねで変更しています。いい方法があるかもしれません。データベース化した辞書を利用して高速化。inetdからの実行。