タグ

javaとJVMに関するshin_okamatsuのブックマーク (4)

  • JavaVMのメモリ管理に関するまとめ(Javaヒープ、GC、ダンプ等) - ぺーぺーSEのブログ

    ブログはJava8(特にMetaspace)に対応していない。 下記にJava8以降に対応した記事を記載する(予定)。 blog.pepese.com JavaVMのメモリ領域について JavaVMが管理するメモリ領域について 階層1 階層2 階層3 説明 Javaヒープ JavaVM上で起動するJavaプログラムのリソースを管理する領域。New領域とOld領域で構成される。 l" New領域 新規オブジェクトと閾値(-XX:MaxTenuringThreshold)未満のオブジェクトが配置される。(Young領域とも呼ばれる) l l" Eden領域 新規のオブジェクトが配置される。 l l" From領域 CopyGC(ScavengeGC、マイナーGC)が実行された際に、使用中のオブジェクトはここへコピーされる。(S0やS1とも呼ばれる) l lー To領域 CopyGC(Scav

    JavaVMのメモリ管理に関するまとめ(Javaヒープ、GC、ダンプ等) - ぺーぺーSEのブログ
  • いぬごやねっと

    Lマウント機材で撮影された写真紹介と愛と偏見で燻製されたコラム。

    いぬごやねっと
  • 「メモリーを意識してみよう」第3回 ヒープのチューニング

    Java2Demoの起動が確認できたら,jconsoleを起動してみましょう。 先々週と同様に,jconsoleの「メモリ」タブで各領域の使用状況を参照できます。 左上のコンボボックスにはデフォルトで「ヒープメモリの使用状況」が選択されています。このコンボボックスを展開するとEden,Survivor,Tenuredなどが並んでいます(図1)。Perm Genなどの項目はヒープではない非ヒープ領域に属している領域です。 Survivor領域は実際には二つありますが,常にどちらかは空なので,一つにまとめて扱われているようです。 この中から,Eden領域を選択してみましょう。 Eden領域の使用量は,だいたい0から1MB程度の範囲に収まっています(図2)。 左下の詳細の部分を見ると,確定(MemoryUsageのcommitted)が1MB,最大が4MBであることがわかります。 つまり,Ede

    「メモリーを意識してみよう」第3回 ヒープのチューニング
  • JVMのチューニング - ITエンジニアとして生きる

    前回、JVMとGCのしくみ - ITエンジニアとして生きるでJVMとGCのしくみについて書いた。 今回はその続きということでJVMのチューニングについて書きたいと思う。 JVMチューニングって -Xms ・・・ ヒープ全体(New領域+Old領域)の初期値 -Xmx ・・・ ヒープ全体(New領域+Old領域)の最大値 くらいしか話題に上がらないし意識しないことが多い(気がする)。 でもホントはこれだけではダメで、前回のようにPermanent領域、New領域、Old領域を意識したチューニングが必要になる。 VMチューニングを考えるその前に・・・チューニングの話をする前にまずVMの起動モードについて話したいと思う。 VMには大きく以下2つの起動モードがあり、それぞれ以下のような特徴を持つ。 ◆クライアントVMモード 起動時間を短縮し、メモリサイズを縮小するように調整されている。 VM起動時

    JVMのチューニング - ITエンジニアとして生きる
  • 1