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

Unified Diff: src/heap/heap.cc

Issue 1125193005: Make new space allocation throughput estimation more accurate. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 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: src/heap/heap.cc
diff --git a/src/heap/heap.cc b/src/heap/heap.cc
index 2ba75d0f27c6b40eeaec90ca3c2e25c2f0a95cb1..b9ead9bfddc33befbb502d016aa3b5c8e88ddabf 100644
--- a/src/heap/heap.cc
+++ b/src/heap/heap.cc
@@ -140,6 +140,7 @@ Heap::Heap()
gc_count_at_last_idle_gc_(0),
full_codegen_bytes_generated_(0),
crankshaft_codegen_bytes_generated_(0),
+ new_space_allocation_counter_(0),
gcs_since_last_deopt_(0),
allocation_sites_scratchpad_length_(0),
promotion_queue_(this),
@@ -460,6 +461,7 @@ void Heap::GarbageCollectionPrologue() {
maximum_size_scavenges_ = 0;
}
CheckNewSpaceExpansionCriteria();
+ UpdateNewSpaceAllocationCounter();
}
@@ -4631,6 +4633,7 @@ bool Heap::IdleNotification(double deadline_in_seconds) {
intptr_t limit = old_generation_allocation_limit_;
if (is_long_idle_notification) {
limit = idle_old_generation_allocation_limit_;
+ tracer()->SampleNewSpaceAllocation(start_ms, NewSpaceAllocationCounter());
}
heap_state.can_start_incremental_marking =
@@ -4653,8 +4656,7 @@ bool Heap::IdleNotification(double deadline_in_seconds) {
heap_state.used_new_space_size = new_space_.Size();
heap_state.new_space_capacity = new_space_.Capacity();
heap_state.new_space_allocation_throughput_in_bytes_per_ms =
- static_cast<size_t>(
- tracer()->NewSpaceAllocationThroughputInBytesPerMillisecond());
+ tracer()->NewSpaceAllocationThroughputInBytesPerMillisecond();
GCIdleTimeAction action =
gc_idle_time_handler_.Compute(idle_time_in_ms, heap_state);

Powered by Google App Engine
This is Rietveld 408576698