Commit Graph

291 Commits

Author SHA1 Message Date
mtklein
e44b5084d8 DM: use SkFunction to make required argument type clearer.
Previously it was hard to tell that DrawFn took an SkCanvas* and returned an Error.  Now it's clear from the type.

BUG=skia:

Review URL: https://codereview.chromium.org/1125233002
2015-05-07 10:53:34 -07:00
mtklein
6fbf4b3a7f Do we still need this DOUBLE_LOOP feature?
If so, let's do it this way so it works for all source types and doesn't need
to be chosen at compile time.

BUG=skia:

Review URL: https://codereview.chromium.org/1129693003
2015-05-06 11:35:40 -07:00
mtklein
7882924c10 DM: add Via abstract class
BUG=skia:

Review URL: https://codereview.chromium.org/1117183007
2015-05-06 07:54:07 -07:00
mtklein
d31c13d044 DM: add a Via to simulate SP pictures.
Will use this to test the other CL that adds small SkPicture implementations.

Not quite sure why patch_primitive doesn't draw the same in 8888 and sp-8888, but everything else does, so I'm not going to let that hold me back for now.

BUG=skia:

Review URL: https://codereview.chromium.org/1126613005
2015-05-05 12:59:56 -07:00
mtklein
a16e69ec6c DM: add draw_to_canvas() to trim some boilerplate for Vias.
BUG=skia:

Review URL: https://codereview.chromium.org/1123743007
2015-05-05 11:38:45 -07:00
reed
06a22f618c add deferred config to DM
BUG=skia:

Review URL: https://codereview.chromium.org/1113273006
2015-05-05 08:11:33 -07:00
mtklein
d75c466ef5 DM+nanobench: print both current and max RSS.
out/Debug/dm:
    ( 360/380 MB  2112) 396ms   gpu gm  xfermodes

out/Release/nanobench:
    32/33  MB 1659    2.46µs  2.55µs  2.54µs  2.67µs  2%  ▄▄▄▅▅▃▂▁▂█  gpu gradient_conicalZero_clamp_hicolor

out/Debug/nanobench:
    42/42  MB   desk_css3gradients.skp_1    8888

BUG=skia:

NOTREECHECKS=true

Review URL: https://codereview.chromium.org/1115203002
2015-04-30 07:11:22 -07:00
msarett
9e43cabaa1 Requires a minor API change to pass the color table to getScanlineDecoder, as we do with getPixels().
BUG=skia:3722

Review URL: https://codereview.chromium.org/1061713007
2015-04-29 07:38:43 -07:00
mtklein
6393c0653e Add source-data sharding to DM.
E.g.  out/Debug/dm --shards 4 --shard 1

This shards all inputs, GMs, SKPs, tests, etc.

BUG=skia:

Review URL: https://codereview.chromium.org/1109813002
2015-04-27 08:45:01 -07:00
mtklein
05641a5582 DM: failure to canary a sink is now fatal.
This requires we remove NVPR from the default set of configs, as we only find
out at runtime that it's not available.  All the other defaults will either be
compiled in and supported, or not compiled in and non-fatally skipped as
unknown configs.

BUG=skia:

Review URL: https://codereview.chromium.org/1100773003
2015-04-21 10:49:14 -07:00
msarett
e16b04aa60 SkJpegCodec
Enables basic decoding for jpegs

Includes rewinding

565, YUV, and Jpeg encoding are not yet implemented

BUG=skia:3257

Review URL: https://codereview.chromium.org/1076923002
2015-04-15 07:32:20 -07:00
halcanary
7e79818137 DM: add --multiPage option
Motivation: I want to switch back to single-page output by default for
direct comparison to raster backends in Gold.

I can still test the multi-page option via a command-line switch.

BUG=skia:3721

Review URL: https://codereview.chromium.org/1063873004
2015-04-14 14:06:18 -07:00
djsollen
a669bc37c6 cleanup codec names being produced by dm and uploaded to gold
Review URL: https://codereview.chromium.org/1072933004
2015-04-14 13:47:51 -07:00
msarett
164d5b09b7 Fixing use of initialized memory.
Disabling scanline decoding to kIndex8 until it can be implemented.

