summaryrefslogtreecommitdiffstats
path: root/cc/debug/rendering_stats.cc
diff options
context:
space:
mode:
authorernstm@chromium.org <ernstm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-26 16:38:50 +0000
committerernstm@chromium.org <ernstm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-26 16:38:50 +0000
commit41abb6d9f69fd6e3da44b555107252d709f32105 (patch)
treeab9446dcf84e1370b8bd4f55f731543292959913 /cc/debug/rendering_stats.cc
parent77ef3b22da2f5e19e69ee46e0dc2d88e66f44786 (diff)
downloadchromium_src-41abb6d9f69fd6e3da44b555107252d709f32105.zip
chromium_src-41abb6d9f69fd6e3da44b555107252d709f32105.tar.gz
chromium_src-41abb6d9f69fd6e3da44b555107252d709f32105.tar.bz2
Improved measurement of rasterize time and pixels rasterized.
- Reporting minimum rasterize time out of multiple runs excludes time when the raster thread is de-scheduled and it excludes cache effects. In order for this to work reliably, slow-down-raster-scale-factor needs to be set to a large value (e.g. 100). - Fixed computation of number of pixels rasterized to use the intersection of content_clip and canvas_rect, instead of content_clip. - The improved measurements are designed for a new rasterize and paint benchmark that will be committed in a spearate CL. - Separated paint time (direct rasterization without prior recording to an SkPicture) from record time BUG=226489 Review URL: https://chromiumcodereview.appspot.com/13933035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196751 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/debug/rendering_stats.cc')
-rw-r--r--cc/debug/rendering_stats.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/cc/debug/rendering_stats.cc b/cc/debug/rendering_stats.cc
index 6b43169..480aa88 100644
--- a/cc/debug/rendering_stats.cc
+++ b/cc/debug/rendering_stats.cc
@@ -12,6 +12,7 @@ RenderingStats::RenderingStats()
dropped_frame_count(0),
total_commit_count(0),
total_pixels_painted(0),
+ total_pixels_recorded(0),
total_pixels_rasterized(0),
num_impl_thread_scrolls(0),
num_main_thread_scrolls(0),
@@ -27,6 +28,8 @@ void RenderingStats::EnumerateFields(Enumerator* enumerator) const {
enumerator->AddInt64("droppedFrameCount", dropped_frame_count);
enumerator->AddDouble("totalPaintTimeInSeconds",
total_paint_time.InSecondsF());
+ enumerator->AddDouble("totalRecordTimeInSeconds",
+ total_record_time.InSecondsF());
enumerator->AddDouble("totalRasterizeTimeInSeconds",
total_rasterize_time.InSecondsF());
enumerator->AddDouble(
@@ -34,8 +37,11 @@ void RenderingStats::EnumerateFields(Enumerator* enumerator) const {
total_rasterize_time_for_now_bins_on_pending_tree.InSecondsF());
enumerator->AddDouble("totalCommitTimeInSeconds",
total_commit_time.InSecondsF());
+ enumerator->AddDouble("bestRasterizeTimeInSeconds",
+ best_rasterize_time.InSecondsF());
enumerator->AddInt64("totalCommitCount", total_commit_count);
enumerator->AddInt64("totalPixelsPainted", total_pixels_painted);
+ enumerator->AddInt64("totalPixelsRecorded", total_pixels_recorded);
enumerator->AddInt64("totalPixelsRasterized", total_pixels_rasterized);
enumerator->AddInt64("numImplThreadScrolls", num_impl_thread_scrolls);
enumerator->AddInt64("numMainThreadScrolls", num_main_thread_scrolls);
@@ -58,12 +64,15 @@ void RenderingStats::Add(const RenderingStats& other) {
screen_frame_count += other.screen_frame_count;
dropped_frame_count += other.dropped_frame_count;
total_paint_time += other.total_paint_time;
+ total_record_time += other.total_record_time;
total_rasterize_time += other.total_rasterize_time;
total_rasterize_time_for_now_bins_on_pending_tree +=
other.total_rasterize_time_for_now_bins_on_pending_tree;
total_commit_time += other.total_commit_time;
+ best_rasterize_time += other.best_rasterize_time;
total_commit_count += other.total_commit_count;
total_pixels_painted += other.total_pixels_painted;
+ total_pixels_recorded += other.total_pixels_recorded;
total_pixels_rasterized += other.total_pixels_rasterized;
num_impl_thread_scrolls += other.num_impl_thread_scrolls;
num_main_thread_scrolls += other.num_main_thread_scrolls;