• 車種別
  • パーツ
  • 整備手帳
  • ブログ
  • みんカラ+
イイね!
2012年04月19日

Permanent領域のメモリチューニング

Permanent領域の情報って、少ないですよね。
最近、Perm関連でのトラブルがあって、ちょくちょく調べていましたが、今後のためにメモっておきます

○Permが増加する

Permには、クラス情報などがロードされるわけですが、アプリケーションが動作している間に増加し続け、Full GCのタイミングである程度解放され、また増加・・・を繰り返す、というのがありました。
原因は特定できていませんが、リフレクションを使っていると、一定回数の呼び出しがあると、そのクラスをバイトコード化して、メモリに載せる(Permに格納する)という仕組みがあるそうです。このため、Permが動的に増加していく。で、使わないときにFullGCで解放されるが、またメモリに格納され・・・を繰り返すそう。

最初からPermに格納するオプションがあるそうで・・・忘れました。思い出したら書きます。

○PermはいつGCされる?

Perm領域のオブジェクトは、Full GCでないと回収されません。
では、Permのみが増える(NewやOldは変化しない)として、Full GCが発生する契機は設定できる?
100%になるときにはJVMが勝手にやりそうですが、例えば90%とかで発生させられるのか?

Permがいっぱいになったら、Full GCが動くようです。
「When the old or permanent generation fills up, what is known as a full collection (sometimes referred to as a major collection) is typically done. 」
→OldもしくはPermが一杯になったら、フルコレクション(メジャーコレクションとも呼ばれる)が実施される。
※フルコレクション=フルGC、メジャーコレクション=メジャーGCと呼びますね。
http://www.oracle.com/technetwork/java/javase/memorymanagement-whitepaper-150215.pdf?ssSourceSiteId=otnjp


あと、きっとこのへんを読むとわかる?
http://www.oracle.com/technetwork/java/gc-tuning-5-138395.html
http://www.oracle.com/technetwork/java/javase/memorymanagement-whitepaper-150215.pdf?ssSourceSiteId=otnjp
http://www.oracle.com/technetwork/java/javase/tech/index-jsp-136373.html
http://www.oracle.com/technetwork/java/faq-140837.html


それと、ちょっとメモ。

・JVMのオプションで、 -XX:+ TraceClassloading と -XX:+ TraceClassUnloading をつけると、クラスのロード・アンロードでログ出力される(コンソール出力?)。




○基本

Permの基本は、この記事が分かりやすいかと。

Permanent領域のチューニング
http://www.atmarkit.co.jp/fjava/rensai3/devedge06/devedge06_2.html

でも、これだけじゃ細かいところがわかりません。上記のリンクを読まないといけません。
ブログ一覧 | Java | パソコン/インターネット
Posted at 2012/04/19 21:06:59

イイね!0件



今、あなたにおすすめ

ブログ人気記事

お疲れ様でした🙇(プチキリ番)
ゆう@LEXUSさん

サポ。
.ξさん

冷却系センサー類とインマニ交換
ミナミナさん

いまだに雨(・・・未洗車)
らんさまさん

また、やってきました^_^
b_bshuichiさん

複雑です……💧
takeshi.oさん

この記事へのコメント

コメントはありません。

プロフィール

2006年3月に、ティーダオーナーとなりました。 →その後、義母に譲り、現在はマークX。
みんカラ新規会員登録

ユーザー内検索

<< 2025/4 >>

  12345
6789101112
13141516171819
20212223242526
27282930   

ブログカテゴリー

愛車一覧

トヨタ マークX マーク (トヨタ マークX)
男の真ん中で居たいので。
日産 ティーダ 日産 ティーダ
通算8台目となりました。 前のプレサージュ号が故障したため、急遽買い替えとなりました。
トヨタ マークII トヨタ マークII
シルビアよりもパワーがあって、もう少し広い車が欲しくて購入しました。シルビアが事故に巻き ...
日産 プレサージュ 日産 プレサージュ
友人のグランディスに乗って、ああミニバンもいいなぁと感じ、結婚するタイミングで乗り換えま ...

過去のブログ

2012年
01月02月03月04月05月06月
07月08月09月10月11月12月
2007年
01月02月03月04月05月06月
07月08月09月10月11月12月
2006年
01月02月03月04月05月06月
07月08月09月10月11月12月
ヘルプ利用規約サイトマップ

あなたの愛車、今いくら?

複数社の査定額を比較して愛車の最高額を調べよう!

あなたの愛車、今いくら?
メーカー
モデル
年式
走行距離(km)
© LY Corporation