Commit Graph

942 Commits

Author SHA1 Message Date
mtklein
4c07b6b58f BenchSysTimer_mach drops all sub-ms precision. Fix that!
BUG=skia:
R=bungeman@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/336903005
2014-06-17 07:06:29 -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
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
kelvinly
fa1eaaa843 Added in framework to get more bench data
BUG=skia:
NOTRY=true
R=jcgregorio@google.com, bensong@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/331683003
2014-06-12 11:27:40 -07:00
bensong
e8433c36e0 Really revert bench trigger changes.
BUG=skia:
NOTRY=true
R=kelvinly@google.com
TBR=kelvinly@google.com

Author: bensong@google.com

Review URL: https://codereview.chromium.org/324403009
2014-06-12 08:05:43 -07:00
kelvinly
607953200d Revert trigger changes
BUG=skia:
NOTRY=true
R=robertphillips@google.com, bensong@google.com, jcgregorio@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/334673002
2014-06-12 06:40:58 -07:00
kelvinly
1acb8df76d Narrowed expectation margins noticeably
BUG=skia:
NOTRY=true
R=bensong@google.com, bsalomon@google.com, jcgregorio@google.com, robertphillips@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/323373002
2014-06-11 08:05:12 -07:00
kelvinly
5a220a1f47 Fix what I just broke
BUG=skia:
NOTRY=true
TBR=bensong@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/328883003
2014-06-10 15:32:45 -07:00
kelvinly
10dc56c468 Fix broken rebaseline code
BUG=skia:
NOTRY=true
R=bensong@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/327943003
2014-06-10 15:24:39 -07:00
kelvinly
b6f431612f Try 1 at rebaseline
BUG=skia:
R=bensong@google.com, bsalomon@google.com, robertphillips@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/324083007
2014-06-10 15:05:08 -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
tfarina
880914c35c Reland "Clean up Test's resourcePath code."
This relands commit 91359bed48 (Clean up
Test's resourcePath code."

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

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/321723002
2014-06-09 12:05:34 -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
91359bed48 Revert of Clean up Test's resourcePath code. (https://codereview.chromium.org/319473003/)
Reason for revert:
Some benchmarks are written in a way that makes this change unsafe (e.g. const char* resPath = GetResourcePath().c_str(); in SkipZeroesBench) and Valgrind and ASAN caught that.  We can try again after a more careful cleanup of GetResourcePath().

Original issue's description:
> Clean up resourcePath code.
>
> 1) Make the implementation of SetResourcePath/GetResourcePath of GM and SkBenchmark match with the one in Test.
> 2) Make gResourcePath a static pointer to const char and move it inside the classes.
>
> BUG=None
> TEST=make tests && out/Debug/tests
>      make gm && out/Debug/gm
>      make bench && out/Debug/bench
> R=mtklein@google.com
>
> Committed: https://skia.googlesource.com/skia/+/52e4f413ffe2d281f9e90ff2147db08083ffcba7

R=tfarina@chromium.org
TBR=tfarina@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=None

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/320733002
2014-06-08 07:02:47 -07:00
tfarina
52e4f413ff Clean up resourcePath code.
1) Make the implementation of SetResourcePath/GetResourcePath of GM and SkBenchmark match with the one in Test.
2) Make gResourcePath a static pointer to const char and move it inside the classes.

BUG=None
TEST=make tests && out/Debug/tests
     make gm && out/Debug/gm
     make bench && out/Debug/bench

R=mtklein@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/319473003
2014-06-07 20:50:44 -07:00
robertphillips
c2fce56522 Add bench for rectanizers
R=bsalomon@google.com, jvanverth@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/319523003
2014-06-05 07:18:03 -07:00
krajcevski
9a3cdbb3d0 Two new benches for ETC1 bitmaps.
First bench: Simply render from a compressed ETC1 bitmap. This is roughly
equal between compressed and uncompressed data.

Second bench: Notify the bitmap that the pixels have changed (that's right,
like a liar) to force a re-upload to the GPU. On this bench, decompressed
textures seem to inexplicably do an order of magnitude better than
compressed textures when it should be the other way around, but that
investigation is reserved for a future CL.

R=robertphillips@google.com

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/317023002
2014-06-05 07:03:39 -07:00
egdaniel
05bb6f136d Add bench to measure drawing a dashed grid
BUG=skia:
R=bsalomon@google.com

Author: egdaniel@google.com

