Commit 97414238 authored by tburkard@chromium.org's avatar tburkard@chromium.org

Histogram first paint PLT's for Cache Sensitivity Analysis.

R=rvargas@chromium.org, jhawkins@chromium.org
Review URL: https://codereview.chromium.org/11419319

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171091 0039d316-1c4b-4281-b951-d872f2087c98
parent c5a1877d
...@@ -244,14 +244,19 @@ void PageLoadHistograms::Dump(WebFrame* frame) { ...@@ -244,14 +244,19 @@ void PageLoadHistograms::Dump(WebFrame* frame) {
PLT_HISTOGRAM("PLT.RequestToFinish", finish_all_loads - request); PLT_HISTOGRAM("PLT.RequestToFinish", finish_all_loads - request);
} }
PLT_HISTOGRAM("PLT.CommitToFinish", finish_all_loads - commit); PLT_HISTOGRAM("PLT.CommitToFinish", finish_all_loads - commit);
scoped_ptr<TimeDelta> begin_to_first_paint;
scoped_ptr<TimeDelta> commit_to_first_paint;
if (!first_paint.is_null()) { if (!first_paint.is_null()) {
// 'first_paint' can be before 'begin' for an unknown reason. // 'first_paint' can be before 'begin' for an unknown reason.
// See bug http://crbug.com/125273 for details. // See bug http://crbug.com/125273 for details.
if (begin <= first_paint) { if (begin <= first_paint) {
PLT_HISTOGRAM("PLT.BeginToFirstPaint", first_paint - begin); begin_to_first_paint.reset(new TimeDelta(first_paint - begin));
PLT_HISTOGRAM("PLT.BeginToFirstPaint", *begin_to_first_paint);
} }
DCHECK(commit <= first_paint); DCHECK(commit <= first_paint);
PLT_HISTOGRAM("PLT.CommitToFirstPaint", first_paint - commit); commit_to_first_paint.reset(new TimeDelta(first_paint - commit));
PLT_HISTOGRAM("PLT.CommitToFirstPaint", *commit_to_first_paint);
} }
if (!first_paint_after_load.is_null()) { if (!first_paint_after_load.is_null()) {
// 'first_paint_after_load' can be before 'begin' for an unknown reason. // 'first_paint_after_load' can be before 'begin' for an unknown reason.
...@@ -809,6 +814,16 @@ void PageLoadHistograms::Dump(WebFrame* frame) { ...@@ -809,6 +814,16 @@ void PageLoadHistograms::Dump(WebFrame* frame) {
PLT_HISTOGRAM(base::FieldTrial::MakeName( PLT_HISTOGRAM(base::FieldTrial::MakeName(
"PLT.BeginToFinish_CacheSensitivity", "CacheSensitivityAnalysis"), "PLT.BeginToFinish_CacheSensitivity", "CacheSensitivityAnalysis"),
begin_to_finish_all_loads); begin_to_finish_all_loads);
if (begin_to_first_paint.get()) {
PLT_HISTOGRAM(base::FieldTrial::MakeName(
"PLT.BeginToFirstPaint_CacheSensitivity", "CacheSensitivityAnalysis"),
*begin_to_first_paint);
}
if (commit_to_first_paint.get()) {
PLT_HISTOGRAM(base::FieldTrial::MakeName(
"PLT.CommitToFirstPaint_CacheSensitivity", "CacheSensitivityAnalysis"),
*commit_to_first_paint);
}
} }
// Since there are currently no guarantees that renderer histograms will be // Since there are currently no guarantees that renderer histograms will be
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment