この記事は JavaEye ブログからの引用であり、元のタイトルは「JVM チューニングの概要 (パート 3) - 基本的なガベージ コレクション アルゴリズム」です。 前回は、データ型、ヒープとスタック、Java オブジェクトのサイズと参照型など、JVM の基本的な概念をいくつか紹介しました。以下では、JVM のガベージ コレクション アルゴリズムについて説明します。ガベージ コレクション アルゴリズムは、さまざまな観点から分類できます。 基本的なリサイクル戦略によれば 参照カウント: 古いリサイクルアルゴリズム。原則として、このオブジェクトには参照があり、それによってカウントが増加し、参照を削除するとカウントが減少します。ガベージ コレクション中は、カウントが 0 のオブジェクトのみが収集されます。このアルゴリズムの最も致命的な問題は、循環参照の問題を処理できないことです。 マークスイープ: このアルゴリズムは 2 段階で実行されます。最初のステージでは、参照ルート ノードから始まるすべての参照オブジェクトをマークし、2 番目のステージではヒープ全体を走査してマークされていないオブジェクトをクリアします。このアルゴリズムではアプリケーション全体を一時停止する必要があり、メモリの断片化が発生します。 コピー: このアルゴリズムは、メモリ空間を 2 つの等しい領域に分割し、一度に 1 つの領域のみを使用します。ガベージ コレクション中、現在使用されている領域が走査され、使用中のオブジェクトが別の領域にコピーされます。このアルゴリズムは、使用中のオブジェクトのみを毎回処理するため、コピーコストは比較的小さくなります。同時に、コピー後にメモリを適切にソートできるため、「断片化」の問題は発生しません。もちろん、このアルゴリズムの欠点も明らかです。つまり、メモリスペースが 2 倍必要になるということです。 マークコンパクト: このアルゴリズムは、「マーク アンド スイープ」アルゴリズムと「コピー」アルゴリズムの両方の利点を組み合わせたものです。これも 2 つのステージに分かれています。最初のステージでは、ルート ノードから始まる参照されているすべてのオブジェクトをマークします。2 番目のステージでは、ヒープ全体を走査し、マークされていないオブジェクトをクリアし、生き残ったオブジェクトをヒープの 1 つの部分に「圧縮」して、順序どおりに配置します。このアルゴリズムは、「マークアンドスイープ」アルゴリズムの断片化の問題を回避し、「コピー」アルゴリズムのスペースの問題も回避します。 治療方法によって分けられる 増分収集: アプリケーションの実行中にガベージ コレクションを実行するリアルタイム ガベージ コレクション アルゴリズム。何らかの理由で、JDK5.0 のコレクターはこのアルゴリズムを使用しません。 世代別収集: オブジェクトのライフ サイクルの分析に基づくガベージ コレクション アルゴリズム。オブジェクトは若い世代、古い世代、永久世代に分けられ、異なるライフサイクルでオブジェクトをリサイクルするために異なるアルゴリズム (上記の方法のいずれか) が使用されます。現在のガベージ コレクター (J2SE1.2 以降) はすべてこのアルゴリズムを使用します。 システムスレッド別 #t#シリアルコレクション: シリアルコレクションでは、単一のスレッドを使用してすべてのガベージコレクション作業を処理します。マルチスレッドのやり取りが不要なため、実装が簡単で効率が高くなります。ただし、複数のプロセッサを活用できないという制限も明らかであるため、このコレクションはシングルプロセッサ マシンに適しています。もちろん、このコレクターは、データ量が少ない (約 100 MB) マルチプロセッサ マシンでも使用できます。 並列コレクション: 並列コレクションでは、複数のスレッドを使用してガベージ コレクション作業を処理するため、処理が高速かつ効率的になります。理論的には、CPU の数が多いほど、並列コレクターが発揮できる利点は多くなります。 同時実行コレクション: シリアル コレクションや並列コレクションと比較すると、前 2 つはガベージ コレクションを実行するときにオペレーティング環境全体を一時停止する必要があり、ガベージ コレクション プログラムのみが実行されます。そのため、ガベージ コレクション中にシステムは明らかな一時停止状態になり、ヒープが大きくなるにつれて一時停止時間が長くなります。 |
<<: 携帯電話の通話は安全ではない、GSM暗号化アルゴリズムが破られた
>>: Wu Fengguang: Linux を使って事前読み取りアルゴリズムを学ぶ
Statistaの最近のレポートによると、「AI市場の世界的価値は2025年までに年間890億ドル...
[[257501]] Windows 7 は 2020 年 1 月にその歴史的使命を終えるが、マイク...
数日前、バービー・ハイモアがインターネットで話題になって以来、ネットユーザーたちは、MidJourn...
2021年全国二会議において、中国人民政治協商会議全国委員会委員でPCIテクノロジー会長の劉偉氏は...
ビッグデータ時代の到来により、データ移行は多くの企業や組織が直面しなければならない課題の 1 つにな...
[[240090]] 2018年グローバル人工知能製品アプリケーション博覧会で、来場者がテーマポス...
8年生の理科のテストに60点で合格すれば、8万ドル(57万人民元相当)の賞金を獲得できます。 [[...
[[324462]]アリ姉の紹介:近年、データコンピューティング能力と機械知能アルゴリズムの台頭によ...
12月24日、グーグルが社内の効率化のために人工知能(AI)ツールの導入を検討していると報じられた。...
人工知能は、過去 10 年間にわたって年間を通じて最もホットな話題の 1 つとなっています。そして、...
[[282830]]視覚的な想像力は人間が生まれながらに持っているものです。AI は同様の能力を持...
12月29日、生成AIを使ってネットワークセキュリティを支援するという話題が最近かなり人気を集めて...
[[273025]]海外メディアの報道によると、3Dプリンターの人気の高まりと、Thingivers...