Mercurial > hg > truffle
comparison src/share/vm/gc_implementation/shared/mutableNUMASpace.hpp @ 263:12eea04c8b06
6672698: mangle_unused_area() should not remangle the entire heap at each collection.
Summary: Maintain a high water mark for the allocations in a space and mangle only up to that high water mark.
Reviewed-by: ysr, apetrusenko
author | jmasa |
---|---|
date | Wed, 09 Jul 2008 15:08:55 -0700 |
parents | d1635bf93939 |
children | d6340ab4105b |
comparison
equal
deleted
inserted
replaced
225:286bee59f34b | 263:12eea04c8b06 |
---|---|
169 public: | 169 public: |
170 GrowableArray<LGRPSpace*>* lgrp_spaces() const { return _lgrp_spaces; } | 170 GrowableArray<LGRPSpace*>* lgrp_spaces() const { return _lgrp_spaces; } |
171 MutableNUMASpace(); | 171 MutableNUMASpace(); |
172 virtual ~MutableNUMASpace(); | 172 virtual ~MutableNUMASpace(); |
173 // Space initialization. | 173 // Space initialization. |
174 virtual void initialize(MemRegion mr, bool clear_space); | 174 virtual void initialize(MemRegion mr, bool clear_space, bool mangle_space); |
175 // Update space layout if necessary. Do all adaptive resizing job. | 175 // Update space layout if necessary. Do all adaptive resizing job. |
176 virtual void update(); | 176 virtual void update(); |
177 // Update allocation rate averages. | 177 // Update allocation rate averages. |
178 virtual void accumulate_statistics(); | 178 virtual void accumulate_statistics(); |
179 | 179 |
180 virtual void clear(); | 180 virtual void clear(bool mangle_space); |
181 virtual void mangle_unused_area(); | 181 virtual void mangle_unused_area() PRODUCT_RETURN; |
182 virtual void mangle_unused_area_complete() PRODUCT_RETURN; | |
183 virtual void mangle_region(MemRegion mr) PRODUCT_RETURN; | |
184 virtual void check_mangled_unused_area(HeapWord* limit) PRODUCT_RETURN; | |
185 virtual void check_mangled_unused_area_complete() PRODUCT_RETURN; | |
186 virtual void set_top_for_allocations(HeapWord* v) PRODUCT_RETURN; | |
187 virtual void set_top_for_allocations() PRODUCT_RETURN; | |
188 | |
182 virtual void ensure_parsability(); | 189 virtual void ensure_parsability(); |
183 virtual size_t used_in_words() const; | 190 virtual size_t used_in_words() const; |
184 virtual size_t free_in_words() const; | 191 virtual size_t free_in_words() const; |
185 virtual size_t tlab_capacity(Thread* thr) const; | 192 virtual size_t tlab_capacity(Thread* thr) const; |
186 virtual size_t unsafe_max_tlab_alloc(Thread* thr) const; | 193 virtual size_t unsafe_max_tlab_alloc(Thread* thr) const; |