OpenJDK / jdk / jdk
changeset 53956:d5bd4d5483e4
8219565: [deadcode] remove share/utilities/intHisto.*
Reviewed-by: dholmes
author | iignatyev |
---|---|
date | Thu, 28 Feb 2019 09:10:46 -0800 |
parents | d15d4d610de4 |
children | 8b886d62ddc7 |
files | src/hotspot/share/gc/g1/g1RemSet.cpp src/hotspot/share/utilities/intHisto.cpp src/hotspot/share/utilities/intHisto.hpp |
diffstat | 3 files changed, 0 insertions(+), 143 deletions(-) [+] |
line wrap: on
line diff
--- a/src/hotspot/share/gc/g1/g1RemSet.cpp Thu Feb 28 11:04:06 2019 -0600 +++ b/src/hotspot/share/gc/g1/g1RemSet.cpp Thu Feb 28 09:10:46 2019 -0800 @@ -48,7 +48,6 @@ #include "runtime/os.hpp" #include "utilities/align.hpp" #include "utilities/globalDefinitions.hpp" -#include "utilities/intHisto.hpp" #include "utilities/stack.inline.hpp" #include "utilities/ticks.hpp"
--- a/src/hotspot/share/utilities/intHisto.cpp Thu Feb 28 11:04:06 2019 -0600 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,64 +0,0 @@ -/* - * Copyright (c) 2001, 2012, 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. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - * - */ - -#include "precompiled.hpp" -#include "utilities/intHisto.hpp" - -IntHistogram::IntHistogram(int est, int max) : _max(max), _tot(0) { - assert(0 <= est && est <= max, "Preconditions"); - _elements = new (ResourceObj::C_HEAP, mtInternal) GrowableArray<int>(est, true); - guarantee(_elements != NULL, "alloc failure"); -} - -void IntHistogram::add_entry(int outcome) { - if (outcome > _max) outcome = _max; - int new_count = _elements->at_grow(outcome) + 1; - _elements->at_put(outcome, new_count); - _tot++; -} - -int IntHistogram::entries_for_outcome(int outcome) { - return _elements->at_grow(outcome); -} - -void IntHistogram::print_on(outputStream* st) const { - double tot_d = (double)_tot; - st->print_cr("Outcome # of occurrences %% of occurrences"); - st->print_cr("-----------------------------------------------"); - for (int i=0; i < _elements->length()-2; i++) { - int cnt = _elements->at(i); - if (cnt != 0) { - st->print_cr("%7d %10d %8.4f", - i, cnt, (double)cnt/tot_d); - } - } - // Does it have any max entries? - if (_elements->length()-1 == _max) { - int cnt = _elements->at(_max); - st->print_cr(">= %4d %10d %8.4f", - _max, cnt, (double)cnt/tot_d); - } - st->print_cr("-----------------------------------------------"); - st->print_cr(" All %10d %8.4f", _tot, 1.0); -}
--- a/src/hotspot/share/utilities/intHisto.hpp Thu Feb 28 11:04:06 2019 -0600 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,78 +0,0 @@ -/* - * Copyright (c) 2001, 2019, 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. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - * - */ - -#ifndef SHARE_UTILITIES_INTHISTO_HPP -#define SHARE_UTILITIES_INTHISTO_HPP - -#include "memory/allocation.hpp" -#include "utilities/growableArray.hpp" - -// This class implements a simple histogram. - -// A histogram summarizes a series of "measurements", each of which is -// assumed (required in this implementation) to have an outcome that is a -// non-negative integer. The histogram efficiently maps measurement outcomes -// to the number of measurements had that outcome. - -// To print the results, invoke print() on your Histogram*. - -// Note: there is already an existing "Histogram" class, in file -// histogram.{hpp,cpp}, but to my mind that's not a histogram, it's a table -// mapping strings to counts. To be a histogram (IMHO) it needs to map -// numbers (in fact, integers) to number of occurrences of that number. - -// ysr: (i am not sure i agree with the above note.) i suspect we want to have a -// histogram template that will map an arbitrary type (with a defined order -// relation) to a count. - - -class IntHistogram : public CHeapObj<mtInternal> { - protected: - int _max; - int _tot; - GrowableArray<int>* _elements; - -public: - // Create a new, empty table. "est" is an estimate of the maximum outcome - // that will be added, and "max" is an outcome such that all outcomes at - // least that large will be bundled with it. - IntHistogram(int est, int max); - // Add a measurement with the given outcome to the sequence. - void add_entry(int outcome); - // Return the number of entries recorded so far with the given outcome. - int entries_for_outcome(int outcome); - // Return the total number of entries recorded so far. - int total_entries() { return _tot; } - // Return the number of entries recorded so far with the given outcome as - // a fraction of the total number recorded so far. - double fraction_for_outcome(int outcome) { - return - (double)entries_for_outcome(outcome)/ - (double)total_entries(); - } - // Print the histogram on the given output stream. - void print_on(outputStream* st) const; -}; - -#endif // SHARE_UTILITIES_INTHISTO_HPP