src/share/vm/gc_implementation/shared/mutableNUMASpace.hpp

changeset 25
873fd82b133d
parent 1
2d8a650513c2
child 6876
710a3c8b516e
equal deleted inserted replaced
24:d2be62fdfa50 25:873fd82b133d
18 * 18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any 20 * or visit www.oracle.com if you need additional information or have any
21 * questions. 21 * questions.
22 * 22 *
23 */
24
25 /*
26 * This file has been modified by Loongson Technology in 2015. These
27 * modifications are Copyright (c) 2015 Loongson Technology, and are made
28 * available on the same license terms set forth above.
29 */ 23 */
30 24
31 #ifndef SHARE_VM_GC_IMPLEMENTATION_SHARED_MUTABLENUMASPACE_HPP 25 #ifndef SHARE_VM_GC_IMPLEMENTATION_SHARED_MUTABLENUMASPACE_HPP
32 #define SHARE_VM_GC_IMPLEMENTATION_SHARED_MUTABLENUMASPACE_HPP 26 #define SHARE_VM_GC_IMPLEMENTATION_SHARED_MUTABLENUMASPACE_HPP
33 27
67 * load where multiple processes are competing for the memory. 61 * load where multiple processes are competing for the memory.
68 */ 62 */
69 63
70 class MutableNUMASpace : public MutableSpace { 64 class MutableNUMASpace : public MutableSpace {
71 friend class VMStructs; 65 friend class VMStructs;
72 friend class CardTableExtension;
73 friend class OldToYoungRootsTask;
74 friend class OldToYoungRootsTask_OldNUMA;
75 friend class PSScavenge;
76 friend class PSOldGen;
77 friend class PSYoungGen;
78 friend class PSPromotionManager;
79 friend class PSOldPromotionLAB;
80 66
81 class LGRPSpace : public CHeapObj<mtGC> { 67 class LGRPSpace : public CHeapObj<mtGC> {
82 int _lgrp_id; 68 int _lgrp_id;
83 MutableSpace* _space; 69 MutableSpace* _space;
84 MemRegion _invalid_region; 70 MemRegion _invalid_region;
235 virtual size_t unsafe_max_tlab_alloc(Thread* thr) const; 221 virtual size_t unsafe_max_tlab_alloc(Thread* thr) const;
236 222
237 // Allocation (return NULL if full) 223 // Allocation (return NULL if full)
238 virtual HeapWord* allocate(size_t word_size); 224 virtual HeapWord* allocate(size_t word_size);
239 virtual HeapWord* cas_allocate(size_t word_size); 225 virtual HeapWord* cas_allocate(size_t word_size);
240
241 // Allocation for Old NUMA (return NULL if full)
242 virtual HeapWord* cas_allocate_oldnuma(size_t word_size, int node);
243 226
244 // Debugging 227 // Debugging
245 virtual void print_on(outputStream* st) const; 228 virtual void print_on(outputStream* st) const;
246 virtual void print_short_on(outputStream* st) const; 229 virtual void print_short_on(outputStream* st) const;
247 virtual void verify(); 230 virtual void verify();

mercurial