comparison src/share/vm/services/memReporter.hpp @ 6882:716c64bda5ba

7199092: NMT: NMT needs to deal overlapped virtual memory ranges Summary: Enhanced virtual memory tracking to track committed regions as well as reserved regions, so NMT now can generate virtual memory map. Reviewed-by: acorn, coleenp
author zgu
date Fri, 19 Oct 2012 21:40:07 -0400
parents fb19af007ffc
children 79f492f184d0
comparison
equal deleted inserted replaced
6879:8ebcedb7604d 6882:716c64bda5ba
91 int malloc_count_diff, int arena_diff, 91 int malloc_count_diff, int arena_diff,
92 int arena_count_diff) = 0; 92 int arena_count_diff) = 0;
93 93
94 virtual void done_category_summary() = 0; 94 virtual void done_category_summary() = 0;
95 95
96 virtual void start_virtual_memory_map() = 0;
97 virtual void reserved_memory_region(MEMFLAGS type, address base, address end, size_t size, address pc) = 0;
98 virtual void committed_memory_region(address base, address end, size_t size, address pc) = 0;
99 virtual void done_virtual_memory_map() = 0;
100
96 /* 101 /*
97 * Report callsite information 102 * Report callsite information
98 */ 103 */
99 virtual void start_callsite() = 0; 104 virtual void start_callsite() = 0;
100 virtual void malloc_callsite(address pc, size_t malloc_amt, size_t malloc_count) = 0; 105 virtual void malloc_callsite(address pc, size_t malloc_amt, size_t malloc_count) = 0;
134 void set_scale(size_t scale); 139 void set_scale(size_t scale);
135 size_t scale() const { return _scale; } 140 size_t scale() const { return _scale; }
136 141
137 private: 142 private:
138 void report_summaries(const MemBaseline& baseline); 143 void report_summaries(const MemBaseline& baseline);
144 void report_virtual_memory_map(const MemBaseline& baseline);
139 void report_callsites(const MemBaseline& baseline); 145 void report_callsites(const MemBaseline& baseline);
140 146
141 void diff_summaries(const MemBaseline& cur, const MemBaseline& prev); 147 void diff_summaries(const MemBaseline& cur, const MemBaseline& prev);
142 void diff_callsites(const MemBaseline& cur, const MemBaseline& prev); 148 void diff_callsites(const MemBaseline& cur, const MemBaseline& prev);
143 149
249 int malloc_count_diff, int arena_diff, 255 int malloc_count_diff, int arena_diff,
250 int arena_count_diff); 256 int arena_count_diff);
251 257
252 void done_category_summary(); 258 void done_category_summary();
253 259
260 // virtual memory map
261 void start_virtual_memory_map();
262 void reserved_memory_region(MEMFLAGS type, address base, address end, size_t size, address pc);
263 void committed_memory_region(address base, address end, size_t size, address pc);
264 void done_virtual_memory_map();
265
266
254 /* 267 /*
255 * Report callsite information 268 * Report callsite information
256 */ 269 */
257 void start_callsite(); 270 void start_callsite();
258 void malloc_callsite(address pc, size_t malloc_amt, size_t malloc_count); 271 void malloc_callsite(address pc, size_t malloc_amt, size_t malloc_count);