< prev index next >

src/share/vm/runtime/safepoint.cpp

Print this page

        

*** 1106,1125 **** static bool need_to_track_page_armed_status = false; static bool init_done = false; // Helper method to print the header. static void print_header() { ! tty->print(" vmop " ! "[threads: total initially_running wait_to_block] "); ! tty->print("[time: spin block sync cleanup vmop] "); // no page armed status printed out if it is always armed. if (need_to_track_page_armed_status) { ! tty->print("page_armed "); } ! tty->print_cr("page_trap_count"); } void SafepointSynchronize::deferred_initialize_stat() { if (init_done) return; --- 1106,1129 ---- static bool need_to_track_page_armed_status = false; static bool init_done = false; // Helper method to print the header. static void print_header() { ! tty->print("%8s ", ""); ! tty->print("%-30s ", ! "vmop"); ! tty->print("[ %8s %8s %17s %13s ]", ! "threads:", "total", "initially_running", "wait_to_block"); ! tty->print("[ %5s %7s %7s %7s %7s %7s ] ", ! "time:", "spin", "block", "sync", "cleanup", "vmop"); // no page armed status printed out if it is always armed. if (need_to_track_page_armed_status) { ! tty->print("%10s ", "page_armed"); } ! tty->print_cr("%15s", "page_trap_count"); } void SafepointSynchronize::deferred_initialize_stat() { if (init_done) return;
*** 1247,1287 **** } } } void SafepointSynchronize::print_statistics() { - SafepointStats* sstats = _safepoint_stats; - for (int index = 0; index <= _cur_stat_index; index++) { if (index % 30 == 0) { print_header(); } ! sstats = &_safepoint_stats[index]; ! tty->print("%.3f: ", sstats->_time_stamp); ! tty->print("%-26s [" ! INT32_FORMAT_W(8) INT32_FORMAT_W(11) INT32_FORMAT_W(15) ! " ] ", ! sstats->_vmop_type == -1 ? "no vm operation" : ! VM_Operation::name(sstats->_vmop_type), sstats->_nof_total_threads, sstats->_nof_initial_running_threads, sstats->_nof_threads_wait_to_block); // "/ MICROUNITS " is to convert the unit from nanos to millis. ! tty->print(" [" ! INT64_FORMAT_W(6) INT64_FORMAT_W(6) ! INT64_FORMAT_W(6) INT64_FORMAT_W(6) ! INT64_FORMAT_W(6) " ] ", sstats->_time_to_spin / MICROUNITS, sstats->_time_to_wait_to_block / MICROUNITS, sstats->_time_to_sync / MICROUNITS, sstats->_time_to_do_cleanups / MICROUNITS, sstats->_time_to_exec_vmop / MICROUNITS); if (need_to_track_page_armed_status) { ! tty->print(INT32_FORMAT " ", sstats->_page_armed); } ! tty->print_cr(INT32_FORMAT " ", sstats->_nof_threads_hit_page_trap); } } // This method will be called when VM exits. It will first call // print_statistics to print out the rest of the sampling. Then --- 1251,1290 ---- } } } void SafepointSynchronize::print_statistics() { for (int index = 0; index <= _cur_stat_index; index++) { if (index % 30 == 0) { print_header(); } ! SafepointStats* sstats = &_safepoint_stats[index]; ! tty->print("%8.3f: ", sstats->_time_stamp); ! tty->print("%-30s [%8s " ! INT32_FORMAT_W(8) " " INT32_FORMAT_W(17) " " INT32_FORMAT_W(13) " " ! "]", ! (sstats->_vmop_type == -1 ? "no vm operation" : VM_Operation::name(sstats->_vmop_type)), ! "", sstats->_nof_total_threads, sstats->_nof_initial_running_threads, sstats->_nof_threads_wait_to_block); // "/ MICROUNITS " is to convert the unit from nanos to millis. ! tty->print("[ %5s " ! INT64_FORMAT_W(7) " " INT64_FORMAT_W(7) " " ! INT64_FORMAT_W(7) " " INT64_FORMAT_W(7) " " ! INT64_FORMAT_W(7) " ] ", ! "", sstats->_time_to_spin / MICROUNITS, sstats->_time_to_wait_to_block / MICROUNITS, sstats->_time_to_sync / MICROUNITS, sstats->_time_to_do_cleanups / MICROUNITS, sstats->_time_to_exec_vmop / MICROUNITS); if (need_to_track_page_armed_status) { ! tty->print(INT32_FORMAT_W(10) " ", sstats->_page_armed); } ! tty->print_cr(INT32_FORMAT_W(15) " ", sstats->_nof_threads_hit_page_trap); } } // This method will be called when VM exits. It will first call // print_statistics to print out the rest of the sampling. Then
< prev index next >