Pauseless GC
ちょいと小耳に挟んだので調べてみたら,これに当たった.
→Network Attached Processing の Pauseless GC
Azul Sytems の NAP は Pauseless GC という一風変わった GC アルゴリズムを採用している。 Pauseless GC は理論上 STW がない。 にも関わらず性能もあまり悪くないというキ印もの。
もう一点すごいのはmarking が完全に concurrentな点だ。 Mostly concurrent ではない。 この実現方法が凄いと言うか、インチキというか... 鍵になっているのはハードウェア・サポートだ。
なるへそ.
しかし1年以上経っても,Sunから取り立てて目新しいトピックが無い所みると,これとは別のネタだったのかな??
こんな面白そうな事,SPARCあたりでサポートして欲しいんだけど...
とはいえねぇ。 この性能は ハードウェアサポート あっての賜物ですよ。 ふつ〜のプロセッサ (x86 / PowerPC / SPARC / IA-64) と ふつ〜の OS (Linux / Windows / Solaris) で これと同じアルゴリズムを実装するのはムリぽ。 でもアーキテクチャ屋としては、専用のプロセッサを起こしていじり回すのは楽しいだろうね。
だそうな.残念.:-(
ps.
もちょっと調べてみたら,こんな資料も見つけた.もっかしてSun JVMで"Pauseless GC"とは,インクリメンタルGCの事を指すのだろうか?
#でも「Incremental "Pauseless" GC」は,ちょっと言い過ぎじゃないか.
→The Java HotSpot Virtual Machine - Incremental "Pauseless" Garbage Collector