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

Side by Side Diff: src/heap.h

Issue 27023003: Add histograms to track fraction of heap spaces and percentage of crankshaft code. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « src/codegen.cc ('k') | src/heap.cc » ('j') | src/mark-compact.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 1642 matching lines...) Expand 10 before | Expand all | Expand 10 after
1653 GCTracer* tracer() { return tracer_; } 1653 GCTracer* tracer() { return tracer_; }
1654 1654
1655 // Returns the size of objects residing in non new spaces. 1655 // Returns the size of objects residing in non new spaces.
1656 intptr_t PromotedSpaceSizeOfObjects(); 1656 intptr_t PromotedSpaceSizeOfObjects();
1657 1657
1658 double total_regexp_code_generated() { return total_regexp_code_generated_; } 1658 double total_regexp_code_generated() { return total_regexp_code_generated_; }
1659 void IncreaseTotalRegexpCodeGenerated(int size) { 1659 void IncreaseTotalRegexpCodeGenerated(int size) {
1660 total_regexp_code_generated_ += size; 1660 total_regexp_code_generated_ += size;
1661 } 1661 }
1662 1662
1663 void IncrementCodeGeneratedBytes(bool is_crankshafted, int size) {
1664 if (is_crankshafted) {
1665 crankshaft_codegen_bytes_ += size;
1666 } else {
1667 full_codegen_bytes_ += size;
1668 }
1669 }
1670
1671 void DecrementCodeGeneratedBytes(bool is_crankshafted, int size) {
1672 if (is_crankshafted) {
1673 crankshaft_codegen_bytes_ -= size;
1674 } else {
1675 full_codegen_bytes_ -= size;
1676 }
1677 }
1678
1663 // Returns maximum GC pause. 1679 // Returns maximum GC pause.
1664 double get_max_gc_pause() { return max_gc_pause_; } 1680 double get_max_gc_pause() { return max_gc_pause_; }
1665 1681
1666 // Returns maximum size of objects alive after GC. 1682 // Returns maximum size of objects alive after GC.
1667 intptr_t get_max_alive_after_gc() { return max_alive_after_gc_; } 1683 intptr_t get_max_alive_after_gc() { return max_alive_after_gc_; }
1668 1684
1669 // Returns minimal interval between two subsequent collections. 1685 // Returns minimal interval between two subsequent collections.
1670 double get_min_in_mutator() { return min_in_mutator_; } 1686 double get_min_in_mutator() { return min_in_mutator_; }
1671 1687
1672 // TODO(hpayer): remove, should be handled by GCTracer 1688 // TODO(hpayer): remove, should be handled by GCTracer
(...skipping 675 matching lines...) Expand 10 before | Expand all | Expand 10 after
2348 IncrementalMarking incremental_marking_; 2364 IncrementalMarking incremental_marking_;
2349 2365
2350 int number_idle_notifications_; 2366 int number_idle_notifications_;
2351 unsigned int last_idle_notification_gc_count_; 2367 unsigned int last_idle_notification_gc_count_;
2352 bool last_idle_notification_gc_count_init_; 2368 bool last_idle_notification_gc_count_init_;
2353 2369
2354 int mark_sweeps_since_idle_round_started_; 2370 int mark_sweeps_since_idle_round_started_;
2355 unsigned int gc_count_at_last_idle_gc_; 2371 unsigned int gc_count_at_last_idle_gc_;
2356 int scavenges_since_last_idle_round_; 2372 int scavenges_since_last_idle_round_;
2357 2373
2374 intptr_t full_codegen_bytes_;
Michael Starzinger 2013/10/14 09:18:37 nit: I know the existing code is not consistent ab
rmcilroy 2013/10/14 13:29:53 Done.
2375 intptr_t crankshaft_codegen_bytes_;
2376
2358 // If the --deopt_every_n_garbage_collections flag is set to a positive value, 2377 // If the --deopt_every_n_garbage_collections flag is set to a positive value,
2359 // this variable holds the number of garbage collections since the last 2378 // this variable holds the number of garbage collections since the last
2360 // deoptimization triggered by garbage collection. 2379 // deoptimization triggered by garbage collection.
2361 int gcs_since_last_deopt_; 2380 int gcs_since_last_deopt_;
2362 2381
2363 #ifdef VERIFY_HEAP 2382 #ifdef VERIFY_HEAP
2364 int no_weak_object_verification_scope_depth_; 2383 int no_weak_object_verification_scope_depth_;
2365 #endif 2384 #endif
2366 2385
2367 static const int kMaxMarkSweepsInIdleRound = 7; 2386 static const int kMaxMarkSweepsInIdleRound = 7;
(...skipping 692 matching lines...) Expand 10 before | Expand all | Expand 10 after
3060 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. 3079 DisallowHeapAllocation no_allocation; // i.e. no gc allowed.
3061 3080
3062 private: 3081 private:
3063 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); 3082 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer);
3064 }; 3083 };
3065 #endif // DEBUG 3084 #endif // DEBUG
3066 3085
3067 } } // namespace v8::internal 3086 } } // namespace v8::internal
3068 3087
3069 #endif // V8_HEAP_H_ 3088 #endif // V8_HEAP_H_
OLDNEW
« no previous file with comments | « src/codegen.cc ('k') | src/heap.cc » ('j') | src/mark-compact.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698