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

Side by Side Diff: src/heap/gc-tracer.h

Issue 1167563005: Make old generation allocation throughput stats independent from the new space allocation throughpu… (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: cast Created 5 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 unified diff | Download patch
« no previous file with comments | « src/heap/gc-idle-time-handler.cc ('k') | src/heap/gc-tracer.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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_GC_TRACER_H_ 5 #ifndef V8_HEAP_GC_TRACER_H_
6 #define V8_HEAP_GC_TRACER_H_ 6 #define V8_HEAP_GC_TRACER_H_
7 7
8 #include "src/base/platform/platform.h" 8 #include "src/base/platform/platform.h"
9 9
10 namespace v8 { 10 namespace v8 {
(...skipping 364 matching lines...) Expand 10 before | Expand all | Expand 10 after
375 375
376 // Compute the average mark-sweep speed in bytes/millisecond. 376 // Compute the average mark-sweep speed in bytes/millisecond.
377 // Returns 0 if no events have been recorded. 377 // Returns 0 if no events have been recorded.
378 intptr_t MarkCompactSpeedInBytesPerMillisecond() const; 378 intptr_t MarkCompactSpeedInBytesPerMillisecond() const;
379 379
380 // Compute the average incremental mark-sweep finalize speed in 380 // Compute the average incremental mark-sweep finalize speed in
381 // bytes/millisecond. 381 // bytes/millisecond.
382 // Returns 0 if no events have been recorded. 382 // Returns 0 if no events have been recorded.
383 intptr_t FinalIncrementalMarkCompactSpeedInBytesPerMillisecond() const; 383 intptr_t FinalIncrementalMarkCompactSpeedInBytesPerMillisecond() const;
384 384
385 // Compute the overall mark compact speed including incremental steps
386 // and the final mark-compact step.
387 double CombinedMarkCompactSpeedInBytesPerMillisecond();
388
385 // Allocation throughput in the new space in bytes/millisecond. 389 // Allocation throughput in the new space in bytes/millisecond.
386 // Returns 0 if no allocation events have been recorded. 390 // Returns 0 if no allocation events have been recorded.
387 size_t NewSpaceAllocationThroughputInBytesPerMillisecond() const; 391 size_t NewSpaceAllocationThroughputInBytesPerMillisecond(
392 double time_ms = 0) const;
393
394 // Allocation throughput in the old generation in bytes/millisecond in the
395 // last time_ms milliseconds.
396 // Returns 0 if no allocation events have been recorded.
397 size_t OldGenerationAllocationThroughputInBytesPerMillisecond(
398 double time_ms = 0) const;
388 399
389 // Allocation throughput in heap in bytes/millisecond in the last time_ms 400 // Allocation throughput in heap in bytes/millisecond in the last time_ms
390 // milliseconds. 401 // milliseconds.
391 // Returns 0 if no allocation events have been recorded. 402 // Returns 0 if no allocation events have been recorded.
392 size_t AllocationThroughputInBytesPerMillisecond(double time_ms) const; 403 size_t AllocationThroughputInBytesPerMillisecond(double time_ms) const;
393 404
394 // Allocation throughput in heap in bytes/milliseconds in 405 // Allocation throughput in heap in bytes/milliseconds in
395 // the last five seconds. 406 // the last five seconds.
396 // Returns 0 if no allocation events have been recorded. 407 // Returns 0 if no allocation events have been recorded.
397 size_t CurrentAllocationThroughputInBytesPerMillisecond() const; 408 size_t CurrentAllocationThroughputInBytesPerMillisecond() const;
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 EventBuffer scavenger_events_; 470 EventBuffer scavenger_events_;
460 471
461 // RingBuffers for MARK_COMPACTOR events. 472 // RingBuffers for MARK_COMPACTOR events.
462 EventBuffer mark_compactor_events_; 473 EventBuffer mark_compactor_events_;
463 474
464 // RingBuffers for INCREMENTAL_MARK_COMPACTOR events. 475 // RingBuffers for INCREMENTAL_MARK_COMPACTOR events.
465 EventBuffer incremental_mark_compactor_events_; 476 EventBuffer incremental_mark_compactor_events_;
466 477
467 // RingBuffer for allocation events. 478 // RingBuffer for allocation events.
468 AllocationEventBuffer new_space_allocation_events_; 479 AllocationEventBuffer new_space_allocation_events_;
469 AllocationEventBuffer allocation_events_; 480 AllocationEventBuffer old_generation_allocation_events_;
470 481
471 // RingBuffer for context disposal events. 482 // RingBuffer for context disposal events.
472 ContextDisposalEventBuffer context_disposal_events_; 483 ContextDisposalEventBuffer context_disposal_events_;
473 484
474 // RingBuffer for survival events. 485 // RingBuffer for survival events.
475 SurvivalEventBuffer survival_events_; 486 SurvivalEventBuffer survival_events_;
476 487
477 // Cumulative number of incremental marking steps since creation of tracer. 488 // Cumulative number of incremental marking steps since creation of tracer.
478 int cumulative_incremental_marking_steps_; 489 int cumulative_incremental_marking_steps_;
479 490
(...skipping 27 matching lines...) Expand all
507 // Timestamp and allocation counter at the last sampled allocation event. 518 // Timestamp and allocation counter at the last sampled allocation event.
508 double allocation_time_ms_; 519 double allocation_time_ms_;
509 size_t new_space_allocation_counter_bytes_; 520 size_t new_space_allocation_counter_bytes_;
510 size_t old_generation_allocation_counter_bytes_; 521 size_t old_generation_allocation_counter_bytes_;
511 522
512 // Accumulated duration and allocated bytes since the last GC. 523 // Accumulated duration and allocated bytes since the last GC.
513 double allocation_duration_since_gc_; 524 double allocation_duration_since_gc_;
514 size_t new_space_allocation_in_bytes_since_gc_; 525 size_t new_space_allocation_in_bytes_since_gc_;
515 size_t old_generation_allocation_in_bytes_since_gc_; 526 size_t old_generation_allocation_in_bytes_since_gc_;
516 527
528 double combined_mark_compact_speed_cache_;
529
517 // Counts how many tracers were started without stopping. 530 // Counts how many tracers were started without stopping.
518 int start_counter_; 531 int start_counter_;
519 532
520 DISALLOW_COPY_AND_ASSIGN(GCTracer); 533 DISALLOW_COPY_AND_ASSIGN(GCTracer);
521 }; 534 };
522 } 535 }
523 } // namespace v8::internal 536 } // namespace v8::internal
524 537
525 #endif // V8_HEAP_GC_TRACER_H_ 538 #endif // V8_HEAP_GC_TRACER_H_
OLDNEW
« no previous file with comments | « src/heap/gc-idle-time-handler.cc ('k') | src/heap/gc-tracer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698