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

Unified Diff: src/v8-counters.h

Issue 10695056: Factor out a Histogram class from HistogramTimer, and use it to measure external fragmentation (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 8 years, 6 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: src/v8-counters.h
diff --git a/src/v8-counters.h b/src/v8-counters.h
index dc55042b462ee08a86d7685ea4176fe050c3fb6d..c7de7d9cbb3c1f2613629e285b74bcf15006afcd 100644
--- a/src/v8-counters.h
+++ b/src/v8-counters.h
@@ -50,6 +50,32 @@ namespace internal {
HT(compile_lazy, V8.CompileLazy)
+#define HISTOGRAM_MEMORY_LIST(HM) \
+ HM(new_space_bytes_available, V8.MemoryNewSpaceBytesAvailable) \
+ HM(new_space_bytes_committed, V8.MemoryNewSpaceBytesCommitted) \
+ HM(new_space_bytes_used, V8.MemoryNewSpaceBytesUsed) \
+ HM(old_pointer_space_bytes_available, \
+ V8.MemoryOldPointerSpaceBytesAvailable) \
+ HM(old_pointer_space_bytes_committed, \
+ V8.MemoryOldPointerSpaceBytesCommitted) \
+ HM(old_pointer_space_bytes_used, V8.MemoryOldPointerSpaceBytesUsed) \
+ HM(old_data_space_bytes_available, V8.MemoryOldDataSpaceBytesAvailable) \
+ HM(old_data_space_bytes_committed, V8.MemoryOldDataSpaceBytesCommitted) \
+ HM(old_data_space_bytes_used, V8.MemoryOldDataSpaceBytesUsed) \
+ HM(code_space_bytes_available, V8.MemoryCodeSpaceBytesAvailable) \
+ HM(code_space_bytes_committed, V8.MemoryCodeSpaceBytesCommitted) \
+ HM(code_space_bytes_used, V8.MemoryCodeSpaceBytesUsed) \
+ HM(map_space_bytes_available, V8.MemoryMapSpaceBytesAvailable) \
+ HM(map_space_bytes_committed, V8.MemoryMapSpaceBytesCommitted) \
+ HM(map_space_bytes_used, V8.MemoryMapSpaceBytesUsed) \
+ HM(cell_space_bytes_available, V8.MemoryCellSpaceBytesAvailable) \
+ HM(cell_space_bytes_committed, V8.MemoryCellSpaceBytesCommitted) \
+ HM(cell_space_bytes_used, V8.MemoryCellSpaceBytesUsed) \
+ HM(lo_space_bytes_available, V8.MemoryLoSpaceBytesAvailable) \
+ HM(lo_space_bytes_committed, V8.MemoryLoSpaceBytesCommitted) \
+ HM(lo_space_bytes_used, V8.MemoryLoSpaceBytesUsed)
+
+
// WARNING: STATS_COUNTER_LIST_* is a very large macro that is causing MSVC
// Intellisense to crash. It was broken into two macros (each of length 40
// lines) rather than one macro (of length about 80 lines) to work around
@@ -246,30 +272,7 @@ namespace internal {
SC(smi_checks_removed, V8.SmiChecksRemoved) \
SC(map_checks_removed, V8.MapChecksRemoved) \
SC(quote_json_char_count, V8.QuoteJsonCharacterCount) \
- SC(quote_json_char_recount, V8.QuoteJsonCharacterReCount) \
- SC(new_space_bytes_available, V8.MemoryNewSpaceBytesAvailable) \
- SC(new_space_bytes_committed, V8.MemoryNewSpaceBytesCommitted) \
- SC(new_space_bytes_used, V8.MemoryNewSpaceBytesUsed) \
- SC(old_pointer_space_bytes_available, \
- V8.MemoryOldPointerSpaceBytesAvailable) \
- SC(old_pointer_space_bytes_committed, \
- V8.MemoryOldPointerSpaceBytesCommitted) \
- SC(old_pointer_space_bytes_used, V8.MemoryOldPointerSpaceBytesUsed) \
- SC(old_data_space_bytes_available, V8.MemoryOldDataSpaceBytesAvailable) \
- SC(old_data_space_bytes_committed, V8.MemoryOldDataSpaceBytesCommitted) \
- SC(old_data_space_bytes_used, V8.MemoryOldDataSpaceBytesUsed) \
- SC(code_space_bytes_available, V8.MemoryCodeSpaceBytesAvailable) \
- SC(code_space_bytes_committed, V8.MemoryCodeSpaceBytesCommitted) \
- SC(code_space_bytes_used, V8.MemoryCodeSpaceBytesUsed) \
- SC(map_space_bytes_available, V8.MemoryMapSpaceBytesAvailable) \
- SC(map_space_bytes_committed, V8.MemoryMapSpaceBytesCommitted) \
- SC(map_space_bytes_used, V8.MemoryMapSpaceBytesUsed) \
- SC(cell_space_bytes_available, V8.MemoryCellSpaceBytesAvailable) \
- SC(cell_space_bytes_committed, V8.MemoryCellSpaceBytesCommitted) \
- SC(cell_space_bytes_used, V8.MemoryCellSpaceBytesUsed) \
- SC(lo_space_bytes_available, V8.MemoryLoSpaceBytesAvailable) \
- SC(lo_space_bytes_committed, V8.MemoryLoSpaceBytesCommitted) \
- SC(lo_space_bytes_used, V8.MemoryLoSpaceBytesUsed)
+ SC(quote_json_char_recount, V8.QuoteJsonCharacterReCount)
// This file contains all the v8 counters that are in use.
@@ -280,6 +283,11 @@ class Counters {
HISTOGRAM_TIMER_LIST(HT)
#undef HT
+#define HM(name, caption) \
+ Histogram* name() { return &name##_; }
+ HISTOGRAM_MEMORY_LIST(HM)
+#undef HM
+
#define SC(name, caption) \
StatsCounter* name() { return &name##_; }
STATS_COUNTER_LIST_1(SC)
@@ -290,6 +298,9 @@ class Counters {
#define RATE_ID(name, caption) k_##name,
HISTOGRAM_TIMER_LIST(RATE_ID)
#undef RATE_ID
+#define MEMORY_ID(name, caption) k_##name,
+ HISTOGRAM_MEMORY_LIST(MEMORY_ID)
+#undef MEMORY_ID
#define COUNTER_ID(name, caption) k_##name,
STATS_COUNTER_LIST_1(COUNTER_ID)
STATS_COUNTER_LIST_2(COUNTER_ID)
@@ -310,6 +321,11 @@ class Counters {
HISTOGRAM_TIMER_LIST(HT)
#undef HT
+#define HM(name, caption) \
+ Histogram name##_;
+ HISTOGRAM_MEMORY_LIST(HM)
+#undef HM
+
#define SC(name, caption) \
StatsCounter name##_;
STATS_COUNTER_LIST_1(SC)

Powered by Google App Engine
This is Rietveld 408576698