< prev index next >
src/share/vm/gc/g1/g1StringDedupStat.hpp
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 28,42 ****
#include "memory/allocation.hpp"
#include "runtime/os.hpp"
// Macros for GC log output formating
#define G1_STRDEDUP_OBJECTS_FORMAT UINTX_FORMAT_W(12)
! #define G1_STRDEDUP_TIME_FORMAT "%1.7lf secs"
! #define G1_STRDEDUP_PERCENT_FORMAT "%5.1lf%%"
! #define G1_STRDEDUP_PERCENT_FORMAT_NS "%.1lf%%"
! #define G1_STRDEDUP_BYTES_FORMAT "%8.1lf%s"
! #define G1_STRDEDUP_BYTES_FORMAT_NS "%.1lf%s"
#define G1_STRDEDUP_BYTES_PARAM(bytes) byte_size_in_proper_unit((double)(bytes)), proper_unit_for_byte_size((bytes))
//
// Statistics gathered by the deduplication thread.
//
--- 28,45 ----
#include "memory/allocation.hpp"
#include "runtime/os.hpp"
// Macros for GC log output formating
#define G1_STRDEDUP_OBJECTS_FORMAT UINTX_FORMAT_W(12)
! #define G1_STRDEDUP_TIME_FORMAT "%.3fs"
! #define G1_STRDEDUP_TIME_PARAM(time) (time)
! #define G1_STRDEDUP_TIME_FORMAT_MS "%.3fms"
! #define G1_STRDEDUP_TIME_PARAM_MS(time) ((time) * MILLIUNITS)
! #define G1_STRDEDUP_PERCENT_FORMAT "%5.1f%%"
! #define G1_STRDEDUP_PERCENT_FORMAT_NS "%.1f%%"
! #define G1_STRDEDUP_BYTES_FORMAT "%8.1f%s"
! #define G1_STRDEDUP_BYTES_FORMAT_NS "%.1f%s"
#define G1_STRDEDUP_BYTES_PARAM(bytes) byte_size_in_proper_unit((double)(bytes)), proper_unit_for_byte_size((bytes))
//
// Statistics gathered by the deduplication thread.
//
*** 58,68 ****
uintx _idle;
uintx _exec;
uintx _block;
// Time spent by the deduplication thread in different phases
! double _start;
double _idle_elapsed;
double _exec_elapsed;
double _block_elapsed;
public:
--- 61,73 ----
uintx _idle;
uintx _exec;
uintx _block;
// Time spent by the deduplication thread in different phases
! double _start_concurrent;
! double _end_concurrent;
! double _start_phase;
double _idle_elapsed;
double _exec_elapsed;
double _block_elapsed;
public:
*** 102,142 ****
_deduped_old++;
_deduped_old_bytes += bytes;
}
void mark_idle() {
! _start = os::elapsedTime();
_idle++;
}
void mark_exec() {
double now = os::elapsedTime();
! _idle_elapsed = now - _start;
! _start = now;
_exec++;
}
void mark_block() {
double now = os::elapsedTime();
! _exec_elapsed += now - _start;
! _start = now;
_block++;
}
void mark_unblock() {
double now = os::elapsedTime();
! _block_elapsed += now - _start;
! _start = now;
}
void mark_done() {
double now = os::elapsedTime();
! _exec_elapsed += now - _start;
}
void add(const G1StringDedupStat& stat);
! static void print_summary(const G1StringDedupStat& last_stat, const G1StringDedupStat& total_stat);
static void print_statistics(const G1StringDedupStat& stat, bool total);
};
#endif // SHARE_VM_GC_G1_G1STRINGDEDUPSTAT_HPP
--- 107,150 ----
_deduped_old++;
_deduped_old_bytes += bytes;
}
void mark_idle() {
! _start_phase = os::elapsedTime();
_idle++;
}
void mark_exec() {
double now = os::elapsedTime();
! _idle_elapsed = now - _start_phase;
! _start_phase = now;
! _start_concurrent = now;
_exec++;
}
void mark_block() {
double now = os::elapsedTime();
! _exec_elapsed += now - _start_phase;
! _start_phase = now;
_block++;
}
void mark_unblock() {
double now = os::elapsedTime();
! _block_elapsed += now - _start_phase;
! _start_phase = now;
}
void mark_done() {
double now = os::elapsedTime();
! _exec_elapsed += now - _start_phase;
! _end_concurrent = now;
}
void add(const G1StringDedupStat& stat);
! static void print_start(const G1StringDedupStat& last_stat);
! static void print_end(const G1StringDedupStat& last_stat, const G1StringDedupStat& total_stat);
static void print_statistics(const G1StringDedupStat& stat, bool total);
};
#endif // SHARE_VM_GC_G1_G1STRINGDEDUPSTAT_HPP
< prev index next >