2

CMS GC で jdk 1.6 を使用していましたが、JDK 1.7 に移行しようとすると、ヒープ使用量が増加し、プロセスが遅くなります。

これらのバージョンで GC の動作に大きな違いはありますか? JDK 1.7 で遅くなった場合の回避策は何ですか?

4

1 に答える 1

0

以下のjdk 1.7では、cmsに関連する2つの主要な変更があります。

コンカレント マーク スイープ コレクター (CMS) の既定の既定のヒープ サイズと形状パラメーターが変更されました。新しい設定は、JDK 6 のリリース以降に導入されたより高速なプラットフォームを利用します。HotSpot の他のコレクターと同様に、CMS は、プラットフォームで利用可能な物理メモリを使用してヒープのサイズを決定すると同時に、そのヒープを形成して、マイナー コレクションに関連付けられた一時停止時間を「合理的」に保ちます。ヒープの特定の形状は、他の方法でもプラットフォームに依存する場合があります。ユーザーは、特定のニーズに合わせてヒープのサイズを明示的に変更または形成することで、これらのデフォルト設定のすべてまたは一部をオーバーライドできます。別名「ヒープ チューニング」です。

JDK 6 リリース ノートには、CMS のパフォーマンス強化が含まれていました。JDK 5 によって提供される動作を引き続き使用するためのメカニズムを提供するために、CMSUseOldDefaults フラグが提供されました。このフラグは、多くの設定をデフォルト状態に復元しました。ここ数年、このフラグはほとんど使用されておらず、ほとんどの顧客は改善された CMS パフォーマンスを好みます。CMSUseOldDefaults フラグは jdk7 で削除されました。

ソース: JDK 7 での Java 仮想マシンの機能強化

于 2014-06-29T12:22:40.703 に答える