87 // remove MemProfilerTask
88 assert(_task != NULL, "sanity check");
89 _task->disenroll();
90 delete _task;
91 _task = NULL;
92 }
93
94
95 void MemProfiler::do_trace() {
96 // Calculate thread local sizes
97 size_t handles_memory_usage = VMThread::vm_thread()->handle_area()->size_in_bytes();
98 size_t resource_memory_usage = VMThread::vm_thread()->resource_area()->size_in_bytes();
99 JavaThread *cur = Threads::first();
100 while (cur != NULL) {
101 handles_memory_usage += cur->handle_area()->size_in_bytes();
102 resource_memory_usage += cur->resource_area()->size_in_bytes();
103 cur = cur->next();
104 }
105
106 // Print trace line in log
107 fprintf(_log_fp, "%6.1f,%5d,%5d,%6ld,%6ld,%6ld,%6ld,",
108 os::elapsedTime(),
109 Threads::number_of_threads(),
110 SystemDictionary::number_of_classes(),
111 Universe::heap()->used() / K,
112 Universe::heap()->capacity() / K,
113 Universe::heap()->permanent_used() / HWperKB,
114 Universe::heap()->permanent_capacity() / HWperKB);
115
116 fprintf(_log_fp, "%6ld,", CodeCache::capacity() / K);
117
118 fprintf(_log_fp, "%6ld,%6ld,%6ld\n",
119 handles_memory_usage / K,
120 resource_memory_usage / K,
121 OopMapCache::memory_usage() / K);
122 fflush(_log_fp);
123 }
124
125 #endif
|
87 // remove MemProfilerTask
88 assert(_task != NULL, "sanity check");
89 _task->disenroll();
90 delete _task;
91 _task = NULL;
92 }
93
94
95 void MemProfiler::do_trace() {
96 // Calculate thread local sizes
97 size_t handles_memory_usage = VMThread::vm_thread()->handle_area()->size_in_bytes();
98 size_t resource_memory_usage = VMThread::vm_thread()->resource_area()->size_in_bytes();
99 JavaThread *cur = Threads::first();
100 while (cur != NULL) {
101 handles_memory_usage += cur->handle_area()->size_in_bytes();
102 resource_memory_usage += cur->resource_area()->size_in_bytes();
103 cur = cur->next();
104 }
105
106 // Print trace line in log
107 fprintf(_log_fp, "%6.1f,%5d,%5d," UINTX_FORMAT_W(6) "," UINTX_FORMAT_W(6) ","
108 UINTX_FORMAT_W(6) "," UINTX_FORMAT_W(6) ",",
109 os::elapsedTime(),
110 Threads::number_of_threads(),
111 SystemDictionary::number_of_classes(),
112 Universe::heap()->used() / K,
113 Universe::heap()->capacity() / K,
114 Universe::heap()->permanent_used() / HWperKB,
115 Universe::heap()->permanent_capacity() / HWperKB);
116
117 fprintf(_log_fp, UINTX_FORMAT_W(6) ",", CodeCache::capacity() / K);
118
119 fprintf(_log_fp, UINTX_FORMAT_W(6) "," UINTX_FORMAT_W(6) ",%6ld\n",
120 handles_memory_usage / K,
121 resource_memory_usage / K,
122 OopMapCache::memory_usage() / K);
123 fflush(_log_fp);
124 }
125
126 #endif
|