«前の日記(2004年01月13日) 最新 次の日記(2004年01月15日)» 編集

Matzにっき


2004年01月14日 [長年日記]

_ [Ruby]Riteの課題

なんかこのところ生活臭のただよう話題ばかりなんで、たまにはRubyの話を。

Rubyの新実装であるRiteであるが、解決したい課題は以下のものだ。

  • 組み込み対応
  • スレッドセーフ
  • 高速化

「組み込み対応」はアプリケーションの一部として Rubyインタプリタを組み込んだとしてもじゃまにならないためのもの。 具体的には「インタプリタオブジェクトを持つ」あるいは「インタプリタオブジェクトの再初期化ができる」ことが必要だろう。GCについての考える必要があるかもしれない。

「スレッドセーフ」では、少なくともpthreadを使うライブラリとリンクしても、 止まったり落ちたりしないような実装にしたい。たぶん、インタプリタオブジェクトはここでも役立つだろう。 また、必要に応じてはgiant interpreter lockで対応せざるをえない部分もあるかも。 yaccを使ったparserはreentrantにできないのも問題だ。 bisonのpure-parserはlexer用にデータを渡せないので、役に立たない。 これをreentrantにするには自分で再帰下降構文解析を行うか、lemonのようなparser generatorを使うか。 GCについての考える必要があるかもしれないのはこの件も同じ。

「高速化」はある意味当然だろう。実行が速くて文句を言う人はいないし、 また現在のRubyの実装が決して効率の良いものではないと分かっているのだから、 ぜひ実現したい。 この件については、いくらRubyが最適化が難しいと言っても、(今が良くないのだから) メソッド呼び出しの効率化とバイトコードディスパッチの改善でかなり高速化できそうな気がしていた。 しかし、私自身の作ったプロトタイプや笹田さんのyarvなどの結果はさほど思わしくない。 実はボトルネックは別のところにあるのだろうか。

_ [日記]アクセス数

去年の5月にこの「Matzにっき」をスタートして以来、アクセス数なんて気にしたことなかったが、 あちこちで話題になっているのでちょっと調べてみた。

2004年1月1日から14日までの計は以下の通り。 これは「Matzにっき」のトップページにGETアクセスしたものの数。

1日  2320
2日  2330
3日  2486
4日  2538
5日  4740
6日  3378
7日  4310
8日  5078
9日  4190
10日 2520
11日 2914
12日 2938
13日 3156
14日 4320

休日にはアクセスが少ないということがはっきり分かる。が、休日でも休まずアクセスする2000人の廃人が。 この14日間の平均を出すと3372.17。多い日は5000アクセスがあるのか。驚異的だな。

もうちょっと心して文章を書くべきかもしれない....うーむ、無理だな。


«前の日記(2004年01月13日) 最新 次の日記(2004年01月15日)» 編集