namazu-ml(avocado)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: namazu-112-proto-8.tar.gz



mmatsu@xxxxxxxxxxxxxxxxxxxxxxx (Masafumi Matsumura) wrote:

>> # rvnmz は必要なんでしょうか?
>
>make install してもインストールされないので、
>ディバグ用ツールかなと思ってました。
>
>例えば、吐き出すインデックスって全部 little-endian に
>統一するすると決めちゃうと、big-endian マシンの場合、
>処理スピードに影響がでたりするのでしょうか?

えっと、 v1.1.2 で突然 little-endian に統一してしまうと、 v1.1.1 
で作った big-endian のインデックスが使えなくなって困るのではないか
と思って今まで通り CPU ネイティヴな byte order で保存するようにし
ました。処理速度のロスは完全に無視できる程度でしょうね、たぶん。

でも実はこの辺は結構悩みどころで、やっぱり little-endian に統一し
ちゃってもいいかなとも思います。 rvnmz なんてものを作ったのもその
辺に関係があります。

# 別に big-endian に統一してもいいですけど。どちらがいいのかな?

あと、 64bit なマシンの場合どうするかという問題もあるのですが、 周
りにはそんなマシンはないので、 Perl で pack("V",1) or pack("N",1)
とすると何 bit になるか分からなくて困っています。これで 32bit にな
れば bit長も固定できるのですが。どなたか 64bit マシンで試してみて
もらえませんか。

% perl -e 'print length(pack("N",1));'

とすれば分かります。


># CPU によって endianの異なる形式のインデックスを作成するメリットは
># それほど大きいのでしょうか?

最初に作ったときは byte order のことなんて考えていませんでした…。

--
高林 哲 Satoru Takabayashi