Review URL: https://codereview.chromium.org/310083005
2014-06-04 08:15:31 -07:00
mtklein
cf44feb0e1 Clean up another silly race in benches when run concurrently.
BUG=skia:
R=mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/309193003
2014-06-02 18:22:12 -07:00
mtklein
80f709a0d7 TSAN caught us racing in ScalarBench.cpp
http://108.170.220.102:10117/builders/Test-Ubuntu13-ShuttleA-HD2000-x86_64-Debug-TSAN/builds/914/steps/RunDM/logs/stdio

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=14992

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

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/305033002
2014-06-02 12:41:07 -07:00
commit-bot@chromium.org
3dd6368232 Revert of TSAN caught us racing in ScalarBench.cpp (https://codereview.chromium.org/305033002/)
Reason for revert:
windows doesn't like it

Original issue's description:
> TSAN caught us racing in ScalarBench.cpp
>
> http://108.170.220.102:10117/builders/Test-Ubuntu13-ShuttleA-HD2000-x86_64-Debug-TSAN/builds/914/steps/RunDM/logs/stdio
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14992

R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14994 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-30 15:09:44 +00:00
commit-bot@chromium.org
ee982ed52b TSAN caught us racing in ScalarBench.cpp
http://108.170.220.102:10117/builders/Test-Ubuntu13-ShuttleA-HD2000-x86_64-Debug-TSAN/builds/914/steps/RunDM/logs/stdio

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

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14992 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-30 14:56:58 +00: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
dcba9931a3 Add sk_memcpy32 to Memcpy bench.
The bench predates the implementation in SkUtils, but now that we've got it of course we want to measure our actual implementation.

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

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14942 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-28 22:47:26 +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
5f640a30b9 Adds angle to bench expectation configs.
BUG=skia:2576
R=robertphillips@google.com
TBR=robertphillips@google.com
NOTRY=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14866 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-23 13:05:33 +00:00
commit-bot@chromium.org
0be2d8354b Fix memcpy32_sse2_unalign.
The whole point of mempcy32_sse2_unalign is that we didn't align dst128
and src128.  So it's not safe at all to cast them back to dst and src.
That tells the compiler that dst/src are 128-bit aligned, and then it
autovectorizes the cleanup while-loop using that (false) knowledge with
aligned SSE instructions.

This leads to crashes on memcpy32_sse2_unalign_10, which is small enough
that we actually get non-16-byte aligned memory.  The larger size
benches could be crashing too, but they're big enough allocations that
they're probably always 16-byte aligned anyway.

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

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14851 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-22 18:24:42 +00:00
commit-bot@chromium.org
4885d500f1 Disable bench that's crashing on ChromeOS/Alex perf bot.
BUG=skia:2589
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14843 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-22 13:18:32 +00:00
commit-bot@chromium.org
83f23d87f1 Remove unused (by clients) SkUnitMapper
This reverts commit 874423a81b5bc2541c7397e6ab00d5e7c9fdaf98.

TBR=scroggo

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14842 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-22 12:27:41 +00:00
commit-bot@chromium.org
3339ac54a5 Revert of Remove unused (by clients) SkUnitMapper (https://codereview.chromium.org/283273002/) (https://codereview.chromium.org/288343009/)
Reason for revert:
required blink change failed to land

Original issue's description:
> Remove unused (by clients) SkUnitMapper (https://codereview.chromium.org/283273002/)
>
> This reverts commit dd50c83b5b34dab3a077741861b50ed1f2bc6b8f.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14830

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

Author: reed@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14838 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-22 02:55:59 +00:00
commit-bot@chromium.org
4b8f802255 Remove unused (by clients) SkUnitMapper (https://codereview.chromium.org/283273002/)
This reverts commit dd50c83b5b34dab3a077741861b50ed1f2bc6b8f.

BUG=skia:
R=scroggo@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14830 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-21 19:56:46 +00:00
skia.committer@gmail.com
29de433b06 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@14817 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-21 03:05:49 +00:00
commit-bot@chromium.org
97133ade53 Changed JSON formatting more, workaround bug where SkStringPrintf causes encoding issues
BUG=skia:
R=bensong@google.com, jcgregorio@google.com, reed@google.com, bsalomon@google.com

Author: kelvinly@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14808 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-20 17:35:10 +00:00
commit-bot@chromium.org
c4e416ce49 Add Memcpy32 bench.
This compares 32-bit copies using memcpy, autovectorization, and when SSE2 is
available, aligned and unaligned SSE2.

Running this on my desktop (Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz), I see
all four perform essentially the same, except Clang's autovectorization looks
 a little better than GCC's.  memcpy is calling libc 2.19's __memcpy_sse2_unaligned.


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

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14799 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-20 14:54:04 +00:00
commit-bot@chromium.org
71e55762e6 Changed JSON formatting to fit BigQuery requirements
BUG=skia:
R=bensong@google.com, jcgregorio@google.com

Author: kelvinly@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14784 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-19 17:29:01 +00:00
commit-bot@chromium.org
e2b193ca5c Revert of remove unused (by clients) SkUnitMapper (https://codereview.chromium.org/283273002/)
Reason for revert:
does not address all legacy callsites in chrome.

e.g.

[13:45:32.091872] ../../ui/native_theme/native_theme_base.cc:608:76: error: no matching function for call to ‘SkGradientShader::CreateLinear(SkPoint [3], SkColor [3], NULL, int, SkShader::TileMode, NULL)’
[13:45:32.091919]            gradient_bounds, colors, NULL, 3, SkShader::kClamp_TileMode, NULL));


Original issue's description:
> remove unused (by clients) SkUnitMapper
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14761

R=robertphillips@google.com, scroggo@google.com, george@mozilla.com
TBR=george@mozilla.com, robertphillips@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14763 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-16 13:49:08 +00:00
commit-bot@chromium.org
ee0cac336c remove unused (by clients) SkUnitMapper
BUG=skia:
R=robertphillips@google.com, scroggo@google.com, george@mozilla.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14761 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-16 13:35:01 +00:00
commit-bot@chromium.org
61744ec1d2 Generate bench/Android.mk from gyp.
For now, remove json functionality and do not depend on json. This
allows us to build and run until solving skbug.com/2448.

bench/DeferredSurfaceCopyBench.cpp:
Include GrRenderTarget last, so SK_SUPPORT_GPU will be set properly.

bench/ResultsWriter.h:
bench/benchmain.cpp:
Remove JSONResultsWriter when SK_BUILD_JSON_WRITER is not defined,
which is the case for the Android framework build.

gyp/bench.gyp:
Depend on skia and cutils (for android_atomic_inc etc).

gyp/common_conditions.gypi:
Define SK_BUILD_JSON_WRITER when skia_build_json_writer is set.

gyp/common_variables.gypi:
Add a flag for skia_build_json_writer, and set it only when
skia_android_framework is not set.

gyp/jsoncpp.gyp:
Do not build jsoncpp when skia_build_json_writer is not defined.
include/utils/SkJSONCPP.h:
Do not include json headers when SK_BUILD_JSON_WRITER is not defined.

platform_tools/android/bin/gyp_to_android.py:
Generate bench/Android.mk.

platform_tools/android/gyp_gen/gypd_parser.py:
Skip dest_dir when checking for include_dirs.

platform_tools/android/gyp_gen/makefile_writer.py:
Build bench/Android.mk when building external/skia.

platform_tools/android/gyp_gen/tool_makefile_writer.py:
Add a parameter for putting the binary into /data/local/tmp.

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

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14760 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-16 13:15:41 +00:00
commit-bot@chromium.org
9d439a707e Adds dashboard link for one-line plot on each alert item.
BUG=skia:2523
NOTRY=true
R=kelvinly@google.com
TBR=rmistry@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14713 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-13 17:38:17 +00:00
commit-bot@chromium.org
261d0153e2 Clean up global gSkSuppressFontCachePurgeSpew.
No one is using it except to flick it to true to shut up the spew,
but the spew is already guarded by #ifdef SPEW_PURGE_STATUS.  Let's
leave it to SPEW_PURGE_STATUS.

Noticed this specificially when TSAN complained about FontScalerBench
modifying it in a thread-unsafe way.

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

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14697 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-12 15:48:38 +00:00
commit-bot@chromium.org
1961c08a38 Adds the ability to filter bench expectations in builder/config level.
BUG=skia:2539
NOTRY=true
R=rmistry@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14694 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-12 14:36:43 +00:00
commit-bot@chromium.org
e49157f083 Factor GrTexture into public GrTexture and private GrTextureImpl.
Committed: http://code.google.com/p/skia/source/detail?r=14680

R=jvanverth@google.com, robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14687 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-09 20:46:48 +00:00
commit-bot@chromium.org
59e7d23852 Revert of Factor GrTexture into public GrTexture and private GrTextureImpl. (https://codereview.chromium.org/275903002/)
Reason for revert:
Breaks chrome build.

Original issue's description:
> Factor GrTexture into public GrTexture and private GrTextureImpl.
>
> Committed: http://code.google.com/p/skia/source/detail?r=14680

R=jvanverth@google.com, robertphillips@google.com
TBR=jvanverth@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14681 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-09 18:02:51 +00:00
commit-bot@chromium.org
bd465d141b Factor GrTexture into public GrTexture and private GrTextureImpl.
R=jvanverth@google.com, robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14680 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-09 17:37:55 +00:00
commit-bot@chromium.org
95c2003740 cleanup GrContext resource cache api
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14669 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-09 14:29:32 +00:00
commit-bot@chromium.org
8a2151f0ae Remove global SkRandoms from ChartBench.
TSAN picked them up while running DM.

BUG=skia:1792
R=bsalomon@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14641 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-08 15:12:43 +00:00
commit-bot@chromium.org
44e3f715e6 GameBench: curCell doesn't need to be extra state.
We're using a static curCell to loop around the atlas.  We can just use i.

Noticed this when TSAN complained about it.  Parallel invocations of the
game bench were stomping on each other's curCell.

BUG=skia:1792
R=robertphillips@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14617 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-07 17:12:55 +00:00
commit-bot@chromium.org
c9c5c42bbb Relaxes bench range upper bound by a bit.
BUG=skia:
R=robertphillips@google.com
TBR=robertphillips@google.com
NOTRY=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14585 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-06 04:49:13 +00:00
commit-bot@chromium.org
d06ee4580c Fixes lower/upper typo.
BUG=skia:
R=robertphillips@google.com
TBR=robertphillips@google.com
NOTRY=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14556 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-03 13:03:48 +00:00
commit-bot@chromium.org
59d318b9f7 Use a separate error parameter for lower bound.
BUG=skia:
R=robertphillips@google.com
TBR=robertphillips@google.com
NOTRY=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14555 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-03 12:58:59 +00:00
commit-bot@chromium.org
379475f709 further adjust bench lower bounds to cope with downside flakiness.
BUG=skia:2225
R=robertphillips@google.com
TBR=robertphillips@google.com
NOTRY=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14554 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-03 12:40:14 +00:00
commit-bot@chromium.org
089a780c33 Split GrResource into GrCacheable/GrGpuObject
Before this change, an object needed to inherit from GrResource (and
thus be a GPU object) in order to live in the GrResourceCache. That
was a problem for caching items that weren't GPU objects themselves,
but owned GPU objects.

This change splits GrResource into two classes:

  1. GrCacheable: The base class for objects that can live in the
     GrResourceCache.

  2. GrGpuObject, which inherits from GrCacheable: The base class for
     objects that get tracked by GrGpu.

This change is purely a refactor; there is no change in functionality.

Change-Id: I3e8daeb1f123041f414aa306c1366e959ae9e39e

BUG=skia:
R=bsalomon@google.com

Author: cdalton@nvidia.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14553 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-02 21:38:22 +00:00
commit-bot@chromium.org
ae4976c9d0 reduce total number of segments in giant-dash
still exercises large coordinates, but won't kill our memory usage on 32bit bots

NOTRY=True
R=caryclark@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14502 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-01 15:30:52 +00:00
commit-bot@chromium.org
1a98a0604b one valgrind.supp to rule them all.
R=mtklein@google.com, robertphillips@google.com, borenet@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14487 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-30 21:10:13 +00:00
commit-bot@chromium.org
0f298cc125 Use SkDebugf to print when GrContext can't be created for a config.
Also, don't label it an "Error". New output matches that of GM.

BUG=skia:2494
R=caryclark@google.com, bensong@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14470 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-30 15:54:29 +00:00
commit-bot@chromium.org
88cb22b6b4 Convert GrCrash->SkFAIL GrDebugCrash->SkDEBUGFAIL
R=robertphillips@google.com, reed@google.com, mtklein@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14460 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-30 14:17:00 +00:00
commit-bot@chromium.org
8cb46b963a Adds a blacklist of SKPs to exclude from bench expectations.
BUG=skia:2469
NOTRY=true
NOTREECHECKS=true
R=caryclark@google.com
TBR=caryclark@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14422 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 20:20:43 +00:00
commit-bot@chromium.org
e396455d2d move common blur types into central header
BUG=skia:
R=scroggo@google.com, djsollen@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14411 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 16:25:35 +00:00
commit-bot@chromium.org
02a5a09334 Tune bench expectation algorithm parameters.
BUG=skia:2225
NOTRY=true
NOTREECHECKS=true
R=bsalomon@google.com
TBR=bsalomon@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14386 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-25 22:03:39 +00:00
bsalomon@google.com
f1c0135425 Rework ATI driver suppressions for bench valgrind
Review URL: https://codereview.chromium.org/256623003

git-svn-id: http://skia.googlecode.com/svn/trunk@14363 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-24 20:12:38 +00:00
commit-bot@chromium.org
76a3b2abd0 Remove support for inheriting the paint color from SkColorShader
BUG=skia:2453
R=reed@google.com, mtklein@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14355 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-24 16:54:46 +00:00
commit-bot@chromium.org
b2db44376e Rename benchmark classes, hopefully less confusing to valgrid?
I was able to reproduce the problem, but Valgrind was giving me a very odd
report, pointing to a particular line in QuadTreeBench.cpp from a stack that
was running RTreeBench.

Whenever Valgrind complains, it's always about switch(fQuery), line 109 in
QuadTreeBench or 119 in RTreeBench.  I can't see any way that fQuery is not
initialized.

I believe we've just confused Valgrind by linking together  classes with
identical names.  This CL gives them all unique names.

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

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14338 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-23 21:03:45 +00:00
bsalomon@google.com
034c66b57f Add valgrind suppressions for fglrx
BUG=skia:2450
TBR=robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14337 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-23 20:25:04 +00:00
bsalomon@google.com
d7ee4b6699 Change valgrind suppresion names for bug 2455.
BUG=skia:2455

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14312 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-22 19:58:58 +00:00
bsalomon@google.com
f7ad002b3e Update valgrind suppression names for bug 2453
BUG=skia:2453

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14309 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-22 19:30:16 +00:00
bsalomon@google.com
6419ee64ee Mark bench suppressions with bug #
BUG=skia:2452

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14308 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-22 19:17:54 +00:00
bsalomon@google.com
f1eba21838 Add Valgrind suppression file for bench
BUG=skia:2450
R=robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14306 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-22 18:47:02 +00:00
commit-bot@chromium.org
4bbe2e552a Add --runOnce flag to run benchs once in release or to force convergence in debug
R=mtklein@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14292 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-21 21:12:32 +00:00
robertphillips@google.com
770963f23f Staging for cleanup of SkPicture-related headers
https://codereview.chromium.org/243173002



git-svn-id: http://skia.googlecode.com/svn/trunk@14258 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-18 18:04:41 +00:00
commit-bot@chromium.org
091a594dbc Reduce internal explicit SaveFlags usage.
Most of these are either redundant/defaults or (hopefully)
unnecessarily specific.

R=reed@google.com, robertphillips@google.com

Author: fmalita@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14253 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-18 14:19:31 +00:00
skia.committer@gmail.com
60bd7519a9 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@14252 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-18 03:03:54 +00:00
commit-bot@chromium.org
5fb2ce38b3 Staged removal of SkPicture-derived classes
This CL removes the SkPicture-derived classes (with a flag to keeps clients working). In the process it also lightens the recording factory function so it is no longer ref counted).

The only interesting bits are in SkPicture* and Sk*Picture.*

R=reed@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14251 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-17 23:35:06 +00:00
commit-bot@chromium.org
73cb15351f Make sure SkDrawLooper objects can only be allocated on the heap.
Make constructors of SkLayerDrawLooper and SkBlurDrawLooper non-public.
Remove addLayer* methods from SkLayerDrawLooper. SkLayerDrawLooper::Builder is
used to create new objects.
Provide factory method for creating SkBlurDrawLooper.

BUG=2141
R=scroggo@google.com, reed@google.com, djsollen@google.com

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14200 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-15 15:48:36 +00:00
commit-bot@chromium.org
95f79261ad Add conical special cases to GradientBench
BUG=skia:
R=reed@google.com, bsalomon@google.com, robertphillips@google.com

Author: egdaniel@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14182 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-14 16:02:31 +00:00
skia.committer@gmail.com
5199701acb Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@14172 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-14 03:04:57 +00:00
robertphillips@google.com
84b18c7e3e split SkPictureRecorder out of SkPicture
https://codereview.chromium.org/214953003/



git-svn-id: http://skia.googlecode.com/svn/trunk@14171 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-13 19:09:42 +00:00
commit-bot@chromium.org
a1bf8be772 Further adjust bench expectations calculation.
BUG=skia:2225
TBR=robertphillips@google.com
NOTRY=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14165 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 19:54:16 +00:00
commit-bot@chromium.org
28fcae2ec7 Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)
Reason for revert:
Want to reland the original CL.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, bensong@google.com
TBR=bensong@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14156 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 17:15:40 +00:00
commit-bot@chromium.org
96edc24598 Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
Reason for revert:
Chrome's side of define changes not easy to figure out quickly. Reverting this for DEPS roll for now.

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14149 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 13:47:30 +00:00
commit-bot@chromium.org
d923288e50 Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)
Reason for revert:
fixes on the chrome side are landing (brettw), keep fingers crossed.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14145 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 22:49:20 +00:00
commit-bot@chromium.org
757ebd20ef Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
Reason for revert:
breaking the Chrome deps roll.
http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14144 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 22:36:34 +00:00
senorblanco@chromium.org
0d64356efd Add a new bench that tests a simple image filter DAG.
This bench exercises a blur filter connected to 5 inputs of the same
merge filter.

R=junov@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14135 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 16:16:13 +00:00
commit-bot@chromium.org
149e9a107c Rename kPMColor_SkColorType to kN32_SkColorType.
The new name better represents what this flag means.

BUG=skia:2384
R=reed@google.com

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14117 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-09 20:45:29 +00:00
commit-bot@chromium.org
093ed317cb Adjusts the bench expectations calculation to consider average value.
BUG=skia:2225
NOTRY=true
R=borenet@google.com
TBR=borenet@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14112 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-09 18:57:02 +00:00
commit-bot@chromium.org
9fbbcca1c9 SkPerlinNoiseShader::CreateTubulenceNoise() is misspelled
Add missing 'r'.

BUG=skia:2329
R=bsalomon@google.com, hcm@google.com, sugoi@chromium.org

Author: siglesias@igalia.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14008 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-01 16:09:37 +00:00
commit-bot@chromium.org
35c03fbf10 Remove scaleToFit from DashPathEffect
BUG=skia:
R=reed@google.com, bsalomon@google.com, scroggo@google.com

Author: egdaniel@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13999 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-31 18:52:51 +00:00
commit-bot@chromium.org
cb3f07940c Adds bench expectations to expectations/bench; fixes bench alert test's dependency on script line number.
BUG=skia:2307
NOTRY=true
R=borenet@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13979 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-28 17:55:51 +00:00
skia.committer@gmail.com
db0c875377 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13845 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 03:02:11 +00:00
commit-bot@chromium.org
a713f9c6f6 add new readPixels with direct memory parameters
BUG=skia:
R=scroggo@google.com, bsalomon@google.com, robertphillips@google.com, fmalita@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13840 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 21:31:26 +00:00
commit-bot@chromium.org
b1bcb21631 gen_bench_expectations to generate bench expectations files.
BUG=skia:2225
NOTRY=true
R=borenet@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13838 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 21:16:29 +00:00
commit-bot@chromium.org
949b9986de Fast implementation of QuadTree
Rewritten to avoid memory allocations.

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

Author: iancottrell@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13826 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 10:38:34 +00:00
commit-bot@chromium.org
68bda15ccf Removes bench expectations files. New place is skia-autogen svn repo. See https://codereview.chromium.org/196653010/
BUG=skia:2225
NOTRY=true
NOTREECHECKS=true
TBR=borenet@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13818 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 23:42:16 +00:00
commit-bot@chromium.org
56b7a6d52c --dryRun flag for bench
causes bench to print out what tests it would be running, without actually running them.

BUG=skia:2294
R=reed@google.com

Author: humper@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13787 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 16:22:00 +00:00
commit-bot@chromium.org
84cd099704 Clean up SkImageFilter.
Rename more occurences of 'target' to 'kernelOffset'.
This is a follow-up patch to
https://codereview.chromium.org/182983003/

BUG=skia:2187
R=senorblanco@chromium.org

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13768 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 16:36:08 +00:00
commit-bot@chromium.org
758bc7aa48 Stores per-iteration bench values in BenchDataPoint.
BUG=skia:2225
NOTRY=true
R=borenet@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13767 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 16:23:33 +00:00
robertphillips@google.com
cf69bf4662 Rebaseline performance triggers for Mac10.6 & N7
https://codereview.chromium.org/196573006/



git-svn-id: http://skia.googlecode.com/svn/trunk@13761 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 13:35:23 +00:00
commit-bot@chromium.org
a64ed0fd68 bench rebaseline after Brian's improvement e5a041c
BUG=skia:2274
NOTRY=true
R=bsalomon@google.com
TBR=bsalomon@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13738 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 14:28:10 +00:00
commit-bot@chromium.org
cac5fd597f Factory methods for heap-allocated SkImageFilter objects.
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkImageFilter and its subclasses non-public
and instead provides factory methods for creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.

BUG=skia:2187
R=scroggo@google.com, mtklein@chromium.org, reed@google.com, senorblanco@google.com, senorblanco@chromium.org, bsalomon@google.com, sugoi@chromium.org, zork@chromium.org

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13718 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 10:51:58 +00:00
skia.committer@gmail.com
e62513fb92 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13714 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-08 03:02:06 +00:00
commit-bot@chromium.org
4cd9e2169e Add SkCanvas::writePixels that takes info+pixels directly
add corresponding methods to device (w/ diff name to avoid colliding with exising virtuals)

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

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13697 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 03:25:16 +00:00
commit-bot@chromium.org
1b28f6f1ce Adding this call simulates seeing a *different* bitmap every time we scale, which changes the code path (places much heavier load on constructing a new filter). This better emulates the kind of environment most embedders see us in, where they try to cache a scaled bitmap rather than frequently rescaling it.
This change will cause significant regressions in microbenchmark scores.

BUG=skia:2236
R=humper@google.com, reed@google.com, scroggo@google.com, tomhudson@google.com

Author: tomhudson@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13685 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 17:16:37 +00:00
commit-bot@chromium.org
b83ec64dde bench rebase after skp update.
BUG=skia:2163
NOTRY=true
R=rmistry@google.com
TBR=rmistry@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13647 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 22:50:13 +00:00
commit-bot@chromium.org
4fcc3ca411 Add GrSet class built on top of RedBlackTree
BUG=skia:
R=bsalomon@google.com

Author: egdaniel@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13616 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 20:23:22 +00:00
reed@google.com
48f31bdbb3 try to deprecate fFlagsMask from SkLayerDrawLooper
We think we want to move around how flags/fields like linearText and strikeThru
are specified. SkPaint has helpers for nearly all of these, but LayerInfo in
the draw looper just exposes the raw bitfield.

On survey of chrome/android, it appears that no one uses those, so it may be
safe to just remove the feature entirely from the looper.

R=bungeman@google.com, scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13607 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 14:27:44 +00:00
commit-bot@chromium.org
38aeb0fd7a DM: also run benches once.
Also:
  - make GrMemoryPoolBenches threadsafe
  - some tweaks to various DM code
  - rename GM::shortName() to getName() to match benches and tests

On my desktop, (289 GMs, 617 benches) x 4 configs, 227 tests takes 46s in Debug, 14s in Release.  (Still minutes faster than running tests && bench && gm.)  GPU singlethreading is definitely the limiting factor again; going to reexamine whether that's helpful to thread it again.

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

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13603 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 23:01:57 +00:00
commit-bot@chromium.org
1e762d39bb Adjusts one Win7 bench expectation (googlespreadsheetdashed, scalar1.1_gpu).
BUG=skia:2163
NOTRY=true
R=rmistry@google.com
TBR=rmistry@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13591 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 16:19:21 +00:00
commit-bot@chromium.org
575d9cd270 Simplify GM-as-bench code.
Tested: bench --match GM
running bench [870 540] GM:convex_poly_clip


BUG=skia:
R=bsalomon@google.com, mtklein@google.com, brian@thesalomons.net

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13573 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 23:25:49 +00:00
commit-bot@chromium.org
2e34b21dc5 adjust one mac bench range.
BUG=skia:2163
NOTRY=true
R=robertphillips@google.com
TBR=robertphillips@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13563 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 16:37:45 +00:00
commit-bot@chromium.org
f54ea1073b bench rebaseline with new parameters.
BUG=skia:2163
NOTRY=true
R=rmistry@google.com
TBR=rmistry@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13560 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 14:27:35 +00:00
commit-bot@chromium.org
6c2f0becf4 Removes bench alerts for googleplus, forecastio.
BUG=skia:2163
NOTRY=true
R=scroggo@google.com
TBR=scroggo@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13554 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-23 15:18:39 +00:00
commit-bot@chromium.org
d5b294acad Removes some dynamic SKPs from bench alerts.
BUG=skia:2163
R=scroggo@google.com
TBR=scroggo@google.com
NOTRY=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13552 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-22 21:53:13 +00:00
commit-bot@chromium.org
495fe2ccc1 Rebaseline bench with a little wider ranges.
BUG=skia:2163
NOTRY=true
R=scroggo@google.com
TBR=scroggo@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13550 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-22 00:37:18 +00:00
commit-bot@chromium.org
727a352f74 Factory methods for heap-allocated SkColorFilter objects.
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkColorFilter and its subclasses non-public
and instead provides factory methods for creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.

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

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13539 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 18:46:30 +00:00
commit-bot@chromium.org
d832f1d5b5 Bench rebaseline after Brian's Android improvement.
BUG=skia:2169
NOTRY=true
TBR=scroggo@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13522 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 22:01:53 +00:00
commit-bot@chromium.org
0a2bf90dcc Factory methods for heap-allocated SkPathEffect and SkXfermode objects.
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkPathEffect, SkXfermode and
their subclasses non-public and instead provides factory methods for
creating these objects on the heap. We temporarily keep the constructors
of the following classes public to not break Chrome/Blink:

SkXfermode
SkCornerPathEffect
SkDashPathEffect

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

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13519 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 20:40:19 +00:00
commit-bot@chromium.org
557e3cda9a Separates faster and slower bench alerts; sorts by delta.
Separate faster and slower bench alerts; sort by delta.

BUG=skia:2193
NOTRY=true
R=epoger@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13512 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 15:58:32 +00:00
commit-bot@chromium.org
63822639e4 Upstream fix for DecodeBench.
Use SkBasename to get the basename.

Fixes a bug on Android where calling strrchar conflicts with
Android's setting for FORTIFY_SOURCE.

R=djsollen@google.com

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13511 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 15:41:17 +00:00
commit-bot@chromium.org
0dd2109c7e Rebaseline bench after nightly Chrome update.
BUG=skia:2198
R=rmistry@google.com
TBR=scroggo@google.com
NOTRY=true
NOTREECHECKS=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13510 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 14:03:47 +00:00
commit-bot@chromium.org
d58c9c8b81 Fix bench to compile when SK_SUPPORTS_GPU is not provided as a compiler option
In the case that SK_SUPPORTS_GPU is not provided to the compiler, the value is
either defined in in the SkUserConfig.h or SkPostConfig.h. Prior to this change
HairlinePathBench would test that value before including anything, which led to
build errors.

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

Author: cdalton@nvidia.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13502 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-19 19:30:42 +00:00
commit-bot@chromium.org
06ea6067fc Adjust allowed error from 0.5 to 2.5.
BUG=skia:2169
NOTRY=true
R=jvanverth@google.com
TBR=jvanverth@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13450 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-14 14:26:01 +00:00
commit-bot@chromium.org
81cdf2381f Small adjustments of two bench ranges.
BUG=skia:2169
NOTRY=true
R=jvanverth@google.com
TBR=jvanverth@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13445 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-13 22:52:51 +00:00
commit-bot@chromium.org
a4b9b39dda Use a bench alert algorithm with wider ranges. TBR=jvanverth NOTRY=true
BUG=skia:2169
R=jvanverth@google.com, bsalomon@google.com, robertphillips@google.com
TBR=jvanverth@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13440 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-13 20:40:56 +00:00
commit-bot@chromium.org
ed3bb1a3a5 Bench rebaseline to use narrower ranges. This also tests the new range calculation algorithm.
BUG=skia:2163
R=robertphillips@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13433 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-13 17:16:56 +00:00
commit-bot@chromium.org
e07dfe54c4 Update Mac 10.6 bench expectation for tabl_worldjournal.
R=robertphillips@google.com
TBR=robertphillips@google.com

Author: jvanverth@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13414 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 20:27:05 +00:00
fmalita@google.com
f04c21dd64 More bench rebaselines for new SKPs.
Review URL: https://codereview.chromium.org/130633009

git-svn-id: http://skia.googlecode.com/svn/trunk@13372 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 21:21:14 +00:00
commit-bot@chromium.org
b21fac156d Make GMs aware of what tool they're being run in.
Add a saveLayer set of draws to convex_poly_clip and fix GPU bug where polygon clips don't account for the translation between clip and device space.

BUG=skia:2051
R=robertphillips@google.com, reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13371 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 21:13:11 +00:00
fmalita@google.com
244b288431 Fix garbled Nexus7 bench expectations entry.
Review URL: https://codereview.chromium.org/136953009

git-svn-id: http://skia.googlecode.com/svn/trunk@13368 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 18:43:40 +00:00
fmalita@google.com
480ae28b64 Bench rebaseline for the new SKPs
TBR=robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13365 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 17:14:01 +00:00
reed@google.com
ace135453d impl getROPixels for gpu SkImage
BUG=skia:
R=jvanverth@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13352 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-06 22:00:58 +00:00
robertphillips@google.com
30555b4c34 Wider perf trigger range for N4 and N7 perf improvements
https://codereview.chromium.org/141013019/



git-svn-id: http://skia.googlecode.com/svn/trunk@13317 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-05 13:35:56 +00:00
commit-bot@chromium.org
0f53122f89 Fix crash in bench when "--mode record" is used
R=mtklein@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13310 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-04 19:32:37 +00:00
reed@google.com
28183b4043 remove (unused by chrome) SkDeferredCanvas(device) factory signature
BUG=skia:
R=junov@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13302 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-04 15:34:10 +00:00
reed@google.com
1bc6c6aa7e change benchmark to use surfaces instead of devices to specify its backends
BUG=skia:
R=mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13297 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-04 14:02:44 +00:00
commit-bot@chromium.org
c22d139808 Initial QuadTree implementation
In an effort to find a faster bounding box hierarchy than the R-Tree, a QuadTree has been implemented here.
For now, the QuadTree construction is generally faster than the R-Tree and the queries are a bit slower, so overall, SKP local tests showed QuadTree performance similar to the R-Tree performance.

Tests and bench are included in this cl.

At this point, I'd like to be able to commit this in order to more easily use the bots to test multiple configurations and a larger number of SKPs. The R-Tree BBH is still used by default so this change shouldn't affect chromium.

BUG=skia:
R=junov@chromium.org, junov@google.com, senorblanco@google.com, senorblanco@chromium.org, reed@google.com, sugoi@google.com, fmalita@google.com

Author: sugoi@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13282 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-03 18:08:33 +00:00
commit-bot@chromium.org
6adce6783c Allow GMs to be used as benchmarks. Make convex_poly_clip opt in.
R=reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13279 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-03 14:48:17 +00:00
robertphillips@google.com
78319ced50 Performance trigger rebaselines
https://codereview.chromium.org/151833004/



git-svn-id: http://skia.googlecode.com/svn/trunk@13275 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-01 15:44:30 +00:00
commit-bot@chromium.org
084545e14f rebaseline perf because of faster tests after GPU glur changes
BUG=skia:
R=robertphillips@google.com

Author: humper@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13240 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-30 17:27:45 +00:00
commit-bot@chromium.org
78dd91d1af Revert "Revert of Workaround for assertion in NVPR config in bench. (https://codereview.chromium.org/131503007/)"
add SK_SUPPORT_GPU check

BUG=skia:2042

TBR=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13203 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-27 19:52:51 +00:00
commit-bot@chromium.org
594aa5e39d Revert of Workaround for assertion in NVPR config in bench. (https://codereview.chromium.org/131503007/)
Reason for revert:
broke the build.

Original issue's description:
> Workaround for assertion in NVPR config in bench.
>
> BUG=skia:2078
>
> Committed: http://code.google.com/p/skia/source/detail?r=13196

R=robertphillips@google.com
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2078

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13199 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-27 18:06:03 +00:00
commit-bot@chromium.org
fbd3047d23 Workaround for assertion in NVPR config in bench.
BUG=skia:2078
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13196 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-27 17:36:38 +00:00
commit-bot@chromium.org
e8989578cd Add NVPR configs to bench
BUG=skia:2042
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13188 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-26 20:51:00 +00:00
commit-bot@chromium.org
3a9ade7f37 Updates bench expectations; adds new platforms.
BUG=skia:
R=borenet@google.com, robertphillips@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13179 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-24 21:50:03 +00:00
commit-bot@chromium.org
6dda827913 add leaks flag to show unref'd insts
Leaks are shown optionally instead of always for tests, gm, and bench.
The current display does not show actual leaks necessarily, but
shows global objects that were not deleted when the test ended.
To enable the end-of-run leak display, pass --leaks or -l.

BUG=skia:
R=mtklein@google.com

Author: caryclark@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13151 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-23 17:21:19 +00:00
commit-bot@chromium.org
19382421b9 Convert SkWriter32 to use an SkTDArray for its internal storage.
This reduces the allocation overhead of a null picture (create, beginRecording(), endRecording) from about 18K to about 1.9K.  (There's still lots more to prune.)

SkPictureFlat can exploit the fact that Writer32 is contiguous simplify its memory management.  The Writer32 itself becomes the scratch buffer.

Remove lots and lots of arbitrary magic numbers that were size guesses and minimum allocation sizes.  Keep your eyes open for the big obvious DUH why we save 16K per picture!  (Spoiler alert.  It's because that first save we issue in beginRecording() forces the old SkWriter32 to allocate 16K.)

Tests passing, DM passing.

bench --match writer: ~20% faster
null bench_record: ~30% faster
bench_record on buildbot .skps: ~3-6% slower, ranging 25% faster to 20% slower
bench_pictures on buildbot .skps: ~1-2% faster, ranging 13% faster to 28% slower

BUG=skia:1850
R=reed@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13073 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-14 20:51:26 +00:00
commit-bot@chromium.org
c45ece5f7f NEON fast path for box blur
Calculate 8 channels in parallel by using 16-bits to store each channel. Due to the limitation of VQRDMULH, (int16 * int16 * 2 + 0x8000) >> 16, the fast path can only support kernelSize < 128.
8 significant bits are kept at least in each stage, the final error should less-equal than 1.

Pre-fetching memory for X-direction read. In fact pre-fetching memory doesn't help much for Y direction read, since it is a waste to load a cache line for only read 8 bytes.(I left it there to keep the symmetry. pre-fetch is cheap :) )

bench data on Nexus 10
before:
running bench [640 480]      blur_image_filter_large_10.00_10.00   8888:  cmsecs =  25081.48
running bench [640 480]      blur_image_filter_small_10.00_10.00   8888:  cmsecs =  25038.04
running bench [640 480]        blur_image_filter_large_1.00_1.00   8888:  cmsecs =  25209.04
running bench [640 480]        blur_image_filter_small_1.00_1.00   8888:  cmsecs =  24928.01
running bench [640 480]        blur_image_filter_large_0.00_1.00   8888:  cmsecs =  17160.98
running bench [640 480]       blur_image_filter_large_0.00_10.00   8888:  cmsecs =  17924.11
running bench [640 480]        blur_image_filter_large_1.00_0.00   8888:  cmsecs =  14609.19
running bench [640 480]       blur_image_filter_large_10.00_0.00   8888:  cmsecs =  14625.91

after:
running bench [640 480]      blur_image_filter_large_10.00_10.00   8888:  cmsecs =  14848.42
running bench [640 480]      blur_image_filter_small_10.00_10.00   8888:  cmsecs =  16037.29
running bench [640 480]        blur_image_filter_large_1.00_1.00   8888:  cmsecs =  14819.55
running bench [640 480]        blur_image_filter_small_1.00_1.00   8888:  cmsecs =  14563.69
running bench [640 480]        blur_image_filter_large_0.00_1.00   8888:  cmsecs =  11905.34
running bench [640 480]       blur_image_filter_large_0.00_10.00   8888:  cmsecs =  11883.85
running bench [640 480]        blur_image_filter_large_1.00_0.00   8888:  cmsecs =   9576.51
running bench [640 480]       blur_image_filter_large_10.00_0.00   8888:  cmsecs =   9793.84

BUG=
R=senorblanco@chromium.org, mtklein@google.com, reed@google.com, kevin.petit@arm.com, kevin.petit.arm@gmail.com

Author: zheng.xu@arm.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13036 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-13 08:16:45 +00:00
borenet@google.com
6f0f5b4aad Remove references to Skia's SVN repository
BUG=
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13006 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-09 21:41:39 +00:00
commit-bot@chromium.org
1034ef1af4 Revert of https://codereview.chromium.org/127223004/
Reason for revert: VS can't comprehend std::vector without exceptions.

R=bsalomon@google.com, caryclark@google.com, mtklein@chromium.org
TBR=bsalomon@google.com, caryclark@google.com, mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12975 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-08 21:31:11 +00:00
commit-bot@chromium.org
506ecc24bf For comparison, add std::vector.
Where I've tested, it's second-place to SkTDArray, though the closest API equivalent in our code is SkTArray, which it's significantly faster than.  This is probably a good approximation to how fast we can possibly make something like SkTArray that constructs and destroys its values.  In fact, it might be worth trying making SkTArray a thin shim over std::vector.

BUG=
R=bsalomon@google.com, caryclark@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12969 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-08 21:16:04 +00:00