aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* removing GrDrawEffectGravatar joshualitt2014-09-16
| | | | | | | | | BUG=skia: R=bsalomon@google.com Author: joshualitt@chromium.org Review URL: https://codereview.chromium.org/571163002
* Attach GrOptDrawState into shader building pipelineGravatar egdaniel2014-09-16
| | | | | | | | | | | | | | The OptDrawState is now used for creating the actual gl shader. Current optimizations dones in GrOptDrawState include: All blend optimizations Constant color/coverage stage optimizations BUG=skia: R=bsalomon@google.com, joshualitt@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/504203004
* Always disable the scissor test before BlitFrameBufferGravatar derekf2014-09-16
| | | | | | | | | | | | | | It seems most (all?) implementations of BlitFrameBuffer actually obey the scissor test, so just always disable the scissor before calling BlitFrameBuffer. Original Author: Henry Song <henrysong@samsung.com> R=bsalomon@google.com, hcm@google.com Author: derekf@osg.samsung.com Review URL: https://codereview.chromium.org/574543002
* Fix incorrect Rec601 YUV conversion matrix coefficient.Gravatar rileya2014-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For future reference, the rec 601 matrix can be defined by the concatenation of these 2 matrices: [1.164 0.0 1.596 0.0] [1.164 -0.391 -0.813 0.0] [1.164 2.018 0.0 0.0] [1.164 0.0 0.0 1.0] See: http://www.fourcc.org/fccyvrgb.php and [1.0 0.0 0.0 -0.0625] [0.0 1.0 0.0 -0.5 ] [0.0 0.0 1.0 -0.5 ] [0.0 0.0 0.0 1.0 ] Which transforms Y by -0.0625 (-16/256) and U and V by -0.5 (-128/256) each. Giving us the final matrix: [1.164 0.0 1.596 -0.87075] [1.164 -0.391 -0.813 0.52925] [1.164 2.018 0.0 -1.08175] [0.0 0.0 0.0 1.0 ] Which produces our output [R,G,B,A], when multiplied with an input [Y,U,V,A]. R=bsalomon@google.com Author: rileya@chromium.org Review URL: https://codereview.chromium.org/545983006
* Fix scaling issue with distance field text.Gravatar jvanverth2014-09-16
| | | | | | | | | | | | | Picks the correct distance field size based on both the text size and the max matrix scale. Adjusts the matrix scale if non-unity. Also adds GM for verifying proper distance field scaling. BUG=skia:2928 R=bsalomon@google.com, joshualitt@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/568843002
* Picture Recording: fix the performance bottleneck in ↵Gravatar yunchao.he2014-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SkDeferredCanvas::isFullFrame blink skips all pending commands during picture recording if it is drawing an opaque full-frame geometry or image. This may improve performance for some edge cases. To recognize an opaque full-frame drawing should be cheap enough. Otherwise, the overhead will offset the improvement. Unfortunately, data from perf for content_shell on Nexus7 shows that SkDeferredCanvas::isFullFrame is far from cheap. Table below shows that how much isFullFrame() costs in the whole render process. benchmark percentage my local benchmark(draw 1000 sprites) 4.1% speedReading 2.8% FishIETank(1000 fishes) 1.5% GUIMark3 Bitmap 2.0% By contrast, real recording (SkGPipeCanvas::drawBitmapRectToRect) and real rasterization (GrDrawTarget::drawRect) cost ~4% and ~6% in the whole render process respectively. Apparently, SkDeferredCanvas::isFullFrame() is nontrivial. getDeviceSize() is the main contributor to this hotspot. The change simply save the canvasSize and reuse it among drawings if it is not a fresh frame. This change cut off ~65% (or improved ~2 times) of isFullFrame(). telemetry smoothness canvas_tough_test didn't show obvious improvement or regression. BUG=411166 Committed: https://skia.googlesource.com/skia/+/8e45c3777d886ba3fe239bb549d06b0693692152 R=junov@chromium.org, tomhudson@google.com, reed@google.com Author: yunchao.he@intel.com Review URL: https://codereview.chromium.org/545813002
* Update SKP version to 103Gravatar borenet2014-09-15
| | | | | | | | | | Automatic commit by the RecreateSKPs bot. TBR= Author: borenet@google.com Review URL: https://codereview.chromium.org/571293002
* Fix leak in PictureNestingBenchGravatar fmalita2014-09-15
| | | | | | | | | R=mtklein@google.com TBR=mtklein@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/569313004
* Nested picture nanobenchGravatar fmalita2014-09-15
| | | | | | | | | | Measure picture overhead for recording & playback using a Sierpinski fractal (http://skfiddle.com/c/a2b6e60d775543b7c29a5d45d0371c02) with various picture nesting levels. R=mtklein@google.com, reed@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/566393002
* SkRecord: clean up comments and 4 bytes per SkRecord.Gravatar mtklein2014-09-15
| | | | | | | | | | | | | | | Just happened to notice these while skimming through. The comments are a little out of date; now that we have visit/mutate, we do need O(1) random access. The constructor arguments are flexibility we're not using. BUG=skia: R=fmalita@google.com Author: mtklein@skia.org Review URL: https://codereview.chromium.org/569373002
* add lua to histogram text lengthsGravatar reed2014-09-15
| | | | | | | | | NOTRY=True R=bungeman@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/574493002
* SkPicture::PathCounter is O(N^2) for pictures nested N deep. Fix that.Gravatar mtklein2014-09-15
| | | | | | | | | | | We've already done the analysis for child pictures. Don't do it again. BUG=skia: R=fmalita@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/573833002
* BUG=skia:Gravatar joshualitt2014-09-15
| | | | | | | | R=bsalomon@google.com, egdaniel@google.com, jvanverth@google.com, robertphillips@google.com Author: joshualitt@chromium.org Review URL: https://codereview.chromium.org/543623004
* Change SkResourceCache to take a Visitor inside its find().Gravatar reed2014-09-15
| | | | | | | | | | | This reverts commit 595aa05efcb504e85358b8d328ac4a9fa1c46e2e. BUG=skia: R=mtklein@google.com, danakj@chromium.org Author: reed@google.com Review URL: https://codereview.chromium.org/569353002
* Fix recording of saveLayout with unusual Xfermodes.Gravatar dneto2014-09-15
| | | | | | | | | | | | This is the root cause of a Chrome rendering bug when it tiles layers with masks. BUG=skia:1291,chromium:401593 R=reed@google.com, mtklein@google.com, junov@chromium.org Author: dneto@chromium.org Review URL: https://codereview.chromium.org/568073004
* Revert of Change SkResourceCache to take a Visitor inside its find(). ↵Gravatar reed2014-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #2 id:20001 of https://codereview.chromium.org/567393002/) Reason for revert: crashes on android bots, haven't diagnosed yet Original issue's description: > Change SkResourceCache to take a Visitor inside its find(). > > This simplifies the API/contract, in that there are not any exposed > lock/unlock scopes. > > > patch from issue 572573002 > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/dee6a8e67db39fcbde2b3bb09be1d088ebb9db8a R=mtklein@google.com, danakj@chromium.org TBR=danakj@chromium.org, mtklein@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: reed@google.com Review URL: https://codereview.chromium.org/569303002
* Add flag to call SkRecordOptimize on new pictures.Gravatar mtklein2014-09-15
| | | | | | | | | | | As usual it's enabled by default in the Skia tree. Will flip in Chrome after this rolls. BUG=skia: R=robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/573773002
* add dumpHex() option to SkPathGravatar caryclark2014-09-15
| | | | | | | | | | | | | This provides exact precision to help debugging when the float representation of a SkScalar may introduce error. R=reed@google.com Author: caryclark@google.com Review URL: https://codereview.chromium.org/571973003
* Rebaseline hittestpath and ignore flaky failure on TARUADGravatar Mike Klein2014-09-15
| | | | | | BUG=skia:2937 Review URL: https://codereview.chromium.org/571963002
* Create an optimized draw state but not hooked in yet to gpu pipelineGravatar egdaniel2014-09-15
| | | | | | | | | BUG=skia: R=bsalomon@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/508663002
* Change SkResourceCache to take a Visitor inside its find().Gravatar reed2014-09-15
| | | | | | | | | | | | | | This simplifies the API/contract, in that there are not any exposed lock/unlock scopes. patch from issue 572573002 BUG=skia: R=mtklein@google.com, danakj@chromium.org Author: reed@google.com Review URL: https://codereview.chromium.org/567393002
* Revert of Picture Recording: fix the performance bottleneck in ↵Gravatar mtklein2014-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SkDeferredCanvas::isFullFrame (patchset #7 id:140001 of https://codereview.chromium.org/545813002/) Reason for revert: This is leaking memory: http://108.170.220.120:10117/builders/Test-Ubuntu13.10-GCE-NoGPU-x86_64-Debug-ASAN/builds/2516/steps/RunDM/logs/stdio Original issue's description: > Picture Recording: fix the performance bottleneck in SkDeferredCanvas::isFullFrame > > blink skips all pending commands during picture recording if it is drawing an opaque full-frame > geometry or image. This may improve performance for some edge cases. To recognize an opaque > full-frame drawing should be cheap enough. Otherwise, the overhead will offset the improvement. > Unfortunately, data from perf for content_shell on Nexus7 shows that SkDeferredCanvas::isFullFrame > is far from cheap. Table below shows that how much isFullFrame() costs in the whole render process. > > benchmark percentage > my local benchmark(draw 1000 sprites) 4.1% > speedReading 2.8% > FishIETank(1000 fishes) 1.5% > GUIMark3 Bitmap 2.0% > > By contrast, real recording (SkGPipeCanvas::drawBitmapRectToRect) and real rasterization > (GrDrawTarget::drawRect) cost ~4% and ~6% in the whole render process respectively. Apparently, > SkDeferredCanvas::isFullFrame() is nontrivial. > > getDeviceSize() is the main contributor to this hotspot. The change simply save the canvasSize and > reuse it among drawings if it is not a fresh frame. This change cut off ~65% (or improved ~2 times) > of isFullFrame(). > > telemetry smoothness canvas_tough_test didn't show obvious improvement or regression. > > BUG=411166 > > Committed: https://skia.googlesource.com/skia/+/8e45c3777d886ba3fe239bb549d06b0693692152 R=junov@chromium.org, tomhudson@google.com, reed@google.com, yunchao.he@intel.com TBR=junov@chromium.org, reed@google.com, tomhudson@google.com, yunchao.he@intel.com NOTREECHECKS=true NOTRY=true BUG=411166 Author: mtklein@google.com Review URL: https://codereview.chromium.org/571053002
* remove 'experimental' from using hash tables in resourcecacheGravatar reed2014-09-14
| | | | | | | | TBR= Author: reed@chromium.org Review URL: https://codereview.chromium.org/567303002
* Picture Recording: fix the performance bottleneck in ↵Gravatar yunchao.he2014-09-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SkDeferredCanvas::isFullFrame blink skips all pending commands during picture recording if it is drawing an opaque full-frame geometry or image. This may improve performance for some edge cases. To recognize an opaque full-frame drawing should be cheap enough. Otherwise, the overhead will offset the improvement. Unfortunately, data from perf for content_shell on Nexus7 shows that SkDeferredCanvas::isFullFrame is far from cheap. Table below shows that how much isFullFrame() costs in the whole render process. benchmark percentage my local benchmark(draw 1000 sprites) 4.1% speedReading 2.8% FishIETank(1000 fishes) 1.5% GUIMark3 Bitmap 2.0% By contrast, real recording (SkGPipeCanvas::drawBitmapRectToRect) and real rasterization (GrDrawTarget::drawRect) cost ~4% and ~6% in the whole render process respectively. Apparently, SkDeferredCanvas::isFullFrame() is nontrivial. getDeviceSize() is the main contributor to this hotspot. The change simply save the canvasSize and reuse it among drawings if it is not a fresh frame. This change cut off ~65% (or improved ~2 times) of isFullFrame(). telemetry smoothness canvas_tough_test didn't show obvious improvement or regression. BUG=411166 R=junov@chromium.org, tomhudson@google.com, reed@google.com Author: yunchao.he@intel.com Review URL: https://codereview.chromium.org/545813002
* Add support for the Rec601 YUV color space to GrYUVtoRGBEffect.Gravatar rileya2014-09-12
| | | | | | | | R=bsalomon@google.com, senorblanco@chromium.org, sugoi@chromium.org, reed@google.com Author: rileya@chromium.org Review URL: https://codereview.chromium.org/516463005
* Revert of Add a test that uses C++11 features as a compiler canary. ↵Gravatar mtklein2014-09-12
| | | | | | | | | | | | | | | | | | | | | | | | (patchset #2 id:20001 of https://codereview.chromium.org/568913002/) Reason for revert: nope, nacl and ubuntu local bots (at least) broken Original issue's description: > Add a test that uses C++11 features as a compiler canary. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/86e01df8d1d8848044c3fcc31c1a2008b70fe08c R=bungeman@google.com, mtklein@chromium.org TBR=bungeman@google.com, mtklein@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/565213008
* Add a test that uses C++11 features as a compiler canary.Gravatar mtklein2014-09-12
| | | | | | | | | BUG=skia: R=bungeman@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/568913002
* Do not expect a copysign function to be defined in <cmath> with clang-clGravatar ehsan.akhgari2014-09-12
| | | | | | | | | | | | clang-cl defines __cplusplus to 201103L, but it uses the runtime library provided by MSVC, so the copysign function will not be available there. BUG=skia: R=reed@google.com Author: ehsan.akhgari@gmail.com Review URL: https://codereview.chromium.org/526813002
* Handle NULL typeface in SkFontMgr_fontconfig::onMatchFaceStyle.Gravatar bungeman2014-09-12
| | | | | | | | | | SampleApp does this, and it needs to be handled properly. R=mtklein@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/563263003
* use SkData::NewUninitializedGravatar reed2014-09-12
| | | | | | | | | BUG=skia: R=bungeman@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/565803005
* Add *@skia.org to AUTHORS so we can land CLs using those addresses if we like.Gravatar mtklein2014-09-12
| | | | | | | | | BUG=skia: R=hcm@google.com, reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/565293002
* Let SkTaskGroup work synchronously if no one created an SkTaskGroup::Enabler.Gravatar mtklein2014-09-12
| | | | | | | | | | | Tested by running DM with its SkTaskGroup::Enabler commented out. Slow, but completed correctly. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/556223003
* Add more debugging for newly failing assert (DM on Xoom bots).Gravatar Mike Klein2014-09-12
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/568823002
* remove confusing/unused stream methodsGravatar reed2014-09-12
| | | | | | | | | BUG=skia: R=bungeman@google.com, djsollen@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/563273003
* Update SKP version to 99Gravatar borenet2014-09-11
| | | | | | | | | | Automatic commit by the RecreateSKPs bot. TBR= Author: borenet@google.com Review URL: https://codereview.chromium.org/571443002
* Clear away any lingering error before testing SkError.Gravatar mtklein2014-09-11
| | | | | | | | | | | | Looks like something's setting an error before ErrorTest runs on our new Venue8 bots. BUG=skia: R=humper@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/551973004
* Add --matrix to DM, to play around with and maybe use on a bot.Gravatar mtklein2014-09-11
| | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/563723005
* add PurgeResourceCache to track leaksGravatar reed2014-09-11
| | | | | | | | TBR=halcananry Author: reed@google.com Review URL: https://codereview.chromium.org/554263005
* Disable discardable memory for the resource cache until tests pass.Gravatar danakj2014-09-11
| | | | | | | | | BUG=skia:2926 R=reed@google.com Author: danakj@chromium.org Review URL: https://codereview.chromium.org/568493002
* Make SkBitmapCache remove invalid bitmaps from the SkResourceCache.Gravatar danakj2014-09-11
| | | | | | | | | | | | | | | | | | | | | | This adds SkResourceCache::Remove() which will remove a resource from its cache. The resource is required to be unlocked at the time Remove() is called. Then SkBitmapCache::Find() makes use of this to Remove() bitmaps from the cache whose pixels have been evicted. This allows the bitmap to be re-added to the cache with pixels again. After this change, background a tab (and discarding all the bitmaps' contents) no longer disables image caching for those discarded images once the tab is visible again. BUG=skia:2926 NOTRY=true R=reed@android.com, tomhudson@google.com, reed@google.com Author: danakj@chromium.org Review URL: https://codereview.chromium.org/561953002
* SkData can allocate room for its contents in the same blockGravatar reed2014-09-11
| | | | | | | | | BUG=skia: R=bungeman@google.com, mtklein@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/560653004
* Assert SkTDArray::pop() doesn't underflow.Gravatar mtklein2014-09-11
| | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/563633003
* Update SKP version to 98Gravatar borenet2014-09-10
| | | | | | | | | | Automatic commit by the RecreateSKPs bot. TBR= Author: borenet@google.com Review URL: https://codereview.chromium.org/559283002
* Delay any SkRecordOptimize until after SkRecord has stuck.Gravatar mtklein2014-09-10
| | | | | | | | | BUG=skia: R=robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/561993002
* Fix a bug in Save-Restore no-op optimization.Gravatar mtklein2014-09-10
| | | | | | | | | | | | | | | | | | | | | | | We optimize Save SaveLayer Restore Restore into NoOp NoOp NoOp Restore I'm considering skipping the call to SkRecordOptimize again just to eliminate this extra variable from landing SkRecord. Thoughts? BUG=skia: R=robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/560163002
* Remove a layer of indirection and code from SkFontHost.Gravatar bungeman2014-09-10
| | | | | | | | R=mtklein@google.com, tomhudson@google.com, djsollen@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/105223006
* Revert of Added test for non cached ETC1 (patchset #2 id:20001 of ↵Gravatar bungeman2014-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/564493002/) Reason for revert: This is causing dm and gm to crash on the Win8 7770 bots, for example http://108.170.220.120:10117/builders/Test-Win8-ShuttleA-HD7770-x86-Debug/builds/2128 An example stack trace looks like [13:46:16.260000] -1M drawing... extractbitmap [600 600] [13:46:16.760000] -1M drawing... etc1bitmap_npot [124 124] [13:46:16.760000] -1M drawing... etc1bitmap_r11.ktx [128 128] [13:46:16.760000] -1M drawing... etc1bitmap_ktx [128 128] [13:46:16.760000] -1M drawing... etc1bitmap_pkm_volatile [128 128] [13:46:16.760000] [13:46:16.760000] Caught exception 3221225477 EXCEPTION_ACCESS_VIOLATION [13:46:16.760000] sk_gr_allocate_texture +c9 [13:46:16.760000] load_etc1_texture +1dd [13:46:16.760000] sk_gr_create_bitmap_texture +199 [13:46:16.760000] GrLockAndRefCachedBitmapTexture +ad [13:46:16.760000] SkGpuDevice::SkAutoCachedTexture::set +5d [13:46:16.760000] SkGpuDevice::SkAutoCachedTexture::SkAutoCachedTexture +65 [13:46:16.760000] SkGpuDevice::internalDrawBitmap +8e [13:46:16.760000] SkGpuDevice::drawBitmapCommon +608 [13:46:16.760000] SkGpuDevice::drawBitmap +79 [13:46:16.760000] SkCanvas::internalDrawBitmap +11b [13:46:16.760000] SkCanvas::drawBitmap +d3 [13:46:16.760000] skiagm::ETC1BitmapGM::onDraw +140 [13:46:16.760000] skiagm::GM::drawContent +3c [13:46:16.760000] skiagm::GM::draw +24 [13:46:16.760000] GMMain::invokeGM +63 [13:46:16.760000] GMMain::generate_image +186 [13:46:16.760000] GMMain::test_drawing +5b [13:46:16.760000] run_multiple_configs +2f9 [13:46:16.760000] tool_main +75d [13:46:16.760000] main +16 [13:46:16.760000] __tmainCRTStartup +199 [13:46:16.760000] mainCRTStartup +d [13:46:16.760000] BaseThreadInitThunk +e [13:46:16.760000] RtlInitializeExceptionChain +84 [13:46:16.760000] RtlInitializeExceptionChain +5a Original issue's description: > Added test for non cached ETC1 > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/d9ec549071581d9d1dc2e5fac3163305ae935a39 R=bsalomon@chromium.org, robertphillips@chromium.org, robertphillips@google.com, sugoi@chromium.org TBR=bsalomon@chromium.org, robertphillips@chromium.org, robertphillips@google.com, sugoi@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Author: bungeman@google.com Review URL: https://codereview.chromium.org/559093003
* Fixed void* to uint64_t cast on win64 in TraceID.Gravatar cjacek2014-09-10
| | | | | | | | | | | | On win64, long is 32-bit. Found by GCC (mingw-w64) build, where this causes an error. This is the Skia version of https://codereview.chromium.org/374043002 . R=bungeman@google.com, humper@google.com Author: cjacek@gmail.com Review URL: https://codereview.chromium.org/510923002
* Added test for non cached ETC1Gravatar sugoi2014-09-10
| | | | | | | | | BUG=skia: R=bsalomon@chromium.org, robertphillips@chromium.org, robertphillips@google.com Author: sugoi@chromium.org Review URL: https://codereview.chromium.org/564493002
* Measure picture recording speed in nanobench.Gravatar mtklein2014-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Today we measure SkPicture playback speed, but not the time it takes to record the SkPicture. This fixes that by reading SKPs from disk and re-recording them. On the console, recording shows up first as the nonrendering skp benches, followed later by the usual playback benches: maxrss loops min median mean max stddev samples config bench 51M 2 165µs 168µs 169µs 178µs 3% ▆▄▃█▂▄▁▂▁▁ nonrendering tabl_slashdot.skp 57M 1 9.72ms 9.77ms 9.79ms 9.97ms 1% █▂▂▅▃▂▁▄▂▁ nonrendering desk_pokemonwiki.skp 57M 32 2.92µs 2.96µs 3.03µs 3.46µs 6% ▅▁▁▁▁▁▁█▂▁ nonrendering desk_yahoosports.skp ... 147M 1 3.86ms 3.87ms 3.97ms 4.81ms 7% █▁▁▁▁▁▁▁▁▁ 8888 tabl_slashdot.skp_1 147M 1 4.54ms 4.56ms 4.55ms 4.56ms 0% █▅▇▅█▅▂▁▅▁ 565 tabl_slashdot.skp_1 147M 2 3.08ms 3.24ms 4.17ms 8.18ms 50% █▁▁█▁▁▁▁▁▁ gpu tabl_slashdot.skp_1 147M 1 1.61ms 1.62ms 1.69ms 2.33ms 13% █▁▁▁▁▁▁▁▁▁ 8888 desk_pokemonwiki.skp_1 147M 1 1.44ms 1.44ms 1.45ms 1.47ms 1% ▅▂█▂▂▅▁▁▂▁ 565 desk_pokemonwiki.skp_1 ... On skiaperf.com, they'll also be separated out from playback benches by bench_type. BUG=skia: R=reed@google.com, mtklein@google.com, jcgregorio@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/559153002