BUG=skia:3715

Review URL: https://codereview.chromium.org/1082923002
2015-04-14 05:37:36 -07:00
msarett
438b2adefb ***Disables swizzles to 565.
We may want to enable swizzles to 565
for images that are encoded in a format
similar to 565, however, we do not want
to take images that decode naturally to
kN32 and then convert them to 565.

***Enable swizzles to kIndex_8.  For images
encoded in a color table format, we suggest
that they be decoded to kIndex_8.  When we
decode, we only allow conversion to kIndex_8
if it matches the suggested color type (except
wbmp which seems good as is).

***Modify dm to test images that decode to
kIndex_8.

BUG=skia:3257
BUG=skia:3440

Review URL: https://codereview.chromium.org/1055743003
2015-04-09 12:43:10 -07:00
mtklein
b0531a790c Move uninteresting MD5 check to after adding it to JSON.
BUG=skia:3676

Review URL: https://codereview.chromium.org/1067053002
2015-04-07 13:38:48 -07:00
mtklein
0ea6d7150e Fix DM -r
source_options isn't always present.

BUG=skia:

Review URL: https://codereview.chromium.org/1067863002
2015-04-07 08:48:39 -07:00
mtklein
b7e8d69fc2 Add a Via to DM that records into two pictures and draws using the second.
I'm going to start hacking on SkCanvas a bit to allow a fast reset method,
and I want to have some testing checking me.

BUG=skia:

Review URL: https://codereview.chromium.org/1062043004
2015-04-07 08:30:32 -07:00
mtklein
20c1c047e0 DM: set source options only when non-empty.
BUG=skia:

Review URL: https://codereview.chromium.org/1063713002
2015-04-06 07:22:05 -07:00
borenet
09ed480906 Add --uninterestingHashesFile to DM
The file is expected to contain a list of strings. If the hash for
any result is in this file, don't write an image for it.

BUG=skia:3521

Review URL: https://codereview.chromium.org/1059363002
2015-04-03 14:15:33 -07:00
mtklein
0d243ffe35 Doesn't usually matter for well-formed blacklists,
but helps us not run off the end.

BUG=skia:

Review URL: https://codereview.chromium.org/1059243002
2015-04-03 07:51:00 -07:00
djsollen
54416de523 Update DM to allow Src's to have optional options.
Review URL: https://codereview.chromium.org/1059513002
2015-04-03 07:24:48 -07:00
djsollen
2ab9000b3f Prevent DM crash in the PDF sink when src width/height are zero.
Review URL: https://codereview.chromium.org/1061493002
2015-04-03 06:38:31 -07:00
borenet
4808757d7a Remove all code related to NaCl
BUG=skia:3600
DOCS_PREVIEW= https://skia.org/?cl=1036283002

Review URL: https://codereview.chromium.org/1036283002
2015-04-02 12:16:36 -07:00
halcanary
c79a391a38 DM: JSON output adds process_max_resident_set_size_MB
Review URL: https://codereview.chromium.org/917943002
2015-04-01 13:31:34 -07:00
msarett
8c8f22a3bb Creating a new wrapper for gif decoder
BUG=skia:3257
BUG=skia:3534

Review URL: https://codereview.chromium.org/1022673011
2015-04-01 06:58:48 -07:00
joshualitt
7c3a2f834e BitmapTextBatch and BitmapTextBlob
BUG=skia:

Committed: https://skia.googlesource.com/skia/+/eed1dae04932483579b02c10f0706127d3f5d984

