Commit Graph

839 Commits

Author SHA1 Message Date
mtklein
3f73e8c8d5 CrashHandler for Windows.
Plus, print out assertion failures on Windows,
and some little tweaks to CrashHandler on other platforms for consistency.

BUG=skia:
R=bungeman@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/340523007
2014-06-19 07:41:59 -07:00
tfarina
bcbc1788b4 Refactor how we handle resources path in Tests.
This idea emerged while doing https://codereview.chromium.org/321723002/
(commit 880914c35c).

BUG=None
TEST=make tests && out/Debug/tests
R=mtklein@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/346453002
2014-06-18 14:32:49 -07:00
mtklein
4ea2661cbd No CrashHandler for NACL bots.
CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Ubuntu13.10-GCC4.8-NaCl-Debug-Trybot

BUG=skia:
R=mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/344603005
2014-06-18 12:29:01 -07:00
mtklein
30e6e2af14 Add basic stacktrace handler using libunwind.
This means we will all have to apt-get install libunwind8-dev on Linux.  Mac comes with everything we need already.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/343583005
2014-06-18 11:44:18 -07:00
scroggo
f01a6c3663 In Android framework, make tools depend on jsoncpp
Always build the tools with JSON, but either build our own
or use the system's.

Rename skia_build_json_writer to skia_use_system_jsoncpp,
since we now always build with JSON.

Remove SK_BUILD_JSON_WRITER, which was only there so
we could build without JSON it in the framework.

BUG=skia:2448
R=djsollen@google.com, reed@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/303913002
2014-06-18 10:31:40 -07:00
egdaniel
12c2198535 Remove dashing from gpu veto
With new veto our new veto test results look like the following:
TP: true positive (picked to use gpu and gpu was faster)
I: inderminate, the raster time is withing 5% of gpu time

        TP  FP  TN  FN  I

old     21  9   15  12  3
new     29  12  11  6   3

There are three skps that tend to move from TN -> FP, however
the absolute difference in their run times are not huge between
them. The largest being desk_booking which is about 7.1 raster
and 8.8 gpu. The other two skps are desk_yahooanswers and
desk_linkedin

BUG=skia:
R=bsalomon@google.com, robertphillips@google.com

Author: egdaniel@google.com

Review URL: https://codereview.chromium.org/334053005
2014-06-18 07:34:39 -07:00
caryclark
e4097e3a0b Fix last pathops skp bug
This fixes the last bug discovered by iterating through the 800K
skp corpus representing the top 1M websites. For every clip on the
stack, the paths are replaced with the pathop intersection. The
resulting draw is compared with the original draw for pixel errors.

At least two prominent bugs remain. In one, the winding value is
confused by a cubic with an inflection. In the other, a quad/cubic
pair, nearly coincident, fails to find an intersection.

These minor changes include ignoring very tiny self-intersections
of cubics, and processing degenerate edges that don't connect to
anything else.

R=reed@android.com
TBR=reed

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/340103002
2014-06-18 07:24:19 -07:00
bensong
2668617ea2 Removes Record configs from buildbot bench_pictures runs.
BUG=skia:
NOTRY=true
R=borenet@google.com, mtklein@google.com

Author: bensong@google.com

Review URL: https://codereview.chromium.org/338413002
2014-06-18 05:59:55 -07:00
mtklein
887f3979f0 Add EXPERIMENTAL_beginRecording() for SkRecord-based recording.
The interesting stuff is in SkPictureRecorder.{h,cpp}.  The rest is mostly moving SkRecord from its own directories into core to avoid circular dependencies in GYP.

After plumbing SkRecord all the way through in Picture, I'll delete its old entry point include/record/SkRecording.h.  For now it and record.gypi need to stay where they are to keep Chrome building.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/331573004
2014-06-17 12:08:16 -07:00
reed
c3b3266b7d hide SkBitmap::Config entirely (behind a flag)
patch from issue 339463002

TBR=

I think the NoGPU failure is unrelated, so ignoring
NOTRY=True

Author: reed@google.com

Review URL: https://codereview.chromium.org/340533002
2014-06-17 08:38:31 -07:00
caryclark
dac1d17027 Enabling the canvas bit to turn the clip stack into a flat replace exposed around 100 failures when testing the 800K skp set generated from the top 1M web sites.
This fixes all but one of those failures.

Major changes include:
- Replace angle indices with angle pointers. This was motivated by the need to add angles later but not renumber existing angles.
- Aggressive segment chase. When the winding is known on a segment, more aggressively passing that winding to adjacent segments allows fragmented data sets to succeed.
- Line segments with ends nearly the same are treated as coincident first.
- Transfer partial coincidence by observing that if segment A is partially coincident to B and C then B and C may be partially coincident.

