jvanverth [Wed, 26 Nov 2014 21:15:59 +0000 (13:15 -0800)]
Add float-to-half (binary16) conversion functions.
Based on code by Fabian Giesen at
https://fgiesen.wordpress.com/2012/03/28/half-to-float-done-quic/.
These will be needed for creating binary16 textures from floating point data.
BUG=skia:3103
Review URL: https://codereview.chromium.org/
760753003
danakj [Wed, 26 Nov 2014 20:41:06 +0000 (12:41 -0800)]
Make skia trace category disabled by default.
BUG=skia:3088
Review URL: https://codereview.chromium.org/
761773003
bsalomon [Wed, 26 Nov 2014 20:28:00 +0000 (12:28 -0800)]
some cleanup around GrGpu/GrDrawTarget copySurface
Committed: https://skia.googlesource.com/skia/+/
e9aa5dc4d5906788eaf691d7c69f1494928f401d
Review URL: https://codereview.chromium.org/
749903003
jvanverth [Wed, 26 Nov 2014 20:07:33 +0000 (12:07 -0800)]
Fix assert in GrMaskFormatBytesPerPixel.
BUG=skia:3174
Review URL: https://codereview.chromium.org/
762553006
bsalomon [Wed, 26 Nov 2014 18:20:45 +0000 (10:20 -0800)]
Revert of some cleanup around GrGpu/GrDrawTarget copySurface (patchset #3 id:40001 of https://codereview.chromium.org/
749903003/)
Reason for revert:
likely causing es rendering errors.
Original issue's description:
> some cleanup around GrGpu/GrDrawTarget copySurface
>
> Committed: https://skia.googlesource.com/skia/+/
e9aa5dc4d5906788eaf691d7c69f1494928f401d
TBR=joshualitt@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
763593002
reed [Wed, 26 Nov 2014 16:55:51 +0000 (08:55 -0800)]
add basic tests for save/restore counting
BUG=skia:
Review URL: https://codereview.chromium.org/
763503003
egdaniel [Wed, 26 Nov 2014 16:50:50 +0000 (08:50 -0800)]
Update effect key for descriptor to not record offsets.
BUG=skia:
Review URL: https://codereview.chromium.org/
760593005
reed [Wed, 26 Nov 2014 16:50:45 +0000 (08:50 -0800)]
rename SkDrawable to SkADrawable
BUG=skia:
Review URL: https://codereview.chromium.org/
764463002
reed [Wed, 26 Nov 2014 16:45:36 +0000 (08:45 -0800)]
add sample to exercising hittesting
patch from issue
752403002 at patchset 1 (http://crrev.com/
752403002#ps1)
BUG=skia:
Review URL: https://codereview.chromium.org/
760023002
bsalomon [Wed, 26 Nov 2014 16:45:30 +0000 (08:45 -0800)]
some cleanup around GrGpu/GrDrawTarget copySurface
Review URL: https://codereview.chromium.org/
749903003
bsalomon [Wed, 26 Nov 2014 14:06:02 +0000 (06:06 -0800)]
Fix early out in GrResourceCache2::purgeAsNeeded
BUG=chromium:436846
TBR=robertphillips@google.com
Review URL: https://codereview.chromium.org/
755193003
mtklein [Tue, 25 Nov 2014 22:57:26 +0000 (14:57 -0800)]
Revert of nanobench: lazily decode bitmaps in .skps. (patchset #1 id:1 of https://codereview.chromium.org/
743613005/)
Reason for revert:
Some bots crashing.
Original issue's description:
> nanobench: lazily decode bitmaps in .skps.
>
> This cuts down on tool overhead when running something like recording only,
> $ out/Release/nanobench --match skp --config nonrendering
> which doesn't usually ever need to decode the images.
>
> The actual measurements for recording don't change, as the decode is not in the timed section. It just skips irrelevant code, removing it from the profile and making the tool run faster.
>
> This does, however, make a significant difference for playback speed. Most skps draw faster with this patch, some slower. I don't really have a good intuition for what's going on here. There is a fixed clip acting as a viewport, so there are probably lots of images that don't ever need to be decoded. Ideas? Is this perhaps because we're now blitting from smaller, partially decoded source images?
>
> ~/skia (clean) $ compare clean.log lazy-decode-bitmaps.log
> tabl_slashdot.skp_1 2.76ms -> 4.33ms 1.57x
> tabl_slashdot.skp_1_mpd 2.79ms -> 4.07ms 1.46x
> tabl_sahadan.skp_1 3.41ms -> 4.87ms 1.43x
> tabl_googleblog.skp_1 1.52ms -> 2.05ms 1.35x
> tabl_techmeme.skp_1_mpd 1.14ms -> 1.51ms 1.32x
> tabl_transformice.skp_1 2.61ms -> 3.43ms 1.31x
> tabl_sahadan.skp_1_mpd 3.54ms -> 4.48ms 1.26x
> tabl_techmeme.skp_1 1.01ms -> 1.27ms 1.26x
> tabl_nytimes.skp_1_mpd 1ms -> 1.23ms 1.23x
> tabl_worldjournal.skp_1_mpd 1.98ms -> 2.43ms 1.23x
> tabl_pravda.skp_1_mpd 2.05ms -> 2.51ms 1.22x
> tabl_transformice.skp_1_mpd 2.75ms -> 3.19ms 1.16x
> tabl_nytimes.skp_1 874us -> 1.01ms 1.15x
> tabl_pravda.skp_1 1.83ms -> 1.99ms 1.09x
> tabl_worldjournal.skp_1 1.76ms -> 1.91ms 1.09x
> desk_wowwiki.skp_1_mpd 3.7ms -> 3.9ms 1.05x
> tabl_digg.skp_1 3.99ms -> 4.16ms 1.04x
> tabl_ukwsj.skp_1_mpd 3ms -> 3.12ms 1.04x
> desk_booking.skp_1 3.74ms -> 3.81ms 1.02x
> desk_googlespreadsheetdashed.skp_1 10.6ms -> 10.6ms 1x
> tabl_ukwsj.skp_1 2.88ms -> 2.89ms 1x
> desk_googlespreadsheetdashed.skp_1_mpd 11.8ms -> 11.8ms 1x
> desk_jsfiddlehumperclip.skp_1_mpd 891us -> 888us 1x
> desk_googlespreadsheet.skp_1 4.65ms -> 4.62ms 0.99x
> tabl_gspro.skp_1_mpd 1.97ms -> 1.94ms 0.99x
> desk_booking.skp_1_mpd 4.1ms -> 4ms 0.98x
> desk_carsvg.skp_1 18.2ms -> 17.7ms 0.97x
> desk_gmailthread.skp_1_mpd 2.81ms -> 2.73ms 0.97x
> desk_tigersvg.skp_1_mpd 19.5ms -> 18.9ms 0.97x
> desk_mapsvg.skp_1 88.4ms -> 85.6ms 0.97x
> tabl_cnet.skp_1_mpd 1.43ms -> 1.38ms 0.97x
> desk_jsfiddlebigcar.skp_1 1.26ms -> 1.22ms 0.96x
> desk_gws.skp_1 1.87ms -> 1.8ms 0.96x
> desk_linkedin.skp_1 2.07ms -> 1.98ms 0.96x
> tabl_deviantart.skp_1_mpd 118ms -> 113ms 0.96x
> tabl_cnet.skp_1 1.2ms -> 1.14ms 0.95x
> tabl_androidpolice.skp_1_mpd 5.95ms -> 5.63ms 0.95x
> desk_sfgate.skp_1 1.75ms -> 1.64ms 0.94x
> desk_twitter.skp_1 74ms -> 69.6ms 0.94x
> desk_youtube.skp_1_mpd 3.17ms -> 2.96ms 0.93x
> desk_gmailthread.skp_1 2.73ms -> 2.54ms 0.93x
> desk_silkfinance.skp_1_mpd 1.71ms -> 1.59ms 0.93x
> desk_jsfiddlebigcar.skp_1_mpd 1.45ms -> 1.35ms 0.93x
> desk_pokemonwiki.skp_1_mpd 2.72ms -> 2.51ms 0.92x
> desk_gws.skp_1_mpd 2.14ms -> 1.98ms 0.92x
> desk_googlehome.skp_1 563us -> 517us 0.92x
> desk_espn.skp_1 4.24ms -> 3.89ms 0.92x
> tabl_culturalsolutions.skp_1 12.7ms -> 11.6ms 0.91x
> desk_sfgate.skp_1_mpd 1.91ms -> 1.74ms 0.91x
> tabl_hsfi.skp_1 1.06ms -> 966us 0.91x
> desk_samoasvg.skp_1_mpd 10.5ms -> 9.47ms 0.91x
> desk_facebook.skp_1_mpd 3.8ms -> 3.43ms 0.9x
> desk_youtube.skp_1 3.52ms -> 3.14ms 0.89x
> desk_ebay.skp_1_mpd 2.95ms -> 2.62ms 0.89x
> desk_samoasvg.skp_1 10.9ms -> 9.66ms 0.89x
> desk_googlespreadsheet.skp_1_mpd 5.59ms -> 4.94ms 0.88x
> desk_mapsvg.skp_1_mpd 100ms -> 87.9ms 0.88x
> desk_espn.skp_1_mpd 4.7ms -> 4.12ms 0.88x
> desk_wordpress.skp_1_mpd 1.92ms -> 1.68ms 0.87x
> tabl_deviantart.skp_1 140ms -> 122ms 0.87x
> tabl_cuteoverload.skp_1_mpd 4.41ms -> 3.83ms 0.87x
> desk_tigersvg.skp_1 19.6ms -> 17ms 0.87x
> tabl_googlecalendar.skp_1 4.01ms -> 3.44ms 0.86x
> desk_blogger.skp_1 2.49ms -> 2.14ms 0.86x
> desk_chalkboard.skp_1_mpd 52.7ms -> 45ms 0.85x
> desk_weather.skp_1 2.88ms -> 2.46ms 0.85x
> desk_chalkboard.skp_1 51ms -> 43.4ms 0.85x
> desk_yahooanswers.skp_1 2.74ms -> 2.32ms 0.85x
> desk_forecastio.skp_1_mpd 1.26ms -> 1.07ms 0.85x
> tabl_androidpolice.skp_1 5.18ms -> 4.34ms 0.84x
> desk_yahooanswers.skp_1_mpd 3.44ms -> 2.85ms 0.83x
> tabl_cnn.skp_1_mpd 2.59ms -> 2.15ms 0.83x
> desk_pinterest.skp_1 2.69ms -> 2.22ms 0.83x
> tabl_hsfi.skp_1_mpd 1.6ms -> 1.32ms 0.82x
> tabl_culturalsolutions.skp_1_mpd 13.8ms -> 11.3ms 0.82x
> desk_twitter.skp_1_mpd 76.6ms -> 63ms 0.82x
> desk_ebay.skp_1 3.11ms -> 2.51ms 0.81x
> tabl_mlb.skp_1_mpd 3.17ms -> 2.53ms 0.8x
> tabl_mozilla.skp_1 2.42ms -> 1.91ms 0.79x
> desk_pokemonwiki.skp_1 2.84ms -> 2.22ms 0.78x
> desk_carsvg.skp_1_mpd 23.3ms -> 17.8ms 0.77x
> desk_wowwiki.skp_1 4.21ms -> 3.21ms 0.76x
> desk_amazon.skp_1 963us -> 728us 0.76x
> desk_css3gradients.skp_1 2.58ms -> 1.92ms 0.74x
> tabl_cuteoverload.skp_1 4.55ms -> 3.38ms 0.74x
> tabl_cnn.skp_1 3.13ms -> 2.29ms 0.73x
> tabl_googleblog.skp_1_mpd 2.32ms -> 1.7ms 0.73x
> desk_mobilenews.skp_1 3.65ms -> 2.61ms 0.71x
> desk_googleplus.skp_1 3.76ms -> 2.66ms 0.71x
> tabl_mozilla.skp_1_mpd 2.88ms -> 2.03ms 0.71x
> desk_pinterest.skp_1_mpd 3.17ms -> 2.21ms 0.7x
> desk_css3gradients.skp_1_mpd 2.98ms -> 2.07ms 0.69x
> desk_silkfinance.skp_1 2.06ms -> 1.42ms 0.69x
> desk_facebook.skp_1 4.5ms -> 3.07ms 0.68x
> desk_mobilenews.skp_1_mpd 4.05ms -> 2.73ms 0.68x
> desk_baidu.skp_1_mpd 2.73ms -> 1.81ms 0.66x
> desk_weather.skp_1_mpd 3.93ms -> 2.5ms 0.64x
> desk_wordpress.skp_1 2.15ms -> 1.36ms 0.63x
> desk_googlehome.skp_1_mpd 1.02ms -> 605us 0.59x
> desk_fontwipe.skp_1 722us -> 402us 0.56x
> desk_fontwipe.skp_1_mpd 897us -> 486us 0.54x
> desk_baidu.skp_1 3.02ms -> 1.6ms 0.53x
> desk_forecastio.skp_1 2.01ms -> 999us 0.5x
> desk_amazon.skp_1_mpd 1.77ms -> 860us 0.49x
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
7e225bdb1f00ae4aed524ff8d0a61df3d3abb109
TBR=reed@google.com,robertphillips@google.com,scroggo@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
759753004
joshualitt [Tue, 25 Nov 2014 22:52:21 +0000 (14:52 -0800)]
remove proc key
BUG=skia:
Review URL: https://codereview.chromium.org/
755363002
mtklein [Tue, 25 Nov 2014 22:34:03 +0000 (14:34 -0800)]
nanobench: lazily decode bitmaps in .skps.
This cuts down on tool overhead when running something like recording only,
$ out/Release/nanobench --match skp --config nonrendering
which doesn't usually ever need to decode the images.
The actual measurements for recording don't change, as the decode is not in the timed section. It just skips irrelevant code, removing it from the profile and making the tool run faster.
This does, however, make a significant difference for playback speed. Most skps draw faster with this patch, some slower. I don't really have a good intuition for what's going on here. There is a fixed clip acting as a viewport, so there are probably lots of images that don't ever need to be decoded. Ideas? Is this perhaps because we're now blitting from smaller, partially decoded source images?
~/skia (clean) $ compare clean.log lazy-decode-bitmaps.log
tabl_slashdot.skp_1 2.76ms -> 4.33ms 1.57x
tabl_slashdot.skp_1_mpd 2.79ms -> 4.07ms 1.46x
tabl_sahadan.skp_1 3.41ms -> 4.87ms 1.43x
tabl_googleblog.skp_1 1.52ms -> 2.05ms 1.35x
tabl_techmeme.skp_1_mpd 1.14ms -> 1.51ms 1.32x
tabl_transformice.skp_1 2.61ms -> 3.43ms 1.31x
tabl_sahadan.skp_1_mpd 3.54ms -> 4.48ms 1.26x
tabl_techmeme.skp_1 1.01ms -> 1.27ms 1.26x
tabl_nytimes.skp_1_mpd 1ms -> 1.23ms 1.23x
tabl_worldjournal.skp_1_mpd 1.98ms -> 2.43ms 1.23x
tabl_pravda.skp_1_mpd 2.05ms -> 2.51ms 1.22x
tabl_transformice.skp_1_mpd 2.75ms -> 3.19ms 1.16x
tabl_nytimes.skp_1 874us -> 1.01ms 1.15x
tabl_pravda.skp_1 1.83ms -> 1.99ms 1.09x
tabl_worldjournal.skp_1 1.76ms -> 1.91ms 1.09x
desk_wowwiki.skp_1_mpd 3.7ms -> 3.9ms 1.05x
tabl_digg.skp_1 3.99ms -> 4.16ms 1.04x
tabl_ukwsj.skp_1_mpd 3ms -> 3.12ms 1.04x
desk_booking.skp_1 3.74ms -> 3.81ms 1.02x
desk_googlespreadsheetdashed.skp_1 10.6ms -> 10.6ms 1x
tabl_ukwsj.skp_1 2.88ms -> 2.89ms 1x
desk_googlespreadsheetdashed.skp_1_mpd 11.8ms -> 11.8ms 1x
desk_jsfiddlehumperclip.skp_1_mpd 891us -> 888us 1x
desk_googlespreadsheet.skp_1 4.65ms -> 4.62ms 0.99x
tabl_gspro.skp_1_mpd 1.97ms -> 1.94ms 0.99x
desk_booking.skp_1_mpd 4.1ms -> 4ms 0.98x
desk_carsvg.skp_1 18.2ms -> 17.7ms 0.97x
desk_gmailthread.skp_1_mpd 2.81ms -> 2.73ms 0.97x
desk_tigersvg.skp_1_mpd 19.5ms -> 18.9ms 0.97x
desk_mapsvg.skp_1 88.4ms -> 85.6ms 0.97x
tabl_cnet.skp_1_mpd 1.43ms -> 1.38ms 0.97x
desk_jsfiddlebigcar.skp_1 1.26ms -> 1.22ms 0.96x
desk_gws.skp_1 1.87ms -> 1.8ms 0.96x
desk_linkedin.skp_1 2.07ms -> 1.98ms 0.96x
tabl_deviantart.skp_1_mpd 118ms -> 113ms 0.96x
tabl_cnet.skp_1 1.2ms -> 1.14ms 0.95x
tabl_androidpolice.skp_1_mpd 5.95ms -> 5.63ms 0.95x
desk_sfgate.skp_1 1.75ms -> 1.64ms 0.94x
desk_twitter.skp_1 74ms -> 69.6ms 0.94x
desk_youtube.skp_1_mpd 3.17ms -> 2.96ms 0.93x
desk_gmailthread.skp_1 2.73ms -> 2.54ms 0.93x
desk_silkfinance.skp_1_mpd 1.71ms -> 1.59ms 0.93x
desk_jsfiddlebigcar.skp_1_mpd 1.45ms -> 1.35ms 0.93x
desk_pokemonwiki.skp_1_mpd 2.72ms -> 2.51ms 0.92x
desk_gws.skp_1_mpd 2.14ms -> 1.98ms 0.92x
desk_googlehome.skp_1 563us -> 517us 0.92x
desk_espn.skp_1 4.24ms -> 3.89ms 0.92x
tabl_culturalsolutions.skp_1 12.7ms -> 11.6ms 0.91x
desk_sfgate.skp_1_mpd 1.91ms -> 1.74ms 0.91x
tabl_hsfi.skp_1 1.06ms -> 966us 0.91x
desk_samoasvg.skp_1_mpd 10.5ms -> 9.47ms 0.91x
desk_facebook.skp_1_mpd 3.8ms -> 3.43ms 0.9x
desk_youtube.skp_1 3.52ms -> 3.14ms 0.89x
desk_ebay.skp_1_mpd 2.95ms -> 2.62ms 0.89x
desk_samoasvg.skp_1 10.9ms -> 9.66ms 0.89x
desk_googlespreadsheet.skp_1_mpd 5.59ms -> 4.94ms 0.88x
desk_mapsvg.skp_1_mpd 100ms -> 87.9ms 0.88x
desk_espn.skp_1_mpd 4.7ms -> 4.12ms 0.88x
desk_wordpress.skp_1_mpd 1.92ms -> 1.68ms 0.87x
tabl_deviantart.skp_1 140ms -> 122ms 0.87x
tabl_cuteoverload.skp_1_mpd 4.41ms -> 3.83ms 0.87x
desk_tigersvg.skp_1 19.6ms -> 17ms 0.87x
tabl_googlecalendar.skp_1 4.01ms -> 3.44ms 0.86x
desk_blogger.skp_1 2.49ms -> 2.14ms 0.86x
desk_chalkboard.skp_1_mpd 52.7ms -> 45ms 0.85x
desk_weather.skp_1 2.88ms -> 2.46ms 0.85x
desk_chalkboard.skp_1 51ms -> 43.4ms 0.85x
desk_yahooanswers.skp_1 2.74ms -> 2.32ms 0.85x
desk_forecastio.skp_1_mpd 1.26ms -> 1.07ms 0.85x
tabl_androidpolice.skp_1 5.18ms -> 4.34ms 0.84x
desk_yahooanswers.skp_1_mpd 3.44ms -> 2.85ms 0.83x
tabl_cnn.skp_1_mpd 2.59ms -> 2.15ms 0.83x
desk_pinterest.skp_1 2.69ms -> 2.22ms 0.83x
tabl_hsfi.skp_1_mpd 1.6ms -> 1.32ms 0.82x
tabl_culturalsolutions.skp_1_mpd 13.8ms -> 11.3ms 0.82x
desk_twitter.skp_1_mpd 76.6ms -> 63ms 0.82x
desk_ebay.skp_1 3.11ms -> 2.51ms 0.81x
tabl_mlb.skp_1_mpd 3.17ms -> 2.53ms 0.8x
tabl_mozilla.skp_1 2.42ms -> 1.91ms 0.79x
desk_pokemonwiki.skp_1 2.84ms -> 2.22ms 0.78x
desk_carsvg.skp_1_mpd 23.3ms -> 17.8ms 0.77x
desk_wowwiki.skp_1 4.21ms -> 3.21ms 0.76x
desk_amazon.skp_1 963us -> 728us 0.76x
desk_css3gradients.skp_1 2.58ms -> 1.92ms 0.74x
tabl_cuteoverload.skp_1 4.55ms -> 3.38ms 0.74x
tabl_cnn.skp_1 3.13ms -> 2.29ms 0.73x
tabl_googleblog.skp_1_mpd 2.32ms -> 1.7ms 0.73x
desk_mobilenews.skp_1 3.65ms -> 2.61ms 0.71x
desk_googleplus.skp_1 3.76ms -> 2.66ms 0.71x
tabl_mozilla.skp_1_mpd 2.88ms -> 2.03ms 0.71x
desk_pinterest.skp_1_mpd 3.17ms -> 2.21ms 0.7x
desk_css3gradients.skp_1_mpd 2.98ms -> 2.07ms 0.69x
desk_silkfinance.skp_1 2.06ms -> 1.42ms 0.69x
desk_facebook.skp_1 4.5ms -> 3.07ms 0.68x
desk_mobilenews.skp_1_mpd 4.05ms -> 2.73ms 0.68x
desk_baidu.skp_1_mpd 2.73ms -> 1.81ms 0.66x
desk_weather.skp_1_mpd 3.93ms -> 2.5ms 0.64x
desk_wordpress.skp_1 2.15ms -> 1.36ms 0.63x
desk_googlehome.skp_1_mpd 1.02ms -> 605us 0.59x
desk_fontwipe.skp_1 722us -> 402us 0.56x
desk_fontwipe.skp_1_mpd 897us -> 486us 0.54x
desk_baidu.skp_1 3.02ms -> 1.6ms 0.53x
desk_forecastio.skp_1 2.01ms -> 999us 0.5x
desk_amazon.skp_1_mpd 1.77ms -> 860us 0.49x
BUG=skia:
Review URL: https://codereview.chromium.org/
743613005
joshualitt [Tue, 25 Nov 2014 22:21:55 +0000 (14:21 -0800)]
remove one place we read from gpu key in effects
BUG=skia:
Review URL: https://codereview.chromium.org/
761643002
scroggo [Tue, 25 Nov 2014 21:42:12 +0000 (13:42 -0800)]
Add an Android-framework-only stable ID to SkPixelRef.
BUG:b/
18245805
Review URL: https://codereview.chromium.org/
752203002
cdalton [Tue, 25 Nov 2014 19:00:56 +0000 (11:00 -0800)]
Add IndexType parameter to GrDrawTarget::drawPaths
Allows the caller to decide whether they sent 8, 16, or 32 bit path
indices.
BUG=skia:
Review URL: https://codereview.chromium.org/
746253003
mtklein [Tue, 25 Nov 2014 19:00:38 +0000 (11:00 -0800)]
Sk4x_sse.h
CQ_EXTRA_TRYBOTS=client.skia:Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Release-Trybot,Test-Mac10.7-MacMini4.1-GeForce320M-x86_64-Release-Trybot,Test-Win7-ShuttleA-HD2000-x86-Debug-GDI-Trybot
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/
e4bf793120d3bfc9b003d11880a3fb73ff2b89e9
Review URL: https://codereview.chromium.org/
698873003
egdaniel [Tue, 25 Nov 2014 18:24:56 +0000 (10:24 -0800)]
Update invariant output computation for various texture effects.
Update various effects that read in textures to check whether or not the texture is alpha only.
This allows us to use a more specific mulByUnKnownAlpha instead of the more general mulByUnknownColor
BUG=skia:
Review URL: https://codereview.chromium.org/
759653004
egdaniel [Tue, 25 Nov 2014 18:08:33 +0000 (10:08 -0800)]
Remove unnessary check to skip drawing.
This is now checked during the OptDrawStates creation and thus is no longer needed here.
I have varified that this code path is never hit.
BUG=skia:
Review URL: https://codereview.chromium.org/
758973002
mtklein [Tue, 25 Nov 2014 18:05:43 +0000 (10:05 -0800)]
Eliminate static initializers in SkColor_SSE2.h.
Chrome hates static initializers.
Two global masks can become a single local mask instead. Perf looks like a no-op:
$ c --match bitmaprect_80 bitmap_RGBA --config 8888
bitmap_RGBA_8888_scale 13.7us -> 14.1us 1.03x
bitmap_RGBA_8888_update_volatile 4.53us -> 4.6us 1.02x
bitmap_RGBA_8888 4.55us -> 4.61us 1.01x
bitmap_RGBA_8888_update 4.64us -> 4.67us 1.01x
bitmap_RGBA_8888_A_source_stripes_three 9.66us -> 9.71us 1.01x
bitmaprect_80_filter_identity 10.6us -> 10.5us 0.99x
bitmaprect_80_nofilter_identity 10.5us -> 10.4us 0.99x
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
762453002
djsollen [Tue, 25 Nov 2014 16:25:29 +0000 (08:25 -0800)]
fix for the msvs gyp generator that produces nonposix path separators
BUG=skia:3139
Review URL: https://codereview.chromium.org/
753313002
bungeman [Tue, 25 Nov 2014 16:08:09 +0000 (08:08 -0800)]
Use text size on Mac.
The current code assumes that text on Mac is freely scalable,
or at least that the text size is just a part of the transform.
However, it appears that application of the 'trak' table,
as well as other optical adjustments, may rely on the text size
directly.
This change passes the text size requested directly to CoreText.
BUG=chromium:427528
Review URL: https://codereview.chromium.org/
752183002
bsalomon [Tue, 25 Nov 2014 15:41:12 +0000 (07:41 -0800)]
Remove GrSurface::isSameAs
Review URL: https://codereview.chromium.org/
753783003
robertphillips [Tue, 25 Nov 2014 15:38:46 +0000 (07:38 -0800)]
Rebaselines
This CL rebaselines:
Two GMs from https://codereview.chromium.org/
748853002 (Add support for hoisting layers in pictures drawn with a matrix) which are only now showing up:
S4 Debug multipicturedraw_invpathclip_tiled_gpu
S4 Debug multipicturedraw_pathclip_tiled_gpu
Two GMs most likely from https://codereview.chromium.org/
747043004 (Use scratch keys for stencil buffers):
Win8 Debug dashing2_nvprmsaa4
Win8 Debug glyph_pos_n_b_msaa16
Note that the dashing2 difference fixes an erroneously set pixel in the expected.
TBR=bsalomon@google.com, tomhudson@google.com
Review URL: https://codereview.chromium.org/
758023003
mtklein [Tue, 25 Nov 2014 15:30:19 +0000 (07:30 -0800)]
Revert of Blink hasn't rolled yet, better. (patchset #1 id:1 of https://codereview.chromium.org/
758693002/)
Reason for revert:
Try again, for real.
Original issue's description:
> Blink hasn't rolled yet, better.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
89ff0846fd9dacf5f081373746624d450a5f8c26
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
754303004
qiankun.miao [Tue, 25 Nov 2014 15:12:27 +0000 (07:12 -0800)]
Optimize highQualityFilter
portable version:
before:
10M 1 806µs 807µs 810µs 821µs 1% █▂▁▁▃▁▁▁█▁ 8888 bitmap_BGRA_8888_A_scale_rotate_bicubic
after:
10M 1 566µs 568µs 569µs 579µs 1% ▄▂▂█▂▁▁▁▃▁ 8888 bitmap_BGRA_8888_A_scale_rotate_bicubic
SSE version:
before:
10M 1 485µs 486µs 487µs 494µs 1% ▇▂▁▁▁▁█▂▁▁ 8888 bitmap_BGRA_8888_A_scale_rotate_bicubic
after:
10M 1 419µs 420µs 421µs 430µs 1% ▅▃▂▁▁█▂▁▁▁ 8888 bitmap_BGRA_8888_A_scale_rotate_bicubic
BUG=skia:
Review URL: https://codereview.chromium.org/
759603002
qiankun.miao [Tue, 25 Nov 2014 14:35:02 +0000 (06:35 -0800)]
Add SkBlendARGB32_SSE2() to clean up code
Related nanobench results:
before:
maxrss loops min median mean max stddev samples config bench
10M 2 31.9µs 32.4µs 33.3µs 38.7µs 6% █▄▂▂▂▁▂▁▁▁ 8888 bitmap_BGRA_8888_A_scale_bicubic
10M 13 43.8µs 51.8µs 49.6µs 57.9µs 11% ▁▁▁▁▂▆▇▆▅█ 8888 bitmap_BGRA_8888_A_scale_bilerp
10M 13 23.7µs 24.3µs 26µs 32.7µs 13% ▅█▆▁▁▁▁▂▁▁ 8888 bitmap_Index_8_A
10M 4 1.68µs 1.7µs 4.09µs 25.4µs 183% █▁▁▁▁▁▁▁▁▁ 8888 text_16_AA_88
10M 144 1.76µs 1.77µs 1.78µs 1.81µs 1% █▂▇▂▅▁▁▁▁▁ 8888 text_16_AA_FF
10M 10 4.7µs 5.34µs 5.61µs 8.63µs 21% █▂▂▃▂▁▁▁▁▄ 8888 rotated_rects_aa_alternating_transparent_and_opaque_src
10M 50 4.44µs 4.47µs 4.5µs 4.71µs 2% █▅▃▂▂▂▁▁▁▁ 8888 rotated_rects_aa_changing_opaque_src
10M 51 4.39µs 4.78µs 5.21µs 6.62µs 17% ▁▆▆▇▁▁█▁▂▂ 8888 rotated_rects_aa_same_opaque_src
10M 50 4.47µs 5.79µs 5.43µs 6.14µs 11% ▄▂▁▃▇▇▆▇▇█ 8888 rotated_rects_aa_alternating_transparent_and_opaque_srcover
10M 30 4.35µs 6.06µs 5.84µs 7.63µs 16% ▅▅▅▄▅▅▄█▁▁ 8888 rotated_rects_aa_changing_transparent_srcover
10M 44 4.31µs 4.51µs 4.76µs 6.25µs 13% ▄▂▂▁█▃▁▃▁▁ 8888 rotated_rects_aa_changing_opaque_srcover
10M 46 4.36µs 4.42µs 4.75µs 6.19µs 14% ▆█▃▁▁▁▁▁▁▁ 8888 rotated_rects_aa_same_transparent_srcover
10M 47 4.29µs 4.35µs 4.44µs 5.15µs 6% ▃▂▂▁▁█▁▁▁▁ 8888 rotated_rects_aa_same_opaque_srcover
10M 3 39.1µs 39.2µs 50.7µs 153µs 71% █▁▁▁▁▁▁▁▁▁ 8888 rectori
10M 1 2.3ms 2.31ms 2.35ms 2.74ms 6% ▁▁▁▁▁▁▁▁█▂ 8888 maskcolor
10M 1 2.33ms 2.34ms 2.53ms 3.14ms 11% ▁▁▁▁▁▁▅█▄▄ 8888 maskopaque
10M 11 15µs 15.3µs 15.7µs 18.3µs 7% ▅▃▂▂▁▁▁▁█▁ 8888 rrects_3_stroke_4
10M 46 3.99µs 4.07µs 4.14µs 4.54µs 4% █▅▅▃▂▂▁▁▁▁ 8888 rrects_3
10M 16 15.6µs 15.9µs 16.1µs 17.5µs 4% █▄▃▂▂▂▁▂▁▁ 8888 ovals_3_stroke_4
10M 40 5.09µs 5.18µs 5.23µs 5.67µs 3% █▅▃▂▂▁▃▁▁▁ 8888 ovals_3
10M 231 1.92µs 1.93µs 1.94µs 2µs 1% █▃▂▁▃▁▁▁▁▁ 8888 zeroradroundrect
10M 924 3.88µs 3.93µs 4.11µs 4.95µs 9% ▁█▆▃▁▁▁▁▁▁ 8888 arbroundrect
10M 8 8.11µs 8.47µs 8.48µs 8.85µs 3% █▅▇▄▄▂▁▄▄▆ 8888 merge_large
10M 14 6.71µs 6.92µs 6.96µs 7.46µs 3% ▃▆▁█▃▃▃▂▂▁ 8888 merge_small
11M 2 225µs 227µs 229µs 233µs 1% ███▃▇▂▃▁▃▂ 8888 displacement_full_large
16M 1 381µs 401µs 401µs 421µs 3% ▅▅▅█▆▄▄▃▃▁ 8888 displacement_alpha_large
19M 1 507µs 508µs 509µs 512µs 0% █▃▂▆▂▂▃▂▃▁ 8888 displacement_zero_large
19M 19 9µs 9.11µs 9.15µs 9.67µs 2% ▄▂▂▂█▂▁▁▁▂ 8888 displacement_full_small
19M 5 54.2µs 54.5µs 54.9µs 58µs 2% █▃▂▂▁▁▃▁▁▁ 8888 blurroundrect_WH[100x100]_cr[90]
20M 1 229µs 230µs 231µs 240µs 2% █▄▃▂▂▁▁▁▁▂ 8888 GM_varied_text_clipped_no_lcd
20M 1 267µs 269µs 270µs 279µs 1% █▄▃▂▂▂▂▂▁▁ 8888 GM_varied_text_ignorable_clip_no_lcd
22M 1 1.95ms 1.97ms 2.03ms 2.46ms 8% ▁▁▁▁▁▁▁▂█▃ 8888 GM_convex_poly_clip
after:
maxrss loops min median mean max stddev samples config bench
10M 2 31.5µs 32.3µs 32.8µs 37.2µs 5% █▄▃▂▂▂▁▁▁▁ 8888 bitmap_BGRA_8888_A_scale_bicubic
10M 13 43.9µs 44µs 44.1µs 44.9µs 1% █▂▁▁▁▆▁▁▁▂ 8888 bitmap_BGRA_8888_A_scale_bilerp
10M 19 22.7µs 23.3µs 25.6µs 32.4µs 14% ▁▁▁▁▁▅▆▁▅█ 8888 bitmap_Index_8_A
10M 5 1.79µs 1.97µs 3.85µs 21.1µs 158% █▁▁▁▁▁▁▁▁▁ 8888 text_16_AA_88
10M 141 1.83µs 1.83µs 1.85µs 1.93µs 2% ▅▁▁█▁▁▁▁▁▁ 8888 text_16_AA_FF
10M 10 4.65µs 4.92µs 5.06µs 6.56µs 11% █▃▃▂▂▂▁▁▁▁ 8888 rotated_rects_aa_alternating_transparent_and_opaque_src
10M 51 4.35µs 4.48µs 4.83µs 6.68µs 17% ▂▁▁▁▁▁▁▂▆█ 8888 rotated_rects_aa_changing_opaque_src
10M 51 4.38µs 4.79µs 4.85µs 5.84µs 11% ▁█▁▃▃▁▄▁▄▇ 8888 rotated_rects_aa_same_opaque_src
10M 32 5.58µs 6.24µs 6.1µs 6.39µs 5% █▂█▆▁▇▄▅▇▇ 8888 rotated_rects_aa_alternating_transparent_and_opaque_srcover
10M 42 4.28µs 5.59µs 5.11µs 6.01µs 15% ▂▂█▇█▂▁▆▁▇ 8888 rotated_rects_aa_changing_transparent_srcover
10M 48 4.24µs 4.33µs 4.58µs 6.46µs 15% ▁▁▁▁▁█▃▂▁▁ 8888 rotated_rects_aa_changing_opaque_srcover
10M 48 4.28µs 4.3µs 4.4µs 5.12µs 6% ▂▂▁▁▁▁▁▁▁█ 8888 rotated_rects_aa_same_transparent_srcover
10M 46 4.24µs 4.29µs 4.66µs 7.11µs 20% ▁▁▁▁▁▁▁▁▃█ 8888 rotated_rects_aa_same_opaque_srcover
10M 3 39.3µs 39.4µs 51.4µs 154µs 70% █▁▁▁▁▁▁▁▁▁ 8888 rectori
10M 1 2.32ms 2.43ms 2.53ms 3.14ms 11% ▁▁▁▁▂▄█▃▅▁ 8888 maskcolor
10M 1 2.33ms 2.37ms 2.54ms 3.21ms 12% ▁▁▁▁▁▂█▅▆▁ 8888 maskopaque
10M 10 15.3µs 15.6µs 15.8µs 17.2µs 4% █▅▃▂▂▂▁▁▁▁ 8888 rrects_3_stroke_4
10M 46 4.03µs 4.09µs 4.15µs 4.47µs 4% █▄▆▂▂▂▁▁▁▁ 8888 rrects_3
10M 15 15.9µs 16.2µs 16.3µs 17.8µs 4% █▄▃▂▂▂▁▁▁▁ 8888 ovals_3_stroke_4
10M 40 5.14µs 5.26µs 5.29µs 5.72µs 3% █▅▃▂▂▁▂▂▁▁ 8888 ovals_3
10M 222 1.91µs 1.99µs 2.21µs 2.91µs 19% ▂▁▁▁▁▁▂▇▇█ 8888 zeroradroundrect
10M 462 3.9µs 3.96µs 4.23µs 5.22µs 12% ▆▄█▁▂▁▁▁▁▁ 8888 arbroundrect
10M 8 8.2µs 8.59µs 8.62µs 8.97µs 3% ▆▄█▄▅▃▁▆▄█ 8888 merge_large
10M 14 6.73µs 6.88µs 6.86µs 7.08µs 2% ▄█▁▂▄▂▅▄▂▅ 8888 merge_small
11M 2 221µs 234µs 237µs 263µs 5% ▄▃▃▃▄▃▂▁▇█ 8888 displacement_full_large
16M 1 387µs 416µs 427µs 471µs 7% ▇█▁▃▃▁▃▃▇▆ 8888 displacement_alpha_large
19M 1 512µs 521µs 528µs 594µs 5% █▂▂▂▁▁▂▃▁▁ 8888 displacement_zero_large
19M 18 9.06µs 9.12µs 9.13µs 9.23µs 1% █▃▃▃▄▃▆▁▅▅ 8888 displacement_full_small
19M 5 55.6µs 55.9µs 56.5µs 59.5µs 2% █▃▂▁▁▁▁▁▅▁ 8888 blurroundrect_WH[100x100]_cr[90]
20M 1 229µs 233µs 235µs 254µs 3% █▄▃▂▂▁▁▂▁▁ 8888 GM_varied_text_clipped_no_lcd
20M 1 270µs 271µs 272µs 278µs 1% █▄▃▂▂▂▁▂▁▇ 8888 GM_varied_text_ignorable_clip_no_lcd
22M 1 1.96ms 2ms 2.06ms 2.45ms 7% ▂▂▁▁▁▁▁▃█▄ 8888 GM_convex_poly_clip
BUG=skia:
Review URL: https://codereview.chromium.org/
754733002
robertphillips [Tue, 25 Nov 2014 14:17:49 +0000 (06:17 -0800)]
Marking three GMs ignore-failure
These appear to be recurrent flakes
TBR=tomhudson@google.com
Review URL: https://codereview.chromium.org/
750943003
qiankun.miao [Tue, 25 Nov 2014 13:59:38 +0000 (05:59 -0800)]
Cleanup with SkAlphaMulQ_SSE2()
Related nanobench results:
before:
10M 18 7.03µs 7.31µs 7.38µs 8.46µs 6% ▂▁▂▂▂▃▄▁█▁ 8888 bitmaprect_80_filter_identity
10M 43 6.96µs 6.97µs 6.99µs 7.19µs 1% ▁▂▁▁▁▁▁█▁▁ 8888 bitmaprect_80_nofilter_identity
10M 14 35.7µs 35.8µs 35.9µs 36.3µs 1% ▃▂▁▂▁█▂▁▁▁ 8888 bitmap_BGRA_8888_update_scale_bilerp
10M 16 35.5µs 35.6µs 35.7µs 36.3µs 1% █▅▂▁▁▁▃▂▁▁ 8888 bitmap_BGRA_8888_update_volatile_scale_bilerp
10M 16 35.4µs 35.4µs 35.5µs 36.8µs 1% ▂▁█▁▁▁▁▂▁▁ 8888 bitmap_BGRA_8888_scale_bilerp
10M 25 16.4µs 16.6µs 16.7µs 17.4µs 2% ▂▁▁▂▁▁▁▅▅█ 8888 bitmap_Index_8
10M 15 37.9µs 38µs 38µs 38.4µs 0% ▄▆▂▁▁▁█▂▁▁ 8888 bitmap_RGB_565
10M 33 11.1µs 11.1µs 11.1µs 11.2µs 0% ▆▂█▂▂▂▁▁▂▁ 8888 bitmap_BGRA_8888_scale
after:
10M 9 7.04µs 7.06µs 7.1µs 7.32µs 1% █▅▂▁▁▂▁▁▁▁ 8888 bitmaprect_80_filter_identity
10M 18 7.01µs 7.02µs 7.05µs 7.25µs 1% █▂▁▁▁▁▁▁▁▁ 8888 bitmaprect_80_nofilter_identity
10M 5 33.9µs 34µs 34.1µs 34.5µs 1% █▃▂▂▁▁▁▅▃▂ 8888 bitmap_BGRA_8888_update_scale_bilerp
10M 7 35.5µs 35.5µs 35.6µs 36.3µs 1% ▃▂▂▁▂▁▂▁█▂ 8888 bitmap_BGRA_8888_update_volatile_scale_bilerp
10M 7 35.5µs 35.5µs 35.7µs 36.8µs 1% ▂▁▁▁▁▁▁▁▁█ 8888 bitmap_BGRA_8888_scale_bilerp
10M 11 16.4µs 16.4µs 16.4µs 16.6µs 0% █▂▁▁▂▁▁▁▂▁ 8888 bitmap_Index_8
10M 7 37.3µs 37.4µs 38.4µs 47.8µs 9% ▁▁▁▁▁▁▁▁▁█ 8888 bitmap_RGB_565
10M 33 11µs 11µs 11.1µs 11.2µs 1% ▄█▅▃▂▁▁▁▁▁ 8888 bitmap_BGRA_8888_scale
BUG=skia:
Review URL: https://codereview.chromium.org/
755573002
bsalomon [Tue, 25 Nov 2014 13:52:06 +0000 (05:52 -0800)]
Use scratch keys for stencil buffers.
BUG=skia:2889
Committed: https://skia.googlesource.com/skia/+/
91175f19664a62851da4ca4e0984a7c7c45b258f
Review URL: https://codereview.chromium.org/
747043004
robertphillips [Tue, 25 Nov 2014 13:24:00 +0000 (05:24 -0800)]
Rebaselines for https://codereview.chromium.org/
748853002
Add support for hoisting layers in pictures drawn with a matrix - https://codereview.chromium.org/
748853002 changed the following GMs:
multipicturedraw_sierpinski_tiled
multipicturedraw_rrectclip_tiled
multipicturedraw_rectclip_tiled
Note that it also, somewhat mysteriously, "fixed" the rendering bugs in some of the S4's multipicturedraw images (see skia:3116).
TBR=tomhudson@google.com
Review URL: https://codereview.chromium.org/
755183003
skia.buildbots [Tue, 25 Nov 2014 07:11:56 +0000 (23:11 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
758863002
reed [Tue, 25 Nov 2014 03:59:22 +0000 (19:59 -0800)]
free up picturerecorder refs after returning picture or drawable
this just accelerates what would happen on the next beginRecording() call or the destructor. chrome has unittests that break (shaders on the stack) if we hold on to the internals past endRecording().
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
758813002
reed [Tue, 25 Nov 2014 03:11:48 +0000 (19:11 -0800)]
more c
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
736133006
tfarina [Tue, 25 Nov 2014 01:53:55 +0000 (17:53 -0800)]
Cleanup: Remove bug_chomper entry from .gitignore.
This is not necessary anymore, now that bug_chomper was moved into
skia.googlesource.com/buildbot.git
BUG=None
TBR=borenet@google.com
Review URL: https://codereview.chromium.org/
748363002
mtklein [Mon, 24 Nov 2014 22:45:47 +0000 (14:45 -0800)]
SkRecord: outline methods that are not called O(N) times.
Looks like a noop-to-minor-win:
tabl_sahadan.skp 94.9us -> 98.6us 1x
desk_jsfiddlebigcar.skp 38.9us -> 39.7us 1x
desk_silkfinance.skp 78us -> 78.9us 1x
desk_jsfiddlehumperclip.skp 43.8us -> 44.3us 1x
desk_sfgate.skp 547us -> 548us 1x
tabl_gmail.skp 19.9us -> 19.8us 1x
tabl_worldjournal.skp 230us -> 229us 1x
desk_css3gradients.skp 248us -> 247us 1x
tabl_cnn.skp 205us -> 203us 0.99x
desk_linkedin.skp 342us -> 340us 0.99x
desk_wowwiki.skp 1.63ms -> 1.62ms 0.99x
tabl_cnet.skp 142us -> 141us 0.99x
desk_pokemonwiki.skp 9.76ms -> 9.67ms 0.99x
desk_espn.skp 267us -> 264us 0.99x
desk_youtube.skp 576us -> 570us 0.99x
tabl_pravda.skp 238us -> 235us 0.99x
tabl_ukwsj.skp 566us -> 560us 0.99x
tabl_engadget.skp 630us -> 622us 0.99x
desk_googlespreadsheetdashed.skp 1.66ms -> 1.64ms 0.99x
desk_mobilenews.skp 486us -> 480us 0.99x
tabl_googlecalendar.skp 211us -> 208us 0.99x
desk_samoasvg.skp 740us -> 730us 0.99x
desk_gws.skp 187us -> 184us 0.99x
desk_ebay.skp 234us -> 230us 0.99x
desk_mapsvg.skp 1.6ms -> 1.58ms 0.98x
tabl_nytimes.skp 130us -> 128us 0.98x
tabl_googleblog.skp 305us -> 300us 0.98x
desk_fontwipe.skp 40.3us -> 39.6us 0.98x
desk_tigersvg.skp 189us -> 186us 0.98x
tabl_androidpolice.skp 662us -> 650us 0.98x
desk_wordpress.skp 824us -> 809us 0.98x
tabl_mlb.skp 338us -> 331us 0.98x
tabl_culturalsolutions.skp 390us -> 382us 0.98x
desk_baidu.skp 213us -> 208us 0.98x
tabl_gspro.skp 72.9us -> 71.1us 0.97x
tabl_nofolo.skp 74us -> 71.9us 0.97x
desk_yahooanswers.skp 173us -> 168us 0.97x
tabl_frantzen.skp 57.3us -> 55.6us 0.97x
desk_chalkboard.skp 891us -> 865us 0.97x
desk_pinterest.skp 154us -> 149us 0.97x
desk_blogger.skp 537us -> 519us 0.97x
tabl_hsfi.skp 10.1us -> 9.69us 0.96x
desk_gmailthread.skp 333us -> 318us 0.96x
tabl_digg.skp 926us -> 883us 0.95x
desk_googlespreadsheet.skp 586us -> 558us 0.95x
desk_forecastio.skp 101us -> 95.7us 0.95x
desk_booking.skp 1.1ms -> 1.04ms 0.95x
tabl_deviantart.skp 144us -> 136us 0.95x
desk_facebook.skp 584us -> 553us 0.95x
desk_weather.skp 289us -> 272us 0.94x
desk_googlehome.skp 61.1us -> 57.5us 0.94x
desk_googleplus.skp 914us -> 849us 0.93x
desk_twitter.skp 499us -> 463us 0.93x
BUG=skia:
Review URL: https://codereview.chromium.org/
756783002
Mike Klein [Mon, 24 Nov 2014 22:44:23 +0000 (17:44 -0500)]
Don't count a leading 1 as a signficant digit in the ratio.
What used to look like this:
desk_pokemonwiki.skp 9.38ms -> 9.76ms 1x
tabl_pravda.skp 237us -> 241us 1x
desk_css3gradients.skp 249us -> 254us 1x
....
desk_fontwipe.skp 39.6us -> 38.7us 0.98x
tabl_digg.skp 922us -> 893us 0.97x
tabl_gmail.skp 20.7us -> 20us 0.96x
Now will print more like this:
desk_pokemonwiki.skp 9.38ms -> 9.76ms 1.04x
tabl_pravda.skp 237us -> 241us 1.02x
desk_css3gradients.skp 249us -> 254us 1.02x
....
desk_fontwipe.skp 39.6us -> 38.7us 0.98x
tabl_digg.skp 922us -> 893us 0.97x
tabl_gmail.skp 20.7us -> 20us 0.96x
BUG=skia:
Review URL: https://codereview.chromium.org/
756643004
reed [Mon, 24 Nov 2014 22:41:51 +0000 (14:41 -0800)]
option to return drawable from recording
patch from issue
747033005 at patchset 80001 (http://crrev.com/
747033005#ps80001)
BUG=skia:
Review URL: https://codereview.chromium.org/
732653004
Mike Klein [Mon, 24 Nov 2014 22:31:54 +0000 (17:31 -0500)]
Blink hasn't rolled yet, better.
BUG=skia:
Review URL: https://codereview.chromium.org/
758693002
mtklein [Mon, 24 Nov 2014 22:28:55 +0000 (14:28 -0800)]
Revert of Blink hasn't rolled yet. (patchset #1 id:1 of https://codereview.chromium.org/
754133002/)
Reason for revert:
Not thorough enough.
Original issue's description:
> Blink hasn't rolled yet.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
fa14113d0563686af9f7e2d8e041dd7bf538cfa2
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
752303002
reed [Mon, 24 Nov 2014 22:13:55 +0000 (14:13 -0800)]
restore old convention of asserting refcnt==1 in destructor
BUG=skia:
Review URL: https://codereview.chromium.org/
757563003
Mike Klein [Mon, 24 Nov 2014 21:26:15 +0000 (16:26 -0500)]
Blink hasn't rolled yet.
BUG=skia:
Review URL: https://codereview.chromium.org/
754133002
mtklein [Mon, 24 Nov 2014 21:09:39 +0000 (13:09 -0800)]
make SkRefCnt::getRefCnt() debug-only, remove it from SkNVRefCnt.
Only (unused) API removed.
TBR=reed@google.com
BUG=skia:3160
Review URL: https://codereview.chromium.org/
752263002
mtklein [Mon, 24 Nov 2014 20:39:59 +0000 (12:39 -0800)]
Add nanobench stats scripts to Skia repo.
These are the scripts I've been homegrowing for measuring perf impact. I think we found them useful today as a way of sifting through the noise.
BUG=skia:
Review URL: https://codereview.chromium.org/
703713002
bsalomon [Mon, 24 Nov 2014 20:19:05 +0000 (12:19 -0800)]
Revert "Use scratch keys for stencil buffers."
This reverts commit
91175f19664a62851da4ca4e0984a7c7c45b258f.
Revert "Cleanup res cache bench and split out into a unit test."
This reverts commit
4e4303f002c5958c6c958e7ba8e49b24c25f0b22.
Revert "rebaselines"
This reverts commit
65ba7b57759bfca60b24bc34dc46fc8caaf146f0.
TBR=tomhudson@google.com
Review URL: https://codereview.chromium.org/
752233002
reed [Mon, 24 Nov 2014 20:02:31 +0000 (12:02 -0800)]
add some debugging to SkNVRefCnt
BUG=skia:
Review URL: https://codereview.chromium.org/
745383003
tomhudson [Mon, 24 Nov 2014 19:27:41 +0000 (11:27 -0800)]
Revert of More rebaselines (patchset #1 id:1 of https://codereview.chromium.org/
754833003/)
Reason for revert:
Reverted causative patchset (https://codereview.chromium.org/
747043004)
Original issue's description:
> More rebaselines
>
> TBR=
> NOTRY=true
> NOTREECHECKS=true
>
> Committed: https://skia.googlesource.com/skia/+/
0ef7ba2a43a41e8e1e49a5187073db6dcca345b4
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
756633004
tomhudson [Mon, 24 Nov 2014 19:24:46 +0000 (11:24 -0800)]
Revert of more rebaselines (patchset #1 id:1 of https://codereview.chromium.org/
755653003/)
Reason for revert:
Reverted causative patch (https://codereview.chromium.org/
747043004)
Original issue's description:
> more rebaselines
>
> TBR=
> NOTRY=true
> NOTREECHECKS=true
>
> Committed: https://skia.googlesource.com/skia/+/
f2fdc8b746acac9daa94b21d3849f60a87064fd4
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
754103002
tomhudson [Mon, 24 Nov 2014 19:22:36 +0000 (11:22 -0800)]
Revert of Revert of Add gpu support for Apple specific 'Vertex Arrays' functions (patchset #1 id:1 of https://codereview.chromium.org/
750973003/)
Reason for revert:
Original patchset seems to have been exonerated. Crash was mac-specific, but appears to be triggered by a non-mac-specific change (https://codereview.chromium.org/
747043004/); suspecting driver bug?
Original issue's description:
> Revert of Add gpu support for Apple specific 'Vertex Arrays' functions (patchset #2 id:20001 of https://codereview.chromium.org/
754653002/)
>
> Reason for revert:
> Suspected in DM crashes, e.g.
>
> 2033 tasks left 344M peak 843ms tabl-cuteoverload_skp
> Signal 11:
> _sigtramp (+0x1a)
> create_surface(CanvasConfig const&, GrContext*) (+0x1b2)
> test_WritePixels(skiatest::Reporter*, GrContextFactory*) (+0x8d4)
> skiatest::WritePixelsClass::onRun(skiatest::Reporter*) (+0x21)
> skiatest::Test::run() (+0x7c)
> DM::GpuTestTask::draw(GrContextFactory*) (+0x8c)
> DM::GpuTask::run(GrContextFactory*) (+0xa6)
> DM::TaskRunner::wait() (+0x7f)
> dm_main() (+0x33f)
> main (+0x27)
>
>
> On all MacMini platforms (the following URL with -Mac{10.6,10.7,10.8}- and -{Debug,Release}):
>
> http://build.chromium.org/p/client.skia/builders/Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Debug
>
>
> Original issue's description:
> > Add gpu support for Apple specific 'Vertex Arrays' functions
> >
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/
af000f469e1b0153ce445c96ca3d20e6d12224cc
>
> TBR=bsalomon@google.com,paraboul@gmail.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
55fe3d7748b873e362edc4e6a43bd77914ed25fb
TBR=bsalomon@google.com,paraboul@gmail.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
734633005
robertphillips [Mon, 24 Nov 2014 18:56:21 +0000 (10:56 -0800)]
Suppress additional multipicturedraw GM for Android
One Android bot is failing on the rect test case.
TBR=tomhudson@google.com
NOTRY=true
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/
750203003
robertphillips [Mon, 24 Nov 2014 18:23:07 +0000 (10:23 -0800)]
Sigh - remove whitespace from end of suppressions text line
TBR=tomhudson@google.com
NOTRY=true
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/
754783003
robertphillips [Mon, 24 Nov 2014 18:06:47 +0000 (10:06 -0800)]
Add suppressions for https://codereview.chromium.org/
748853002
TBR=tomhudson@google.com
NOTRY=true
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/
753103005
tomhudson [Mon, 24 Nov 2014 17:59:41 +0000 (09:59 -0800)]
Revert of Add gpu support for Apple specific 'Vertex Arrays' functions (patchset #2 id:20001 of https://codereview.chromium.org/
754653002/)
Reason for revert:
Suspected in DM crashes, e.g.
2033 tasks left 344M peak 843ms tabl-cuteoverload_skp
Signal 11:
_sigtramp (+0x1a)
create_surface(CanvasConfig const&, GrContext*) (+0x1b2)
test_WritePixels(skiatest::Reporter*, GrContextFactory*) (+0x8d4)
skiatest::WritePixelsClass::onRun(skiatest::Reporter*) (+0x21)
skiatest::Test::run() (+0x7c)
DM::GpuTestTask::draw(GrContextFactory*) (+0x8c)
DM::GpuTask::run(GrContextFactory*) (+0xa6)
DM::TaskRunner::wait() (+0x7f)
dm_main() (+0x33f)
main (+0x27)
On all MacMini platforms (the following URL with -Mac{10.6,10.7,10.8}- and -{Debug,Release}):
http://build.chromium.org/p/client.skia/builders/Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Debug
Original issue's description:
> Add gpu support for Apple specific 'Vertex Arrays' functions
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
af000f469e1b0153ce445c96ca3d20e6d12224cc
TBR=bsalomon@google.com,paraboul@gmail.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
750973003
robertphillips [Mon, 24 Nov 2014 17:49:17 +0000 (09:49 -0800)]
Add support for hoisting layers in pictures drawn with a matrix
Although Chromium doesn't use the drawPicture matrix parameter for their tiling, our local code does. Without such drawPicture calls break layer hoisting.
BUG=skia:2315
Review URL: https://codereview.chromium.org/
748853002
mtklein [Mon, 24 Nov 2014 17:11:45 +0000 (09:11 -0800)]
Add Sk prefix to CreateBitmapShader.
It's neither static nor namespaced, so we should probably prefix it.
BUG=skia:
Review URL: https://codereview.chromium.org/
754083002
scroggo [Mon, 24 Nov 2014 17:05:35 +0000 (09:05 -0800)]
Remove android-framework-only unused parameter.
Allows -Werror=unused-parameter to build on android framework.
Review URL: https://codereview.chromium.org/
757633002
bsalomon [Mon, 24 Nov 2014 16:39:08 +0000 (08:39 -0800)]
More rebaselines
TBR=
NOTRY=true
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/
754833003
bsalomon [Mon, 24 Nov 2014 16:25:05 +0000 (08:25 -0800)]
Cleanup res cache bench and split out into a unit test.
BUG=skia:2889
Review URL: https://codereview.chromium.org/
754833002
mtklein [Mon, 24 Nov 2014 16:20:57 +0000 (08:20 -0800)]
Remove Picture deletion listeners.
Looks like we can just have ~SkPicture put the message on the bus directly.
BUG=skia:3144
Review URL: https://codereview.chromium.org/
751663002
bsalomon [Mon, 24 Nov 2014 16:13:49 +0000 (08:13 -0800)]
more rebaselines
TBR=
NOTRY=true
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/
755653003
bsalomon [Mon, 24 Nov 2014 16:03:24 +0000 (08:03 -0800)]
rebaselines
NOTRY=true
NOTREECHECKS=true
TBR=
Review URL: https://codereview.chromium.org/
753133003
paraboul [Mon, 24 Nov 2014 15:05:27 +0000 (07:05 -0800)]
Add gpu support for Apple specific 'Vertex Arrays' functions
BUG=skia:
Review URL: https://codereview.chromium.org/
754653002
bsalomon [Mon, 24 Nov 2014 15:05:15 +0000 (07:05 -0800)]
Use scratch keys for stencil buffers.
BUG=skia:2889
Review URL: https://codereview.chromium.org/
747043004
qiankun.miao [Mon, 24 Nov 2014 14:59:44 +0000 (06:59 -0800)]
Cleanup of S32_D565_Opaque_SSE2()
BUG=skia:
Review URL: https://codereview.chromium.org/
725693003
bsalomon [Mon, 24 Nov 2014 14:47:48 +0000 (06:47 -0800)]
Create GrOptDrawState directly in the cmd buffer in GrIODB.
Review URL: https://codereview.chromium.org/
746243002
reed [Mon, 24 Nov 2014 02:37:14 +0000 (18:37 -0800)]
use int instead of size_t to match skia convention
BUG=skia:
TBR=mtklein@google.com
Review URL: https://codereview.chromium.org/
753903002
skia.buildbots [Sun, 23 Nov 2014 06:47:34 +0000 (22:47 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
747323005
skia.buildbots [Sat, 22 Nov 2014 07:06:21 +0000 (23:06 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
728943003
mtklein [Fri, 21 Nov 2014 22:42:35 +0000 (14:42 -0800)]
Revert of Add -ftrapv to debug builds. (patchset #1 id:1 of https://codereview.chromium.org/
702893003/)
Reason for revert:
Not clean yet.
Original issue's description:
> Add -ftrapv to debug builds.
>
> This adds instrumentation to check that signed integers never under- or
> overflow, which is undefined behavior.
>
> BUG=skia:3096
>
> Committed: https://skia.googlesource.com/skia/+/
ebacb6127a952910f43a59460af43427d93df46c
TBR=bungeman@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:3096
Review URL: https://codereview.chromium.org/
751713002
bsalomon [Fri, 21 Nov 2014 22:38:06 +0000 (14:38 -0800)]
Add pop_back to GrTRecorder.h
Review URL: https://codereview.chromium.org/
750613002
mtklein [Fri, 21 Nov 2014 22:24:04 +0000 (14:24 -0800)]
Add -ftrapv to debug builds.
This adds instrumentation to check that signed integers never under- or
overflow, which is undefined behavior.
BUG=skia:3096
Review URL: https://codereview.chromium.org/
702893003
bungeman [Fri, 21 Nov 2014 21:18:34 +0000 (13:18 -0800)]
Clean up FreeType code for 2.3.8.
We already require FreeType 2.3.8 in order to compile and run.
Make this requirement explicit and take advantage of it.
Review URL: https://codereview.chromium.org/
748063003
mtklein [Fri, 21 Nov 2014 20:52:46 +0000 (12:52 -0800)]
ack verylargebitmap diffs
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
752693002
mtklein [Fri, 21 Nov 2014 20:20:35 +0000 (12:20 -0800)]
SkPicture::SnapshotArray doesn't really stand to benefit from refcounting.
BUG=skia:
Review URL: https://codereview.chromium.org/
748803005
mtklein [Fri, 21 Nov 2014 20:10:33 +0000 (12:10 -0800)]
Switch SkBitmapProcState's SkFractionalInt to 32.32.
16 bits are not enough to hold the integral part of fx in
Clamp_S32_opaque_D32_nofilter_DX_shaderproc.
Weirdly, no GM diffs on my desktop.
BUG=skia:3096
Review URL: https://codereview.chromium.org/
733163003
mtklein [Fri, 21 Nov 2014 19:41:35 +0000 (11:41 -0800)]
Simplfy DEPS: always pull all deps, remove unused barelinux platform.
Left some notes about where we might further clean up.
BUG=skia:
Review URL: https://codereview.chromium.org/
753633002
mtklein [Fri, 21 Nov 2014 19:38:53 +0000 (11:38 -0800)]
Watch out for SkFixed overflow in SkMipMap.cpp.
Tested with -fsanitize=signed-integer-overflow.
This new assert used to trigger in MipMap unit test.
Don't appear to be any GM diffs.
BUG=skia:
Review URL: https://codereview.chromium.org/
729373004
mtklein [Fri, 21 Nov 2014 19:13:15 +0000 (11:13 -0800)]
public SkNVRefCnt<SnapshotArray>
Should fix broken build.
NOTRY=true
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
748143002
mtklein [Fri, 21 Nov 2014 19:06:04 +0000 (11:06 -0800)]
SkData -> SkPicture::SnapshotArray
Restores type safety with all the same features.
(Also note, less code: 29 insertions, 50 deletions.)
BUG=skia:
Review URL: https://codereview.chromium.org/
746553002
reed [Fri, 21 Nov 2014 18:27:53 +0000 (10:27 -0800)]
clarify samplecount field in imagegpu
BUG=skia:
TBR=bsalomon
Review URL: https://codereview.chromium.org/
750023002
robertphillips [Fri, 21 Nov 2014 18:16:25 +0000 (10:16 -0800)]
Fix error in Ganesh' tiled bitmap drawing
When the paint filter level is high ShouldUseBicubic doesn't always return true. In this case the paint's filter level will differ from the filtering Ganesh will use. This was leading to a mismatch between the tiling computed in SkGpuDevice::drawBitmapCommon and the one in SkGpuDevice::drawTiledBitmap.
The end result of this was that the max texture restriction could be violated which is currently being seen on the Xoom & N7 bots. Both of them have a max texture size of 2048 which is invoking the tiled drawbitmap case.
Review URL: https://codereview.chromium.org/
752623002
joshualitt [Fri, 21 Nov 2014 17:03:45 +0000 (09:03 -0800)]
remove GrAllocPool
BUG=skia:
Review URL: https://codereview.chromium.org/
742253002
mtklein [Fri, 21 Nov 2014 16:48:35 +0000 (08:48 -0800)]
All the small packing tweaks mentioned in the bug.
BUG=skia:3144
Review URL: https://codereview.chromium.org/
748063002
reed [Fri, 21 Nov 2014 16:46:37 +0000 (08:46 -0800)]
add SkImage::newSurface
BUG=skia:
Review URL: https://codereview.chromium.org/
741763002
reed [Fri, 21 Nov 2014 16:07:41 +0000 (08:07 -0800)]
simplify uniqueID code in picture
patch from issue
750003002 at patchset 1 (http://crrev.com/
750003002#ps1)
BUG=skia:
Review URL: https://codereview.chromium.org/
752573002
robertphillips [Fri, 21 Nov 2014 15:24:01 +0000 (07:24 -0800)]
Ignore a flaky msaa4 GM and some perma-broken S4 GMs
The Ubuntu12 msaa4 image seems to flake randomly
The S4 images are covered by skia:3116 (Galaxy S4 exhibits some saveLayer bugs (both normal and with hoisting))
TBR=humper@google.com
Review URL: https://codereview.chromium.org/
748773003
robertphillips [Fri, 21 Nov 2014 14:53:00 +0000 (06:53 -0800)]
Fix memory leak in nanobench
This is cleanup for (Add MultiPictureDraw to nanobench - https://codereview.chromium.org/
731973005/)
Review URL: https://codereview.chromium.org/
730343003
mtklein [Fri, 21 Nov 2014 14:48:43 +0000 (06:48 -0800)]
Small changes to get things building and running on Linux/ARM.
ninja -C out/Debug works, and I tested out/Debug/dm --nogpu (no X yet).
The only problems encountered were:
- Like CrOS, I also needed to use the default float ABI (presumably hard).
- The strings in GrBinHashKeyTest weren't necessarily 4-byte aligned.
BUG=skia:
Review URL: https://codereview.chromium.org/
746043002
robertphillips [Fri, 21 Nov 2014 14:19:36 +0000 (06:19 -0800)]
Add MultiPictureDraw to nanobench
I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.
TBR=bsalomon@google.com
Committed: https://skia.googlesource.com/skia/+/
0ddad31012dabfc1267effc8071d37f7d606efbe
Review URL: https://codereview.chromium.org/
731973005
robertphillips [Fri, 21 Nov 2014 13:50:21 +0000 (05:50 -0800)]
Revert of Add MultiPictureDraw to nanobench (patchset #7 id:120001 of https://codereview.chromium.org/
731973005/)
Reason for revert:
Needs more work
Original issue's description:
> Add MultiPictureDraw to nanobench
>
> I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.
>
> TBR=bsalomon@google.com
>
> Committed: https://skia.googlesource.com/skia/+/
0ddad31012dabfc1267effc8071d37f7d606efbe
TBR=mtklein@google.com,bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
750583002
robertphillips [Fri, 21 Nov 2014 13:35:54 +0000 (05:35 -0800)]
Add MultiPictureDraw to nanobench
I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.
TBR=bsalomon@google.com
Review URL: https://codereview.chromium.org/
731973005
fmalita [Fri, 21 Nov 2014 04:44:04 +0000 (20:44 -0800)]
Revert of SkCanvas::clear() should call down to devices even when the clip is empty. (patchset #1 id:1 of https://codereview.chromium.org/
735233003/)
Reason for revert:
Chrome unit_tests failures on Mac & Win, blocking the roll: http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/5613
Original issue's description:
> SkCanvas::clear() should call down to devices even when the clip is empty.
>
> SkDrawIter had a lovely, completely unused, option for this. Oversight?
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
378e70d8e561b72a904286ea231946f5c8345b9a
TBR=reed@google.com,mtklein@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
748733002
tfarina [Fri, 21 Nov 2014 02:20:06 +0000 (18:20 -0800)]
Cleanup: Delete webtry.gyp
Looks like this was left over when we moved it into buildbot.
Also remove a few other, now unnecessary, references to webtry.
BUG=None
R=humper@google.com
Review URL: https://codereview.chromium.org/
726833004
joshualitt [Fri, 21 Nov 2014 00:51:50 +0000 (16:51 -0800)]
rebasing a bunch of 0% android mismatches
TBR=
BUG=skia:
Review URL: https://codereview.chromium.org/
744383002
joshualitt [Thu, 20 Nov 2014 22:50:39 +0000 (14:50 -0800)]
Adding GeometryData object
BUG=skia:
Review URL: https://codereview.chromium.org/
745663002
cdalton [Thu, 20 Nov 2014 22:30:08 +0000 (14:30 -0800)]
Rebaseline textblobshader expectation for nvpr
Rebaseline after https://codereview.chromium.org/
712223002. The
difference is a result of using different bounding boxes to cover
gradient fills, which caused a few pixels do differ by a value of one.
BUG=skia:
Review URL: https://codereview.chromium.org/
746603002
Florin Malita [Thu, 20 Nov 2014 21:56:22 +0000 (16:56 -0500)]
Add SkNVRefCnt::getRefCnt()
Used in Blink unit tests.
TBR=mtklein@google.com,humper@google.com
Review URL: https://codereview.chromium.org/
746693002
fmalita [Thu, 20 Nov 2014 18:44:58 +0000 (10:44 -0800)]
Disable LCD text explicitly in SkPictureImageFilter::onFilterImage()
As an intermediate fix for
https://code.google.com/p/skia/issues/detail?id=3142, we can use a
non-public SkCanvas constructor and force-disable LCD text.
BUG=skia:3142
R=reed@google.com,senorblanco@google.com
Review URL: https://codereview.chromium.org/
725243004
mtklein [Thu, 20 Nov 2014 18:07:54 +0000 (10:07 -0800)]
Add SkNVRefCnt::deref().
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
744853002