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 |