| OLD | NEW |
| 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 #include "src/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/heap/gc-tracer.h" | 7 #include "src/heap/gc-tracer.h" |
| 8 | 8 |
| 9 namespace v8 { | 9 namespace v8 { |
| 10 namespace internal { | 10 namespace internal { |
| (...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 353 } | 353 } |
| 354 Output("%8.0f ms: ", heap_->isolate()->time_millis_since_init()); | 354 Output("%8.0f ms: ", heap_->isolate()->time_millis_since_init()); |
| 355 | 355 |
| 356 Output("%s %.1f (%.1f) -> %.1f (%.1f) MB, ", current_.TypeName(false), | 356 Output("%s %.1f (%.1f) -> %.1f (%.1f) MB, ", current_.TypeName(false), |
| 357 static_cast<double>(current_.start_object_size) / MB, | 357 static_cast<double>(current_.start_object_size) / MB, |
| 358 static_cast<double>(current_.start_memory_size) / MB, | 358 static_cast<double>(current_.start_memory_size) / MB, |
| 359 static_cast<double>(current_.end_object_size) / MB, | 359 static_cast<double>(current_.end_object_size) / MB, |
| 360 static_cast<double>(current_.end_memory_size) / MB); | 360 static_cast<double>(current_.end_memory_size) / MB); |
| 361 | 361 |
| 362 int external_time = static_cast<int>(current_.scopes[Scope::EXTERNAL]); | 362 int external_time = static_cast<int>(current_.scopes[Scope::EXTERNAL]); |
| 363 if (external_time > 0) Output("%d / ", external_time); | 363 double duration = current_.end_time - current_.start_time; |
| 364 Output("%.1f / %d ms", duration, external_time); |
| 364 | 365 |
| 365 double duration = current_.end_time - current_.start_time; | |
| 366 Output("%.1f ms", duration); | |
| 367 if (current_.type == Event::SCAVENGER) { | 366 if (current_.type == Event::SCAVENGER) { |
| 368 if (current_.incremental_marking_steps > 0) { | 367 if (current_.incremental_marking_steps > 0) { |
| 369 Output(" (+ %.1f ms in %d steps since last GC)", | 368 Output(" (+ %.1f ms in %d steps since last GC)", |
| 370 current_.incremental_marking_duration, | 369 current_.incremental_marking_duration, |
| 371 current_.incremental_marking_steps); | 370 current_.incremental_marking_steps); |
| 372 } | 371 } |
| 373 } else { | 372 } else { |
| 374 if (current_.incremental_marking_steps > 0) { | 373 if (current_.incremental_marking_steps > 0) { |
| 375 Output( | 374 Output( |
| 376 " (+ %.1f ms in %d steps since start of marking, " | 375 " (+ %.1f ms in %d steps since start of marking, " |
| (...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 722 | 721 |
| 723 | 722 |
| 724 bool GCTracer::SurvivalEventsRecorded() const { | 723 bool GCTracer::SurvivalEventsRecorded() const { |
| 725 return survival_events_.size() > 0; | 724 return survival_events_.size() > 0; |
| 726 } | 725 } |
| 727 | 726 |
| 728 | 727 |
| 729 void GCTracer::ResetSurvivalEvents() { survival_events_.reset(); } | 728 void GCTracer::ResetSurvivalEvents() { survival_events_.reset(); } |
| 730 } // namespace internal | 729 } // namespace internal |
| 731 } // namespace v8 | 730 } // namespace v8 |
| OLD | NEW |