Review URL: https://codereview.chromium.org/1011403004
2015-03-31 13:32:05 -07:00
joshualitt
c03391e792 Revert of BitmapTextBatch and BitmapTextBlob (patchset #18 id:360001 of https://codereview.chromium.org/1011403004/)
Reason for revert:
Breaks a unit test on mac

Original issue's description:
> BitmapTextBatch and BitmapTextBlob
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/eed1dae04932483579b02c10f0706127d3f5d984

TBR=fmalita@chromium.org,reed@google.com,jvanverth@google.com,robertphillips@google.com,bsalomon@google.com,jvanverth@chromium.org,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1050633002
2015-03-31 11:33:08 -07:00
joshualitt
eed1dae049 BitmapTextBatch and BitmapTextBlob
BUG=skia:

Review URL: https://codereview.chromium.org/1011403004
2015-03-31 11:04:53 -07:00
tomhudson
573ae01295 Move HWUI boilerplate into utils/android
Duplicate code from the HWUI backends for DM and nanobench
moves into a single place, saving a hundred lines or more of
cut-and-paste.

There's some indication that this increases the incidence of
SkCanvas "Unable to find device for layer." warnings, but no
clear degradation in test results.

R=djsollen@google.com,mtklein@google.com
BUG=skia:3589

Review URL: https://codereview.chromium.org/1036303002
2015-03-27 12:22:01 -07:00
halcanary
a096d7a6d0 SkCodec: add wbmp class
Review URL: https://codereview.chromium.org/1006583005
2015-03-27 12:16:53 -07:00
mtklein
36352bf5e3 C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla}
NOPRESUBMIT=true

BUG=skia:
DOCS_PREVIEW= https://skia.org/?cl=1037793002

Review URL: https://codereview.chromium.org/1037793002
2015-03-25 18:17:32 -07:00
scroggo
9c59ebc0db Test scanline decoding in DM.
BUG=skia:3475

Review URL: https://codereview.chromium.org/999173010
2015-03-25 13:48:49 -07:00
mtklein
b3e5e4d314 Lazy SKP image decoding in DM.
@sugoi:
Early out to avoid some segfaults in SkImageDecoder_libjpeg.cpp.
I am just flailing here... things seem to work, but I have no idea why.
This prints out a lot:
    libjpeg error 85 <End Of Image> from output_raw_data [0 0]

@halcanary:
I'm skipping on ImageSrc for now.  Leon's refactoring that quite a lot.

This causes minor diffs for the GPU backend, given that we're now
going through the YUV path.  It also reduced peak RAM usage on
my desktop from 1.26GB to 1.08GB.

BUG=skia:

Review URL: https://codereview.chromium.org/1010983004
2015-03-25 13:13:43 -07:00
scroggo
478652e918 Add copyright headers DM.
Review URL: https://codereview.chromium.org/1037713003
2015-03-25 07:11:02 -07:00
msarett
9bde918754 Enabling ico decoding with use of png and bmp decoders
BUG=skia:3257

NOPRESUBMIT=true

