diff options
author | ernstm@chromium.org <ernstm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-26 16:38:50 +0000 |
---|---|---|
committer | ernstm@chromium.org <ernstm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-26 16:38:50 +0000 |
commit | 41abb6d9f69fd6e3da44b555107252d709f32105 (patch) | |
tree | ab9446dcf84e1370b8bd4f55f731543292959913 /cc/debug/rendering_stats.cc | |
parent | 77ef3b22da2f5e19e69ee46e0dc2d88e66f44786 (diff) | |
download | chromium_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.cc | 9 |
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; |