diff options
author | rtenneti@chromium.org <rtenneti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-20 00:55:00 +0000 |
---|---|---|
committer | rtenneti@chromium.org <rtenneti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-20 00:55:00 +0000 |
commit | 908de52f3505d2f7b10851e731bb5a61912d6b74 (patch) | |
tree | 2742f3b309fd61d1c18f9c2787f8586c8569ca83 /chrome/browser/browser_about_handler.cc | |
parent | e5df9535306304bea4a82f2c88aa42cbcd78dab4 (diff) | |
download | chromium_src-908de52f3505d2f7b10851e731bb5a61912d6b74.zip chromium_src-908de52f3505d2f7b10851e731bb5a61912d6b74.tar.gz chromium_src-908de52f3505d2f7b10851e731bb5a61912d6b74.tar.bz2 |
Cache the ranges_ vector and share the ranges_ vector
across histograms if the ranges in the ranges_ vector
is same. This change saves around 100k of memory in the
browser (around 400 histograms sharing the same ranges_
vector and each ranges_ vector has around 50 elements).
In each renderer process we are sharing ranges_ vector
for around 30 histograms (a savings of 6k of memory).
R=jar
TEST=histogram unit tests.
Review URL: http://codereview.chromium.org/7696017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106425 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser_about_handler.cc')
-rw-r--r-- | chrome/browser/browser_about_handler.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/chrome/browser/browser_about_handler.cc b/chrome/browser/browser_about_handler.cc index c081cd3..d9e192e 100644 --- a/chrome/browser/browser_about_handler.cc +++ b/chrome/browser/browser_about_handler.cc @@ -849,6 +849,10 @@ std::string AboutTcmalloc() { std::string AboutHistograms(const std::string& query) { TimeDelta wait_time = TimeDelta::FromMilliseconds(10000); +#ifndef NDEBUG + base::StatisticsRecorder::CollectHistogramStats("Browser"); +#endif + HistogramSynchronizer* current_synchronizer = HistogramSynchronizer::CurrentSynchronizer(); DCHECK(current_synchronizer != NULL); |