Review URL: https://codereview.chromium.org/1011343003
2015-03-25 05:27:48 -07:00
tomhudson
7aa846c683 Revert of Enabling ico decoding with use of png and bmp decoders (patchset #10 id:280001 of https://codereview.chromium.org/1011343003/)
Reason for revert:
Reverting on suspicion of massive bot failures - possible command line too long?

Original issue's description:
> Enabling ico decoding with use of png and bmp decoders
>
> BUG=skia:3257
>
> Committed: https://skia.googlesource.com/skia/+/15bfd075d38e4422a477e22940d06a137f66cc97

TBR=scroggo@google.com,reed@google.com,djsollen@google.com,msarett@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:3257

Review URL: https://codereview.chromium.org/1022843005
2015-03-24 13:47:41 -07:00
tomhudson
48dc6dc52e Switch DM to use utils/android/SkAndroidSDKCanvas
Use (better) paint filter shared with nanobench, instead
of custom implementation.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/1036523002
2015-03-24 12:46:40 -07:00
msarett
15bfd075d3 Enabling ico decoding with use of png and bmp decoders
BUG=skia:3257

Review URL: https://codereview.chromium.org/1011343003
2015-03-24 12:24:27 -07:00
mtklein
02f46cf878 Some usability ideas around SkTHash.
- By default, use new SkGoodHash to hash keys, which is:
    * for 4 byte values, use SkChecksum::Mix,
    * for SkStrings, use SkChecksum::Murmur3 on the data,
    * for other structs, shallow hash the struct with Murmur3.
  - Expand SkChecksum::Murmur3 to support non-4-byte-aligned data.
  - Add const foreach() methods.
  - Have foreach() take a functor, which allows lambdas.

BUG=skia:

Review URL: https://codereview.chromium.org/1021033002
2015-03-20 13:48:42 -07:00
reed
3ef71e343b guarded change to SkImageGenerator to make getInfo() const
BUG=skia:

Review URL: https://codereview.chromium.org/1017293002
2015-03-19 08:31:14 -07:00
scroggo
9b77ddde08 Run CodecSrc DM.
Rather than making SkCodec an option instead of SkImageDecoder,
create a separate CodecSrc. This allows us to compare the two.

For both CodecSrc and ImageSrc, do not decode to a gpu backend.

BUG=skia:3475

Review URL: https://codereview.chromium.org/978823002
2015-03-19 06:03:39 -07:00
mtklein
b37cb41a8b Display currently running tests as the keepalive message.
...
( 466MB   550) 31.9ms   gpu gm colorwheelnative
( 466MB   549) 50.1ms   gpu gm colorwheel
( 468MB   548) 512ms    gpu gm colortype_xfermodes
Currently running:
    unit test PathOpsRectsThreaded
    unit test PathOpsSimplifyDegeneratesThreaded
    unit test PathOpsSimplifyQuadralateralsThreaded
    gpu gm colortype

( 468MB   547) 90.8ms   gpu gm colortype
( 469MB   546) 2.03s    unit test PathOpsSimplifyDegeneratesThreaded
...

BUG=skia:

Review URL: https://codereview.chromium.org/1017903002
2015-03-18 05:27:14 -07:00
msarett
741143878b Revert "Revert of fix for invalid for loop syntax broke build (patchset #1 id:1 of https://codereview.chromium.org/1007373003/)"
This reverts commit d18475854c.

Revert "Revert "Implementation of image decoding for bmp files, in accordance with the new API.""

This reverts commit dfdec78a5d.

BUG=skia:

TBR=

Review URL: https://codereview.chromium.org/1016443003
2015-03-16 11:55:18 -07:00
msarett
dfdec78a5d Revert "Implementation of image decoding for bmp files, in accordance with the new API."
This reverts commit 3675874468.

BUG=skia:
NOTREECHECKS=true
NOTRY=true
TBR=

Review URL: https://codereview.chromium.org/1012873002
2015-03-16 11:07:02 -07:00
mtklein
ffa901aa7e DM: allow SKPs to be smaller than 1000x1000
This sniffs the .skp dimensions and intersects them with our 1000x1000 viewport.

This fixes things like desk_carsvg.skp, which is only 902 pixels tall.  In 565 now,
the remaining 98 pixels draw as black, which looks funny and is confusing to triage.

No apparent affect on DM memory usage.  (We're about to map the file anyway.)

BUG=skia:

Review URL: https://codereview.chromium.org/986103002
2015-03-16 10:38:07 -07:00
msarett
3675874468 Implementation of image decoding for bmp files, in accordance with the new API.
Currently decodes to opaque and unpremul.

Tested on local test suite.

BUG=skia:3257

Review URL: https://codereview.chromium.org/947283002
2015-03-16 08:27:53 -07:00
mtklein
95553d917c DM: display current memory usage (instead of peak) when available.
Seems strictly more useful.

This implements Mac and Windows, which seemed easy.  Don't know how to do this on Linux yet.

BUG=skia:

CQ_EXTRA_TRYBOTS=client.skia:Test-Mac10.9-MacMini6.2-HD4000-x86_64-Debug-Trybot

NOTREECHECKS=true
TBR=halcanary@google.com

Review URL: https://codereview.chromium.org/990723002
2015-03-12 08:24:21 -07:00
mtklein
2e1c47e135 Rejigger keep-alive thread so TSAN and LSAN don't complain.
BUG=skia:

Review URL: https://codereview.chromium.org/1006443002
2015-03-12 07:16:56 -07:00
mtklein
de6fc2bf46 DM: add keepalive for Valgrind bot.
BUG=skia:

Review URL: https://codereview.chromium.org/998263003
2015-03-12 06:28:54 -07:00