luajitから使ってみました。luaとの違いは、おそらくループまわりの高速化になります。
vmplayer上の1core 2GHzで比較
$ lua kctest.lua order "casket.kch" 1000000
opening the database:
time: 0.001
setting records:
time: 4.013
getting records:
time: 3.867
removing records:
time: 4.019
closing the database:
time: 0.008
$ luajit kctest.lua order "casket.kch" 1000000
opening the database:
time: 0.001
setting records:
getting records:
time: 3.483
removing records:
time: 3.417
closing the database:
time: 0.009
12%前後高速化したようです。
ちなみに、/usr/local/lib/kyotocabinet.soをldconfigしてないと、
luajitでは、require "kyotocabinet"で、セグメントフォルトしました。
luaでは、kyotocabinet.soが、見つからないというメッセージになりました。
ここら辺の面倒見は、luajitよりluaのが、いいようです。
仕組みを分かってないが、luajit-2.00-beta4.soと、リンクする必要はないのか。
必要なのは、Tokyo Tyrantみたいに、luaをKyoto Cabinet側に組み込むときかな?
そして、今後のlua-5.2.0登場で、luajitがどうなるのか戦々恐々としてます。
0 件のコメント :
コメントを投稿