src/share/vm/memory/allocation.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/share/vm/memory/allocation.cpp	Fri Feb  4 08:47:23 2011
--- new/src/share/vm/memory/allocation.cpp	Fri Feb  4 08:47:23 2011

*** 155,165 **** --- 155,165 ---- #endif // ASSERT void trace_heap_malloc(size_t size, const char* name, void* p) { // A lock is not needed here - tty uses a lock internally ! tty->print_cr("Heap malloc " INTPTR_FORMAT " %7d %s", p, size, name == NULL ? "" : name); ! tty->print_cr("Heap malloc " INTPTR_FORMAT " " SIZE_FORMAT " %s", p, size, name == NULL ? "" : name); } void trace_heap_free(void* p) { // A lock is not needed here - tty uses a lock internally
*** 571,596 **** --- 571,601 ---- void AllocatedObj::print_value_on(outputStream* st) const { st->print("AllocatedObj(" INTPTR_FORMAT ")", this); } ! size_t Arena::_bytes_allocated = 0; ! julong Arena::_bytes_allocated = 0; + void Arena::inc_bytes_allocated(size_t x) { inc_stat_counter(&_bytes_allocated, x); } + AllocStats::AllocStats() { start_mallocs = os::num_mallocs; start_frees = os::num_frees; start_malloc_bytes = os::alloc_bytes; + start_mfree_bytes = os::free_bytes; start_res_bytes = Arena::_bytes_allocated; } ! int AllocStats::num_mallocs() { return os::num_mallocs - start_mallocs; } ! size_t AllocStats::alloc_bytes() { return os::alloc_bytes - start_malloc_bytes; } ! size_t AllocStats::resource_bytes() { return Arena::_bytes_allocated - start_res_bytes; } ! int AllocStats::num_frees() { return os::num_frees - start_frees; } ! julong AllocStats::num_mallocs() { return os::num_mallocs - start_mallocs; } ! julong AllocStats::alloc_bytes() { return os::alloc_bytes - start_malloc_bytes; } ! julong AllocStats::num_frees() { return os::num_frees - start_frees; } ! julong AllocStats::free_bytes() { return os::free_bytes - start_mfree_bytes; } + julong AllocStats::resource_bytes() { return Arena::_bytes_allocated - start_res_bytes; } void AllocStats::print() { ! tty->print("%d mallocs (%ldK), %d frees, %ldK resrc", num_mallocs(), alloc_bytes()/K, num_frees(), resource_bytes()/K); ! tty->print_cr(UINT64_FORMAT " mallocs (" UINT64_FORMAT "MB), " + UINT64_FORMAT" frees (" UINT64_FORMAT "MB), " UINT64_FORMAT "MB resrc", + num_mallocs(), alloc_bytes()/M, num_frees(), free_bytes()/M, resource_bytes()/M); } // debugging code inline void Arena::free_all(char** start, char** end) {

src/share/vm/memory/allocation.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File