[Yarv-devel] GC Tech. on Script Lang.

MAEDA Atusi maeda-yarv @ atusi.org
2004年 2月 6日 (金) 16:13:31 EST


"K.Sasada" <ko1 at namikilab.tuat.ac.jp> writes:

> > あー、でもスクリプト言語では性能はあまり問題にならないと自分で書いたのだったな。
> 
>  on_ がーん。

速いに越したことはないですが、たしかに皆あまり気にしてないでしょうね。
(特に、こんだけハードが速くなっちゃうと。)

でも、速くなれば(たとえば極端な話C/C++と同じくらいの性能になれば)今ま
では使おうとも思わなかった(無意識のうちに却下していた)用途に使われたり
するかもしれません。

>  Javaの世代別GCは minor gc では(ネイティブスレッド)独立でで
> きるようにしてましたよね、たしか。

thread local allocation buffer (TLAB)のことなら、minor gcとは違います。
allocationごとに排他するのはあまりにアレなので、8KBくらいの領域をま
とめて取って(その時だけ排他)、その中で自スレッドのオブジェクトを割り付
けます。いっぱいになったらまた領域を取ります。GCはまた別の話です。

>  分散環境でのGCってどうやるのがポピュラーなのかな。全部止める
> って無理ですよね、多分。リファレンスカウンタかな。

ローカルなGCは適宜やって、グローバルには重み付きリファレンスカウントと
か、サイクルを検出するためにタイムスタンプを「下流」へ流していくやつとか…

分散GCはあまりくわしくないです。

>  1bit reference counter の話ってどうなったのかな。それに繋がっ
> ていくのかな。

1bit reference countですか。実際に使ってるICOTのマシンを触ったことがあ
ります。汎用CPUでどうやるのか、なんだか楽しみです。

				前田敦司


Yarv-devel メーリングリストの案内