Bug: chromium:897031
Bug: chromium:896776
Prior to this fix, we would treat the output from such a JPEG
as if it were a 16 bit per component RGB PNG. We hit an assert
in debug, but in release mode we do the wrong thing.
Split up SkSwizzler::CreateSwizzler into two public factories
(and a private one) based on whether format conversion is desired.
Without format conversion, we may have already converted (as is
the case with this JPEG), so the SkEncodedInfo::Color is not relevant.
That flavor of the factory just needs to know the bytes per pixel,
so provide that info instead.
Add a test file to Google Storage: apron.jpg, from Chromium's
benchmark files.
Change-Id: If1337d58a508466299f9e4666778727c6cdc879a
Reviewed-on: https://skia-review.googlesource.com/c/164619
Auto-Submit: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Pubsub errors are causing lots of flaky bot failures
Bug: skia:
Change-Id: I2fc6d57d296899faea36d37dd93fa1e381cea199
Reviewed-on: https://skia-review.googlesource.com/c/164048
Commit-Queue: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Eric Boren <borenet@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
The bloaty here was compiled with this patch:
https://github.com/google/bloaty/pull/149
Hopefully that lands upstream and we can track master again.
This adds BuildStats.+Debug because we need symbols
to get sensical data. Bloaty's WASM support is experimental
and currently doesn't support having a stripped (Release)
version be profiled using the symbols of a Debug version.
This means that the buildStats for debug will be higher
than actual, but hopefully the absolute positioning will be
the same and thus the outputs useful.
Bug: skia:
Change-Id: Id7bf721843e8c52a0aae2b7e57ff95397693b3dd
Reviewed-on: https://skia-review.googlesource.com/c/163256
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Of note, the perf results reported are not directly
comparable CPU->GPU because the GPU ones are likely
emulated (no real gpu in the Docker container on an
GCE VM).
Bug: skia:
Change-Id: I52259085f4d9e22c45b67f3e8ce1211a5c6c6d3e
Reviewed-on: https://skia-review.googlesource.com/c/163126
Reviewed-by: Kevin Lubick <kjlubick@google.com>
- Initialize rowsDecoded in SkSampledCodec. Otherwise,
fillIncompleteImage may be called with an uninitialized
value. This change was originally uploaded to AOSP as
https://android-review.googlesource.com/c/platform/external/skia/+/785816
- If SkPngCodec hits an error, still transform from the
interlace buffer (if needed) and set rowsDecoded properly.
- Do not copy uninitialized memory from the interlace buffer.
- Make BRD treat kErrorInInput like kIncompleteInput. The two errors
are different for the purposes of incremental decode. For a direct
decode, they're essentially the same - part was decoded, but then
the decode was interrupted. This allows testing images with
errors on the bots without reporting a failure.
- Add some images to test incomplete pngs
- errorInInput.png: color_wheel.png truncated with extra 0s at the
end to trigger kErrorInInput
- incInterlaced.png: basi3p02.png (from PNGSuite) similarly modified.
This triggers kIncompleteInput. We have several incomplete PNGs that
we are testing on the bots, but this is the first interlaced
- errorInInputInterlaced.png: This is the same as incInterlaced with
more zeroes at the end. The incorrect CRC (all zeroes) results in
kErrorInInput
Change-Id: I25e1ea917e1c1ca212f104cb9d70290265a51b2d
Reviewed-on: https://skia-review.googlesource.com/c/161822
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Also make a CPU only and GPU only build (although
the latter still has a lot of CPU logic).
Bug: skia:
Change-Id: I857c2300021c2adb5344865c28e4ad3e8d332954
Reviewed-on: https://skia-review.googlesource.com/c/162022
Reviewed-by: Kevin Lubick <kjlubick@google.com>
That's what their treemap says and we should try to match it.
Bug: skia:
Change-Id: Iefa95c0440eb6b45a94a72c1beffb8a1199152a4
Reviewed-on: https://skia-review.googlesource.com/c/161825
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
We have a similar ingestion strategy to Gold.
I tried to use something off the shelf like benchmark.js
but passing the PathKit context into the benchmarks was
non-trivial. Plus, making a basic benchmarking tool
ended up being not too hard.
We should be able to re-use the docker container/aggregator
for CanvasKit too.
Bug: skia:
Change-Id: I613dfc58ea57c31cf71566a8ac55f8df9272ad25
Reviewed-on: https://skia-review.googlesource.com/c/161620
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
This creates a nice readable display, since Bloaty
doesn't allow filtering through the CLI.
Additionally, rename the flutter job to accurately
represent what settings it actually is (32 bit ARM built
with clang).
Bug: skia:
Change-Id: Iaed313caf43a31105adc8c85c545cc6cb2bcbe30
Reviewed-on: https://skia-review.googlesource.com/c/160920
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Bug: skia:
Change-Id: Ibb47179315d191af5023039212e4c9b5e784bb75
Reviewed-on: https://skia-review.googlesource.com/c/160765
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Building CanvasKit uses very similar logic to PathKit, so there
was a fair amount of copy/paste/customize.
Fixes the name of skia.js/wasm -> canvaskit.js/wasm and
adds a package.json to formally track versions.
Also move PathKit helper scripts to align better.
Docs-Preview: https://skia.org/?cl=160463
Bug: skia:
Change-Id: Ie75b30592dcc4d520dca41f6f5579006aaa8849b
Reviewed-on: https://skia-review.googlesource.com/c/160463
Reviewed-by: Eric Boren <borenet@google.com>
Additionally, include the revision name in the json file name
to avoid collisions.
Bug: skia:
Change-Id: I6601c28679f82406721d740041a60077b460c0f4
Reviewed-on: https://skia-review.googlesource.com/c/160560
Reviewed-by: Eric Boren <borenet@google.com>
Uses Docker to compile an APK and then run it on an emulator.
We use a specialized image for build (includes Clang, etc)
And then the 3rd party base image for just the test (which
has the emulator and SDK on it).
Bug: skia:7578, skia:7692
Change-Id: I948e0b091868e7173b00e3affd7c3d59a5cd1ec2
Reviewed-on: https://skia-review.googlesource.com/c/159681
Reviewed-by: Stephan Altmueller <stephana@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
This should be extensible to do something similar
for libskia and other outputs.
Bug: skia:
Change-Id: Id9f30a82f4eb0e7ce868a32409b1be429917e7f6
Reviewed-on: https://skia-review.googlesource.com/c/160220
Reviewed-by: Eric Boren <borenet@google.com>
Automatic commit by the UpdateGoDEPS bot.
TBR=borenet@google.com
Change-Id: Ief8d475f1f6b44cd52a7e96da08937fac657daa5
Reviewed-on: https://skia-review.googlesource.com/c/159401
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: Eric Boren <borenet@google.com>
Bug: 784662
Change-Id: I49b8b396956e3442713ca2750fe19fd35f0797f0
Reviewed-on: https://skia-review.googlesource.com/158221
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
The go_deps asset is almost two months old...
Bug: skia:
Change-Id: I3910d1812a3c8ec4b599e959b76f8d60202b877a
Reviewed-on: https://skia-review.googlesource.com/157425
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
This reverts commit 9875bf5ef4.
Reason for revert: Killing ASAN bots.
Original change's description:
> bump NDK packages to r18
>
> Newer Clang, GCC is gone.
>
> Clang now supports half-float math on ARMv8, which is pretty neat.
>
> They've dropped support for everything below NDK version 16,
> which happens to be what we target for 32-bit ARM.
>
> Change-Id: Idd1b1b557c5ecaabec4040026fd2ad5adfee5ee7
> Reviewed-on: https://skia-review.googlesource.com/157260
> Reviewed-by: Derek Sollenberger <djsollen@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
TBR=djsollen@google.com,mtklein@google.com
Change-Id: Iea97d710ed9f17cb38bd08237e8da714ba42ce12
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/157430
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Newer Clang, GCC is gone.
Clang now supports half-float math on ARMv8, which is pretty neat.
They've dropped support for everything below NDK version 16,
which happens to be what we target for 32-bit ARM.
Change-Id: Idd1b1b557c5ecaabec4040026fd2ad5adfee5ee7
Reviewed-on: https://skia-review.googlesource.com/157260
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
This reverts commit 297caafc58.
Reason for revert: I think I have identified a test that shows the perf differences: https://perf.skia.org/e/?begin=1537548564&end=1537984657&keys=5743052312281088
Original change's description:
> [infra] Enable QuadroP400 bots on rack:2
>
> I tried to determine the differences between rack:1 and rack:2 using
> trybots, but didn't have much luck. Hopefully whatever issue that was
> causing differences has gone away, but if not, hopefully it will be
> easier to identify the differences using Perf.
>
> Change-Id: If9b16e8e247737cfc61bf00629eb68b8751bbf3a
> Reviewed-on: https://skia-review.googlesource.com/156500
> Reviewed-by: Kevin Lubick <kjlubick@google.com>
> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
TBR=benjaminwagner@google.com,kjlubick@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: Icc89ef83d0f981d22edb15ef934ac07ba1ab5bf3
Reviewed-on: https://skia-review.googlesource.com/157221
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>