TBR=reed

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/272153002
2014-06-17 05:15:38 -07:00
mtklein
90c471e73f Refine bench_record and bench_playback:
- use high-precision wall timer only
  - warm caches once before measuring
  - measure independent samples, calculating statistics
  - add --verbose to control how much data we output

Also removed some unloved features from bench_record.

BUG=skia:
R=jcgregorio@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/338203002
2014-06-16 14:04:34 -07:00
tfarina
851eabe564 Minor cleanups in picture_utils header file.
1) Remove unused include.
2) Remove unused forward declarations.

BUG=None
TEST=make tests
R=epoger@google.com
TBR=epoger@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/339493004
2014-06-15 20:10:44 -07:00
reed
0689d7b12e stop using SkBitmap::Config
R=scroggo@google.com

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/338493005
2014-06-14 05:30:20 -07:00
tfarina
055cf91416 Delete unused path_utils.* component.
filter tool includes it but isn't using, and nobody else seems to
be using it either. So just remove it now.

BUG=None
TEST=make filter
R=mtklein@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/324273002
2014-06-14 04:50:04 -07:00
reed
bfefc7c95f hide Config in SkImageDecoder -- use SkColorType instead
patch from issue 334613003

TBR=scroggo

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/334793002
2014-06-12 17:40:00 -07:00
tfarina
da4ed3289e Cleanup: Delete sk_tools::make_filepath() in favor of SkOSPath::SkPathJoin().
BUG=None
TEST=make tools tests && out/Debug/tests
R=epoger@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/327403002
2014-06-12 08:50:56 -07:00
mtklein
3b94b78b77 Suppress libpoppler and its dependent liblcms in TSAN.
This will let us eventually turn PDF back on in DM.

BUG=skia:
R=halcanary@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/330433003
2014-06-11 17:22:14 -07:00
tfarina
1c99ea8ed8 Cleanup: Delete sk_tools::get_basename() in favor of SkOSPath::SkBasename().
BUG=None
TEST=make tests && out/Debug/tests
R=epoger@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/321693002
2014-06-11 08:58:50 -07:00
mtklein
812202724d Silence TSAN warnings about is_lcd_supported for now.
BUG=skia:1792

NOTRY=true
R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/328663006
2014-06-10 12:52:09 -07:00
reed
6c22573edb hide SkBitmap::setConfig
patch from issue 325733002

TBR=scroggo

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/322963002
2014-06-09 19:52:07 -07:00
mtklein
00dfb9ea7b bench_record: No need for --flags if there are no RecordingFlags anymore.
BUG=skia:
R=robertphillips@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/327533002
2014-06-09 08:04:15 -07:00
epoger
89e8842821 remove GM result-grooming tools that use skia-autogen
BUG=skia:553
R=borenet@google.com

Author: epoger@google.com

Review URL: https://codereview.chromium.org/320443002
2014-06-09 06:49:13 -07:00
robertphillips
9f1c241e0d Remove SkPicture::kUsePathBoundsForClip_RecordingFlag
The real question is whether we ever want to record a picture without using the path bounds for a conservative (but faster) clip answer?

R=reed@google.com, mtklein@google.com, djsollen@google.com, scroggo@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/316143003
2014-06-09 06:25:34 -07:00
mtklein
a8928b745a Add SkBarriers_tsan.h.
Slight counterproposal to crrev.com/310663002.

BUG=skia:

No API changes.

R=bungeman@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/306373002
2014-06-06 06:21:49 -07:00
epoger
b144271179 reland "rebaseline_server: download actual-results.json files from GCS instead of SVN"
relands https://codereview.chromium.org/310093003 with modifications.

BUG=skia:2641
R=jcgregorio@google.com

Author: epoger@google.com

Review URL: https://codereview.chromium.org/313343003
2014-06-05 10:30:37 -07:00
borenet
2e81e51d1e Fix submit_try
BUG=skia:2643
R=epoger@google.com, tfarina@chromium.org

Author: borenet@google.com

Review URL: https://codereview.chromium.org/317823003
2014-06-05 07:32:15 -07:00
epoger
77f68b623e Revert "rebaseline_server: download actual-results.json files from GCS instead of SVN"
This reverts commit f4666045f3.

BUG=skia:2641
NOTREECHECKS=True
NOTRY=True
R=jcgregorio@google.com
TBR=jcgregorio

Author: epoger@google.com

Review URL: https://codereview.chromium.org/317783004
2014-06-04 15:09:18 -07:00
epoger
f4666045f3 rebaseline_server: download actual-results.json files from GCS instead of SVN
BUG=skia:553
R=borenet@google.com

Author: epoger@google.com

