アロケーションサイトに応じてGCアルゴリズムを選択可能なハイブリッドGC

書誌事項

タイトル別名
  • Hybrid GC with Selectable Garbage Collectors Based on Allocation Sites

この論文をさがす

抄録

ごみ集め(GC)には様々なアルゴリズムがあり,どのアルゴリズムが望ましいかは,オブジェクトの割当て頻度や生存率などの特性で変化する.多くのアプリケーションは初期化フェーズや計算フェーズなど,オブジェクトの特性が異なるフェーズを持つ.そのため異なるフェーズを持つアプリケーションに対して,適切な単一のGCアルゴリズムを選択することは難しい.既存研究では,各フェーズに適するGCアルゴリズムを動的に切り替える方式が提案されている.しかし1つのフェーズ内に特性の異なるオブジェクトが混在する場合,それぞれに適したGCアルゴリズムを選択できるとより効果的である.そこで本研究ではMark-Sweep GCとCopy GCを同時運用するハイブリッドGCを実装した.このハイブリッドGCはそれぞれのGCアルゴリズム用にヒープを持ち,1回のGCにおいて両GCアルゴリズムを実行する.オブジェクトがどちらのGCアルゴリズムで回収されるかは,どちらのヒープに割り当てたかで決まる.オブジェクトの特性は,アロケーションサイトによっては固定されていることもある.そこでオフラインプロファイリングによって,そのようなアロケーションサイトを見つけ出し,アロケーションサイトのコードの修正によってどちらのヒープに割り当てるかを明示するようにした.本発表ではいくつかのベンチマークに本GCシステムを適用した性能評価を報告する.

An appropriate garbage collection (GC) algorithm varies depending on properties of objects, such as frequency of allocations and survival rates. It is difficult to select an appropriate single GC algorithm, because most applications have phases of various behaviors, e.g., initialization phase, calculation phase, etc. A prior work proposed the mechanism that can dynamically switch GC algorithm to a suitable one for a phase. However, if various properties are mixed in one phase, several GC algorithms would end up being suitable for the phase. In this research, we have implemented a hybrid GC that combines mark-sweep collector and copying collector. Although this GC system divides a heap memory into two areas; one is for mark-sweep GC and the other is for coping GC, the whole heap is collected at every GC cycle. Which GC collects an object depends on which area has been selected at allocation time. Some allocation sites consistently create objects whose properties are the same. We use off-line profiling to find out such allocation sites, and rewrite code at those sites so that an appropriate GC algorithm can be selected at GC time. In this presentation, we report a performance evaluation of our GC system, by using several benchmarks.

収録刊行物

キーワード

詳細情報 詳細情報について

  • CRID
    1050282812886411392
  • NII論文ID
    170000149770
  • NII書誌ID
    AA11464814
  • ISSN
    18827802
  • Web Site
    http://id.nii.ac.jp/1001/00191341/
  • 本文言語コード
    ja
  • 資料種別
    article
  • データソース種別
    • IRDB
    • CiNii Articles

問題の指摘

ページトップへ