関ジャバで GC についてお話しました

久々(?!)の技術トークを本日関ジャバにてさせて頂きました。発表資料は以下の通りです。

トップ画像のクレジットは以下の通り。(CC の画像ですが、表記不足等あればご指摘もらえると嬉しいです)

(2010/10/02 追記)
id:shin さんにご指摘いただき、-Xincgc は現在の実装はコンカレントコレクタ (-XX:+UseConcMarkSweepGC ) が選択されるようになっていましたので、該当スライドから削除しました。

> -Xincgc -verbose:gc -XX:+PrintGCDetails

あたりをつけて適当なプログラム実行して頂いたら、確認出来ると思います。

尚、1.4.2 の資料ではあった、TrainGC の記述も 5.0 の資料から以下のように変わっています。

5.0 の資料では以下のように言われてます。

The incremental (sometimes called train) low pause collector: this collector is used only if -XX:+UseTrainGC is passed on the command line. This collector has not changed since the J2SE Platform version 1.4.2 and is currently not under active development. It will not be supported in future releases. Please see the 1.4.2 GC Tuning Document for information on this collector.

(追記ここまで)

今回は図が多くなる事がはじめからわかっていたので、小悪魔ちゃんバリに可愛いプレゼンを、と思って Cacoo で作成してみました。久しぶりに資料作成してみたら思いの他のボリューム増えちゃいました。

発表はといいますと、ブラウザの画面サイズがうまく出来ず、最初戸惑ってしまし申し訳なかったです。この辺りは事前準備で回避出来る所なので、次回はかならずやっておきます。。。今日の発表では

  • GC って結構面白いよ
  • プログラムの実行環境のテクノロジ知ることは大事だと思うよ

といった所を上手く伝えたいな、と思っていたのですが、はてさてどうだったのかしら、、、と。

USTは怖くてみれません。後、GC について興味もたれたら、以下の書籍はホンマに良いと思います。

ガベージコレクションのアルゴリズムと実装

ガベージコレクションのアルゴリズムと実装