Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(299)

Unified Diff: components/memory_pressure/memory_pressure_stats_collector.cc

Issue 2874553004: Remove memory_pressure component. (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/memory_pressure/memory_pressure_stats_collector.cc
diff --git a/components/memory_pressure/memory_pressure_stats_collector.cc b/components/memory_pressure/memory_pressure_stats_collector.cc
deleted file mode 100644
index b4ff482bd4e0331fc00d9f2a9c0e4878dd807400..0000000000000000000000000000000000000000
--- a/components/memory_pressure/memory_pressure_stats_collector.cc
+++ /dev/null
@@ -1,124 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "components/memory_pressure/memory_pressure_stats_collector.h"
-
-#include <stddef.h>
-#include <stdint.h>
-
-#include "base/macros.h"
-#include "base/metrics/histogram_macros.h"
-#include "base/time/tick_clock.h"
-
-namespace memory_pressure {
-
-namespace {
-
-using MemoryPressureLevel = MemoryPressureListener::MemoryPressureLevel;
-
-// Converts a memory pressure level to an UMA enumeration value.
-MemoryPressureLevelUMA MemoryPressureLevelToUmaEnumValue(
- MemoryPressureLevel level) {
- switch (level) {
- case MemoryPressureListener::MEMORY_PRESSURE_LEVEL_NONE:
- return UMA_MEMORY_PRESSURE_LEVEL_NONE;
- case MemoryPressureListener::MEMORY_PRESSURE_LEVEL_MODERATE:
- return UMA_MEMORY_PRESSURE_LEVEL_MODERATE;
- case MemoryPressureListener::MEMORY_PRESSURE_LEVEL_CRITICAL:
- return UMA_MEMORY_PRESSURE_LEVEL_CRITICAL;
- }
- NOTREACHED();
- return UMA_MEMORY_PRESSURE_LEVEL_NONE;
-}
-
-// Converts an UMA enumeration value to a memory pressure level.
-MemoryPressureLevel MemoryPressureLevelFromUmaEnumValue(
- MemoryPressureLevelUMA level) {
- switch (level) {
- case UMA_MEMORY_PRESSURE_LEVEL_NONE:
- return MemoryPressureListener::MEMORY_PRESSURE_LEVEL_NONE;
- case UMA_MEMORY_PRESSURE_LEVEL_MODERATE:
- return MemoryPressureListener::MEMORY_PRESSURE_LEVEL_MODERATE;
- case UMA_MEMORY_PRESSURE_LEVEL_CRITICAL:
- return MemoryPressureListener::MEMORY_PRESSURE_LEVEL_CRITICAL;
- case UMA_MEMORY_PRESSURE_LEVEL_COUNT:
- NOTREACHED();
- break;
- }
- NOTREACHED();
- return MemoryPressureListener::MEMORY_PRESSURE_LEVEL_NONE;
-}
-
-} // namespace
-
-MemoryPressureStatsCollector::MemoryPressureStatsCollector(
- base::TickClock* tick_clock)
- : tick_clock_(tick_clock),
- last_pressure_level_(MemoryPressureListener::MEMORY_PRESSURE_LEVEL_NONE) {
-}
-
-void MemoryPressureStatsCollector::UpdateStatistics(
- MemoryPressureLevel current_pressure_level) {
- base::TimeTicks now = tick_clock_->NowTicks();
-
- // Special case: first call to the collector. Observations have just started
- // so there's nothing to report.
- if (last_update_time_.is_null()) {
- last_pressure_level_ = current_pressure_level;
- last_update_time_ = now;
- return;
- }
-
- // If the pressure level has transitioned then report this.
- if (last_pressure_level_ != current_pressure_level)
- ReportLevelChange(last_pressure_level_, current_pressure_level);
-
- // Increment the appropriate cumulative bucket.
- int index = MemoryPressureLevelToUmaEnumValue(current_pressure_level);
- unreported_cumulative_time_[index] += now - last_update_time_;
-
- // Update last pressure related state.
- last_pressure_level_ = current_pressure_level;
- last_update_time_ = now;
-
- // Make reports about the amount of time spent cumulatively at each level.
- for (size_t i = 0; i < arraysize(unreported_cumulative_time_); ++i) {
- // Report the largest number of whole seconds possible at this moment and
- // carry around the rest for a future report.
- if (unreported_cumulative_time_[i].is_zero())
- continue;
- int64_t seconds = unreported_cumulative_time_[i].InSeconds();
- if (seconds == 0)
- continue;
- unreported_cumulative_time_[i] -= base::TimeDelta::FromSeconds(seconds);
-
- ReportCumulativeTime(MemoryPressureLevelFromUmaEnumValue(
- static_cast<MemoryPressureLevelUMA>(i)),
- static_cast<int>(seconds));
- }
-}
-
-// static
-void MemoryPressureStatsCollector::ReportCumulativeTime(
- MemoryPressureLevel pressure_level,
- int seconds) {
- // Use the more primitive STATIC_HISTOGRAM_POINTER_BLOCK macro because the
- // simple UMA_HISTOGRAM macros don't expose 'AddCount' functionality.
- STATIC_HISTOGRAM_POINTER_BLOCK(
- "Memory.PressureLevel",
- AddCount(MemoryPressureLevelToUmaEnumValue(pressure_level), seconds),
- base::LinearHistogram::FactoryGet(
- "Memory.PressureLevel", 1, UMA_MEMORY_PRESSURE_LEVEL_COUNT,
- UMA_MEMORY_PRESSURE_LEVEL_COUNT + 1,
- base::HistogramBase::kUmaTargetedHistogramFlag));
-}
-
-// static
-void MemoryPressureStatsCollector::ReportLevelChange(
- MemoryPressureLevel old_pressure_level,
- MemoryPressureLevel new_pressure_level) {
- // TODO(chrisha): Report Memory.PressureLevelChange when this code is in use.
-}
-
-} // namespace memory_pressure

Powered by Google App Engine
This is Rietveld 408576698