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

Side by Side Diff: src/heap/heap.h

Issue 1148633005: Uncommit and shrink semi-spaces only on low allocation rate. (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 unified diff | Download patch
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_HEAP_HEAP_H_ 5 #ifndef V8_HEAP_HEAP_H_
6 #define V8_HEAP_HEAP_H_ 6 #define V8_HEAP_HEAP_H_
7 7
8 #include <cmath> 8 #include <cmath>
9 #include <map> 9 #include <map>
10 10
(...skipping 2109 matching lines...) Expand 10 before | Expand all | Expand 10 after
2120 unsigned int maximum_size_scavenges_; 2120 unsigned int maximum_size_scavenges_;
2121 2121
2122 // TODO(hpayer): Allocation site pretenuring may make this method obsolete. 2122 // TODO(hpayer): Allocation site pretenuring may make this method obsolete.
2123 // Re-visit incremental marking heuristics. 2123 // Re-visit incremental marking heuristics.
2124 bool IsHighSurvivalRate() { return high_survival_rate_period_length_ > 0; } 2124 bool IsHighSurvivalRate() { return high_survival_rate_period_length_ > 0; }
2125 2125
2126 void ConfigureInitialOldGenerationSize(); 2126 void ConfigureInitialOldGenerationSize();
2127 2127
2128 void SelectScavengingVisitorsTable(); 2128 void SelectScavengingVisitorsTable();
2129 2129
2130 void ReduceNewSpaceSize(GCIdleTimeAction action); 2130 bool HasLowAllocationRate(GCIdleTimeHandler::HeapState heap_state);
2131
2132 void ReduceNewSpaceSize(GCIdleTimeAction action,
2133 GCIdleTimeHandler::HeapState heap_state);
2131 2134
2132 bool TryFinalizeIdleIncrementalMarking( 2135 bool TryFinalizeIdleIncrementalMarking(
2133 double idle_time_in_ms, size_t size_of_objects, 2136 double idle_time_in_ms, size_t size_of_objects,
2134 size_t mark_compact_speed_in_bytes_per_ms); 2137 size_t mark_compact_speed_in_bytes_per_ms);
2135 2138
2136 GCIdleTimeHandler::HeapState ComputeHeapState(bool reduce_memory); 2139 GCIdleTimeHandler::HeapState ComputeHeapState(bool reduce_memory);
2137 2140
2138 bool PerformIdleTimeAction(GCIdleTimeAction action, 2141 bool PerformIdleTimeAction(GCIdleTimeAction action,
2139 GCIdleTimeHandler::HeapState heap_state, 2142 GCIdleTimeHandler::HeapState heap_state,
2140 double deadline_in_ms, 2143 double deadline_in_ms,
(...skipping 553 matching lines...) Expand 10 before | Expand all | Expand 10 after
2694 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. 2697 DisallowHeapAllocation no_allocation; // i.e. no gc allowed.
2695 2698
2696 private: 2699 private:
2697 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); 2700 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer);
2698 }; 2701 };
2699 #endif // DEBUG 2702 #endif // DEBUG
2700 } 2703 }
2701 } // namespace v8::internal 2704 } // namespace v8::internal
2702 2705
2703 #endif // V8_HEAP_HEAP_H_ 2706 #endif // V8_HEAP_HEAP_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698