Top


定義場所(file name)

hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp

名前(function name)

void HeapRegionRemSet::setup_remset_size() {

本体部(body)

  {- -------------------------------------------
  (1) (変数宣言など)
      ---------------------------------------- -}

      // Setup sparse and fine-grain tables sizes.
      // table_size = base * (log(region_size / 1M) + 1)
      int region_size_log_mb = MAX2((int)HeapRegion::LogOfHRGrainBytes - (int)LOG_M, 0);

  {- -------------------------------------------
  (1) G1RSetSparseRegionEntries オプションが指定されてなければ, 初期値をセットしておく.
      ---------------------------------------- -}

      if (FLAG_IS_DEFAULT(G1RSetSparseRegionEntries)) {
        G1RSetSparseRegionEntries = G1RSetSparseRegionEntriesBase * (region_size_log_mb + 1);
      }

  {- -------------------------------------------
  (1) G1RSetRegionEntries オプションが指定されてなければ, 初期値をセットしておく.
      ---------------------------------------- -}

      if (FLAG_IS_DEFAULT(G1RSetRegionEntries)) {
        G1RSetRegionEntries = G1RSetRegionEntriesBase * (region_size_log_mb + 1);
      }

  {- -------------------------------------------
  (1) (assert)
      ---------------------------------------- -}

      guarantee(G1RSetSparseRegionEntries > 0 && G1RSetRegionEntries > 0 , "Sanity");
    }

This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.