comparison src/share/vm/services/memoryManager.cpp @ 4006:436b4a3231bf

7098194: integrate macosx-port changes Summary: Integrate bsd-port/hotspot and macosx-port/hotspot changes as of 2011.09.29. Reviewed-by: kvn, dholmes, never, phh Contributed-by: Christos Zoulas <christos@zoulas.com>, Greg Lewis <glewis@eyesbeyond.com>, Kurt Miller <kurt@intricatesoftware.com>, Alexander Strange <astrange@apple.com>, Mike Swingler <swingler@apple.com>, Roger Hoover <rhoover@apple.com>, Victor Hernandez <vhernandez@apple.com>, Pratik Solanki <psolanki@apple.com>
author dcubed
date Thu, 13 Oct 2011 09:35:42 -0700
parents 78542e2b5e35
children b5a5f30c483d
comparison
equal deleted inserted replaced
4005:2ef3386478e6 4006:436b4a3231bf
34 #include "services/memoryPool.hpp" 34 #include "services/memoryPool.hpp"
35 #include "services/memoryService.hpp" 35 #include "services/memoryService.hpp"
36 #include "services/gcNotifier.hpp" 36 #include "services/gcNotifier.hpp"
37 #include "utilities/dtrace.hpp" 37 #include "utilities/dtrace.hpp"
38 38
39 #ifndef USDT2
39 HS_DTRACE_PROBE_DECL8(hotspot, mem__pool__gc__begin, char*, int, char*, int, 40 HS_DTRACE_PROBE_DECL8(hotspot, mem__pool__gc__begin, char*, int, char*, int,
40 size_t, size_t, size_t, size_t); 41 size_t, size_t, size_t, size_t);
41 HS_DTRACE_PROBE_DECL8(hotspot, mem__pool__gc__end, char*, int, char*, int, 42 HS_DTRACE_PROBE_DECL8(hotspot, mem__pool__gc__end, char*, int, char*, int,
42 size_t, size_t, size_t, size_t); 43 size_t, size_t, size_t, size_t);
44 #endif /* !USDT2 */
43 45
44 MemoryManager::MemoryManager() { 46 MemoryManager::MemoryManager() {
45 _num_pools = 0; 47 _num_pools = 0;
46 _memory_mgr_obj = NULL; 48 _memory_mgr_obj = NULL;
47 } 49 }
236 // Keep memory usage of all memory pools 238 // Keep memory usage of all memory pools
237 for (int i = 0; i < MemoryService::num_memory_pools(); i++) { 239 for (int i = 0; i < MemoryService::num_memory_pools(); i++) {
238 MemoryPool* pool = MemoryService::get_memory_pool(i); 240 MemoryPool* pool = MemoryService::get_memory_pool(i);
239 MemoryUsage usage = pool->get_memory_usage(); 241 MemoryUsage usage = pool->get_memory_usage();
240 _current_gc_stat->set_before_gc_usage(i, usage); 242 _current_gc_stat->set_before_gc_usage(i, usage);
243 #ifndef USDT2
241 HS_DTRACE_PROBE8(hotspot, mem__pool__gc__begin, 244 HS_DTRACE_PROBE8(hotspot, mem__pool__gc__begin,
242 name(), strlen(name()), 245 name(), strlen(name()),
243 pool->name(), strlen(pool->name()), 246 pool->name(), strlen(pool->name()),
244 usage.init_size(), usage.used(), 247 usage.init_size(), usage.used(),
245 usage.committed(), usage.max_size()); 248 usage.committed(), usage.max_size());
249 #else /* USDT2 */
250 HOTSPOT_MEM_POOL_GC_BEGIN(
251 (char *) name(), strlen(name()),
252 (char *) pool->name(), strlen(pool->name()),
253 usage.init_size(), usage.used(),
254 usage.committed(), usage.max_size());
255 #endif /* USDT2 */
246 } 256 }
247 } 257 }
248 } 258 }
249 259
250 // A collector MUST, even if it does not complete for some reason, 260 // A collector MUST, even if it does not complete for some reason,
266 // keep the last gc statistics for all memory pools 276 // keep the last gc statistics for all memory pools
267 for (i = 0; i < MemoryService::num_memory_pools(); i++) { 277 for (i = 0; i < MemoryService::num_memory_pools(); i++) {
268 MemoryPool* pool = MemoryService::get_memory_pool(i); 278 MemoryPool* pool = MemoryService::get_memory_pool(i);
269 MemoryUsage usage = pool->get_memory_usage(); 279 MemoryUsage usage = pool->get_memory_usage();
270 280
281 #ifndef USDT2
271 HS_DTRACE_PROBE8(hotspot, mem__pool__gc__end, 282 HS_DTRACE_PROBE8(hotspot, mem__pool__gc__end,
272 name(), strlen(name()), 283 name(), strlen(name()),
273 pool->name(), strlen(pool->name()), 284 pool->name(), strlen(pool->name()),
274 usage.init_size(), usage.used(), 285 usage.init_size(), usage.used(),
275 usage.committed(), usage.max_size()); 286 usage.committed(), usage.max_size());
287 #else /* USDT2 */
288 HOTSPOT_MEM_POOL_GC_END(
289 (char *) name(), strlen(name()),
290 (char *) pool->name(), strlen(pool->name()),
291 usage.init_size(), usage.used(),
292 usage.committed(), usage.max_size());
293 #endif /* USDT2 */
276 294
277 _current_gc_stat->set_after_gc_usage(i, usage); 295 _current_gc_stat->set_after_gc_usage(i, usage);
278 } 296 }
279 297
280 // Set last collection usage of the memory pools managed by this collector 298 // Set last collection usage of the memory pools managed by this collector