Review URL: https://codereview.chromium.org/310093003
2014-06-04 10:02:58 -07:00
robertphillips
9b14f26d0f Alter SkCanvas::drawPicture (devirtualize, take const SkPicture, take pointer)
R=reed@google.com, bsalomon@google.com, mtklein@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/313613004
2014-06-04 05:40:44 -07:00
kelvinly
06fdc6937d Added grid data to logging output
BUG=skia:
R=bensong@google.com, jcgregorio@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/318433003
2014-06-03 15:43:34 -07:00
mtklein
59ef7704f1 Revert of Try TSAN blacklist for SkGLContextHelper::init. (https://codereview.chromium.org/309823004/)
Reason for revert:
the bot's clang doesn't know -fsanitize-blacklist

Original issue's description:
> Try TSAN blacklist for SkGLContextHelper::init.
>
> Submitting to test this; this particular problem only happens on the bot.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/ab2ec19b975a898d4ee2278ddad7d4268f134478

R=mtklein@chromium.org
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/314543002
2014-06-02 19:34:20 -07:00
mtklein
ab2ec19b97 Try TSAN blacklist for SkGLContextHelper::init.
Submitting to test this; this particular problem only happens on the bot.

BUG=skia:
R=mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/309823004
2014-06-02 19:11:06 -07:00
mtklein
a78ef795b0 Tweak TSAN suppressions.
BUG=skia:
R=mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/312613002
2014-06-02 16:40:06 -07:00
epoger
8ff38ccb40 use most innocuous characters possible within skimage output filenames
BUG=skia:2634
R=scroggo@google.com

Author: epoger@google.com

Review URL: https://codereview.chromium.org/302323003
2014-06-02 14:26:18 -07:00
epoger
fc435a020a Revert of stop using brackets within skimage output filenames (https://codereview.chromium.org/303263012/)
Reason for revert:
Broke http://108.170.220.120:10117/builders/Test-ChromeOS-Link-HD4000-x86_64-Release/builds/2806/steps/UploadSKImageResults/logs/stdio :

[13:38:43.401942] /bin/sh: 1: Syntax error: "(" unexpected
[13:38:43.902632] Command /home/chrome-bot/buildbot/skiabot-shuttle-ubuntu12-003/buildbot/third_party/chromium_buildbot/scripts/slave/../../third_party/gsutil/gsutil cp -a private /home/chrome-bot/buildbot/skiabot-shuttle-ubuntu12-003/buildbot/third_party/chromium_buildbot/slave/Test-ChromeOS-Link-HD4000-x86_64-Release/build/skia/out/Release/skimage_out/images/bitmap-64bitMD5/webp-test-webp-(123,263,587,394)/16263897892077508819.png gs://chromium-skia-gm/skimage/output/images/bitmap-64bitMD5/webp-test-webp-(123,263,587,394)/16263897892077508819.png failed with retcode 2, try 1.

Original issue's description:
> stop using brackets within skimage output filenames
>
> BUG=skia:2634
>
> Committed: https://skia.googlesource.com/skia/+/f07892413cd2359549dc187f1d10bc48d7d263ba

R=scroggo@google.com
TBR=scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2634

Author: epoger@google.com

Review URL: https://codereview.chromium.org/314443002
2014-06-02 13:46:21 -07:00
epoger
f07892413c stop using brackets within skimage output filenames
BUG=skia:2634
R=scroggo@google.com

Author: epoger@google.com

Review URL: https://codereview.chromium.org/303263012
2014-06-02 13:35:22 -07:00
mtklein
be7de4fc42 Update TSAN suppressions.
TSAN suppressions need to be on their own line, even free of comments.

Also, temporarily add SK_ANNOTATE_UNPROTECTED_READ to sk_acquire_load.
Will remove this when we're done iterating on SkBarriers_tsan.h: TSAN
has an atomic load that makes the annotation moot.

BUG=skia:
R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/308073013
2014-06-02 13:23:49 -07:00
skia.committer@gmail.com
9681eebb0e Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@14984 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-30 03:06:10 +00:00
commit-bot@chromium.org
37c772ae2d Reland https://codereview.chromium.org/286903025
BUG=skia:
R=bensong@google.com, epoger@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/304613002

git-svn-id: http://skia.googlecode.com/svn/trunk@14966 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-29 17:10:24 +00:00
commit-bot@chromium.org
a095041f51 Remove SkRecorder's kWriteOnly mode.
I'm soon going to have SkRecorder start calling getTotalMatrix(), which
would be broken in write-only mode.  That change is big and nebulous,
but it's clear kWriteOnly needs to go, so we might as well kill it now.

My notes in bench_playback about kWriteOnly mode being important were
probably overly cautious.  I now think this is a fair enough comparison
even re-recording into a read-write canvas.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/290653004

git-svn-id: http://skia.googlecode.com/svn/trunk@14963 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-29 16:52:40 +00:00
commit-bot@chromium.org
cac02e52cd Bench rebaseline from codereview: fix is_finished
R=epoger@google.com, bensong@google.com
TBR=benchen, epoger
BUG=skia:2225
NOTREECHECKS=true
NOTRY=true

Author: borenet@google.com

Review URL: https://codereview.chromium.org/304943002

git-svn-id: http://skia.googlecode.com/svn/trunk@14962 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-29 16:05:48 +00:00
commit-bot@chromium.org
e65a44a9e2 Bench Rebaseline from Codereview: separate out all_trybots_finished()
BUG=skia:2225
NOTREECHECKS=true
R=epoger@google.com, bensong@google.com

Author: borenet@google.com

Review URL: https://codereview.chromium.org/301143002

git-svn-id: http://skia.googlecode.com/svn/trunk@14951 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-29 14:31:28 +00:00
commit-bot@chromium.org
93d7bb6fc6 add a verbose flag to skdiff that shows the progress and status of
each comparison

BUG=
R=bungeman@google.com

Author: humper@google.com

Review URL: https://codereview.chromium.org/302443012

git-svn-id: http://skia.googlecode.com/svn/trunk@14923 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-28 18:26:00 +00:00
commit-bot@chromium.org
ea6cb91170 Add script to rebaseline benches from codereview trybot results
This script is designed to be used by the RecreateSKPs bot.  Eventually, the bot will:
1. Generate new SKPs
2. Upload the new SKPs to a subdirectory with an ID or generation number.
3. Change Skia to use the new SKPs:
    a. Create and upload a Skia CL which changes the "current SKP generation" file to point to the new SKPs
    b. Launch Perf trybots on that CL.
    c. Call this script every 5 minutes until it successfully creates new baselines for each of the launched Perf bots.
    d. Add the new baselines to the CL
    e. Upload a second patch set of the CL
    f. Check the CQ bit on the CL

BUG=skia:2225
R=epoger@google.com, halcanary@google.com, bensong@google.com

Author: borenet@google.com

Review URL: https://codereview.chromium.org/297893004

git-svn-id: http://skia.googlecode.com/svn/trunk@14921 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-28 17:30:10 +00:00
commit-bot@chromium.org
293a4b367a Revert of PictureBenchmark JSON logging (https://codereview.chromium.org/286903025/)
Reason for revert:
Broke some Windows builds; see http://skbug.com/2609 ('certain Windows Build-* bots failing since r14905').

Before re-landing with a fix, please send to some of the trybots that failed the first time.

Original issue's description:
> Add JSON logging support to bench_pictures by adding a PictureResultsWriter class (in tools/PictureResultsWriter.h) to process logging information, using a very similar style as bench/ResultsWriter.h
>
> JSON format described in code, above PictureJSONResultsWriter class
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14906

R=bensong@google.com, jcgregorio@google.com, kelvinly@google.com
TBR=bensong@google.com, jcgregorio@google.com, kelvinly@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2609

Author: epoger@google.com

Review URL: https://codereview.chromium.org/306483010

git-svn-id: http://skia.googlecode.com/svn/trunk@14910 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-27 21:51:38 +00:00
commit-bot@chromium.org
3089004cc8 Add JSON logging support to bench_pictures by adding a PictureResultsWriter class (in tools/PictureResultsWriter.h) to process logging information, using a very similar style as bench/ResultsWriter.h
JSON format described in code, above PictureJSONResultsWriter class

BUG=skia:
R=bensong@google.com, jcgregorio@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/286903025

git-svn-id: http://skia.googlecode.com/svn/trunk@14906 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-27 20:57:44 +00:00
commit-bot@chromium.org
2d970b5128 hide discardable factory from public imagegenerator api
BUG=skia:
R=halcanary@google.com, scroggo@google.com, djsollen@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/295243006

git-svn-id: http://skia.googlecode.com/svn/trunk@14889 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-27 14:14:22 +00:00
commit-bot@chromium.org
ba7aedd6ea Revert of Turn on preprocessing by default (https://codereview.chromium.org/299033002/)
Reason for revert:
Don't want this enabled by default right now

Original issue's description:
> Turn on preprocessing by default
>
> The idea is to commit this late at night and then revert it after all the perf bots are running. It should only effect the GPU configs.
>
> Committed: http://code.google.com/p/skia/source/detail?r=14860

R=bsalomon@google.com
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/299123002

git-svn-id: http://skia.googlecode.com/svn/trunk@14861 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-23 01:02:21 +00:00
commit-bot@chromium.org
0df2e8d5a6 Turn on preprocessing by default
The idea is to commit this late at night and then revert it after all the perf bots are running. It should only effect the GPU configs.

R=bsalomon@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/299033002

git-svn-id: http://skia.googlecode.com/svn/trunk@14860 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-22 23:27:27 +00:00