Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index be46fd8b8128c5eb43ff8e6d8c75d1861c037bce..88adc3b98f75ef3f5d1563fd61fca9c058fb8d6b 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -3953,6 +3953,68 @@ void RenderFrameImpl::didFinishLoad(blink::WebLocalFrame* frame) { |
WebDataSource* ds = frame->dataSource(); |
Send(new FrameHostMsg_DidFinishLoad(routing_id_, ds->getRequest().url())); |
+ |
+ { |
+ RenderThreadImpl::RendererMemoryMetrics memory_metrics; |
+ RenderThreadImpl::current()->GetRendererMemoryMetrics(&memory_metrics); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.PartitionAllocMB_DidFinishLoad", |
+ memory_metrics.partition_alloc_kb / 1024); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.BlinkGCMB_DidFinishLoad", |
+ memory_metrics.blink_gc_kb / 1024); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.MallocMB_DidFinishLoad", |
+ memory_metrics.malloc_mb); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.DiscardableMB_DidFinishLoad", |
+ memory_metrics.discardable_kb / 1024); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.V8MainThreadIsolateMB_DidFinishLoad", |
+ memory_metrics.v8_main_thread_isolate_mb); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.TotalAllocatedMB_DidFinishLoad", |
+ memory_metrics.total_allocated_mb); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.NonDiscardableTotalAllocatedMB_" |
+ "DidFinishLoad", |
+ memory_metrics.non_discardable_total_allocated_mb); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.TotalAllocatedPerRenderViewMB_" |
+ "DidFinishLoad", |
+ memory_metrics.total_allocated_per_render_view_mb); |
+ if (IsMainFrame()) { |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.PartitionAllocMB_" |
+ "MainFrameDidFinishLoad", |
+ memory_metrics.partition_alloc_kb / 1024); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.BlinkGCMB_MainFrameDidFinishLoad", |
+ memory_metrics.blink_gc_kb / 1024); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.MallocMB_MainFrameDidFinishLoad", |
+ memory_metrics.malloc_mb); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.DiscardableMB_MainFrameDidFinishLoad", |
+ memory_metrics.discardable_kb / 1024); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.V8MainThreadIsolateMB_" |
+ "MainFrameDidFinishLoad", |
+ memory_metrics.v8_main_thread_isolate_mb); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.TotalAllocatedMB_" |
+ "MainFrameDidFinishLoad", |
+ memory_metrics.total_allocated_mb); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.NonDiscardableTotalAllocatedMB_" |
+ "MainFrameDidFinishLoad", |
+ memory_metrics.non_discardable_total_allocated_mb); |
+ UMA_HISTOGRAM_MEMORY_MB( |
+ "Memory.Experimental.Renderer.TotalAllocatedPerRenderViewMB_" |
+ "MainFrameDidFinishLoad", |
+ memory_metrics.total_allocated_per_render_view_mb); |
+ } |
+ } |
} |
void RenderFrameImpl::didNavigateWithinPage( |