Revision: 22040
Author: [email protected]
Date: Thu Jun 26 12:56:14 2014 UTC
Log: Added more detailed sweeping timing counters.
BUG=
[email protected]
Review URL: https://codereview.chromium.org/331053003
http://code.google.com/p/v8/source/detail?r=22040
Modified:
/branches/bleeding_edge/src/heap.cc
/branches/bleeding_edge/src/heap.h
/branches/bleeding_edge/src/mark-compact.cc
=======================================
--- /branches/bleeding_edge/src/heap.cc Wed Jun 25 15:29:58 2014 UTC
+++ /branches/bleeding_edge/src/heap.cc Thu Jun 26 12:56:14 2014 UTC
@@ -6121,6 +6121,9 @@
PrintF("sweep=%.2f ", scopes_[Scope::MC_SWEEP]);
PrintF("sweepns=%.2f ", scopes_[Scope::MC_SWEEP_NEWSPACE]);
PrintF("sweepos=%.2f ", scopes_[Scope::MC_SWEEP_OLDSPACE]);
+ PrintF("sweepcode=%.2f ", scopes_[Scope::MC_SWEEP_CODE]);
+ PrintF("sweepcell=%.2f ", scopes_[Scope::MC_SWEEP_CELL]);
+ PrintF("sweepmap=%.2f ", scopes_[Scope::MC_SWEEP_MAP]);
PrintF("evacuate=%.1f ", scopes_[Scope::MC_EVACUATE_PAGES]);
PrintF("new_new=%.1f ", scopes_[Scope::MC_UPDATE_NEW_TO_NEW_POINTERS]);
PrintF("root_new=%.1f ",
scopes_[Scope::MC_UPDATE_ROOT_TO_NEW_POINTERS]);
=======================================
--- /branches/bleeding_edge/src/heap.h Wed Jun 25 09:36:45 2014 UTC
+++ /branches/bleeding_edge/src/heap.h Thu Jun 26 12:56:14 2014 UTC
@@ -2507,6 +2507,9 @@
MC_SWEEP,
MC_SWEEP_NEWSPACE,
MC_SWEEP_OLDSPACE,
+ MC_SWEEP_CODE,
+ MC_SWEEP_CELL,
+ MC_SWEEP_MAP,
MC_EVACUATE_PAGES,
MC_UPDATE_NEW_TO_NEW_POINTERS,
MC_UPDATE_ROOT_TO_NEW_POINTERS,
=======================================
--- /branches/bleeding_edge/src/mark-compact.cc Tue Jun 24 14:30:22 2014 UTC
+++ /branches/bleeding_edge/src/mark-compact.cc Thu Jun 26 12:56:14 2014 UTC
@@ -4224,17 +4224,24 @@
}
}
RemoveDeadInvalidatedCode();
- SweepSpace(heap()->code_space(), PRECISE);
- SweepSpace(heap()->cell_space(), PRECISE);
- SweepSpace(heap()->property_cell_space(), PRECISE);
+ { GCTracer::Scope sweep_scope(tracer_, GCTracer::Scope::MC_SWEEP_CODE);
+ SweepSpace(heap()->code_space(), PRECISE);
+ }
+
+ { GCTracer::Scope sweep_scope(tracer_, GCTracer::Scope::MC_SWEEP_CELL);
+ SweepSpace(heap()->cell_space(), PRECISE);
+ SweepSpace(heap()->property_cell_space(), PRECISE);
+ }
EvacuateNewSpaceAndCandidates();
// ClearNonLiveTransitions depends on precise sweeping of map space to
// detect whether unmarked map became dead in this collection or in one
// of the previous ones.
- SweepSpace(heap()->map_space(), PRECISE);
+ { GCTracer::Scope sweep_scope(tracer_, GCTracer::Scope::MC_SWEEP_MAP);
+ SweepSpace(heap()->map_space(), PRECISE);
+ }
// Deallocate unmarked objects and clear marked bits for marked objects.
heap_->lo_space()->FreeUnmarkedObjects();
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.