hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
changeset 5694 1e0532a6abff
parent 5434 a2e785749780
child 5702 201c5cde25bb
equal deleted inserted replaced
5693:3015c564fcbc 5694:1e0532a6abff
   157 ConcurrentMarkSweepGeneration::ConcurrentMarkSweepGeneration(
   157 ConcurrentMarkSweepGeneration::ConcurrentMarkSweepGeneration(
   158      ReservedSpace rs, size_t initial_byte_size, int level,
   158      ReservedSpace rs, size_t initial_byte_size, int level,
   159      CardTableRS* ct, bool use_adaptive_freelists,
   159      CardTableRS* ct, bool use_adaptive_freelists,
   160      FreeBlockDictionary::DictionaryChoice dictionaryChoice) :
   160      FreeBlockDictionary::DictionaryChoice dictionaryChoice) :
   161   CardGeneration(rs, initial_byte_size, level, ct),
   161   CardGeneration(rs, initial_byte_size, level, ct),
   162   _dilatation_factor(((double)MinChunkSize)/((double)(oopDesc::header_size()))),
   162   _dilatation_factor(((double)MinChunkSize)/((double)(CollectedHeap::min_fill_size()))),
   163   _debug_collection_type(Concurrent_collection_type)
   163   _debug_collection_type(Concurrent_collection_type)
   164 {
   164 {
   165   HeapWord* bottom = (HeapWord*) _virtual_space.low();
   165   HeapWord* bottom = (HeapWord*) _virtual_space.low();
   166   HeapWord* end    = (HeapWord*) _virtual_space.high();
   166   HeapWord* end    = (HeapWord*) _virtual_space.high();
   167 
   167 
   220   // factor as: MinChunkSize/(promoting_gen's min object size)
   220   // factor as: MinChunkSize/(promoting_gen's min object size)
   221   // Since we do not have such a general query interface for the
   221   // Since we do not have such a general query interface for the
   222   // promoting generation, we'll instead just use the mimimum
   222   // promoting generation, we'll instead just use the mimimum
   223   // object size (which today is a header's worth of space);
   223   // object size (which today is a header's worth of space);
   224   // note that all arithmetic is in units of HeapWords.
   224   // note that all arithmetic is in units of HeapWords.
   225   assert(MinChunkSize >= oopDesc::header_size(), "just checking");
   225   assert(MinChunkSize >= CollectedHeap::min_fill_size(), "just checking");
   226   assert(_dilatation_factor >= 1.0, "from previous assert");
   226   assert(_dilatation_factor >= 1.0, "from previous assert");
   227 }
   227 }
   228 
   228 
   229 
   229 
   230 // The field "_initiating_occupancy" represents the occupancy percentage
   230 // The field "_initiating_occupancy" represents the occupancy percentage