commit-bot@chromium.org
644629c1c7
Implement a benchmark for GrResourceCache
...
Adds "grresourcecache_add" and "grresourcecache_find" bench tests to test
GrResourceCache::add and GrResourceCache::find. The tests work only
with GPU backends, since GrResourceCache needs an GrGpu.
Modifies bench tests to override SkBenchmark::isSuitableFor(Backend)
function that specifies what kind of backend the test is inteded
for. This replaces the previous "fIsRendering" flag that would
indicate test that did no rendering.
Adds SkCanvas::getGrContext() call to get the GrContext that the
canvas ends up drawing to. The member function solves a common
use-case that is also used in the benchmark added here.
R=mtklein@google.com , bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/73643005
git-svn-id: http://skia.googlecode.com/svn/trunk@12334 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-21 06:21:58 +00:00
reed@google.com
126f7f5244
Revert "Revert "speed up A8 by creating a new entry-point in SkDraw that blits the path's coverage directly into an A8 target, regardless of the previous pixel values.""
...
This reverts commit 3c77887b3eb2d32ab668ab4e5f2f9e79103956e8.
BUG=
Review URL: https://codereview.chromium.org/50673005
git-svn-id: http://skia.googlecode.com/svn/trunk@12167 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-07 16:06:53 +00:00
scroggo@google.com
7b05659072
Add gms and benchmarks for drawing blurry round rects.
...
Further changes (https://codereview.chromium.org/48623006 ) will change
the speed at which the bench draws and the drawing of the gm (the gm
change is small).
One of these round rects causes slow drawing in a webpage that we have
observed.
BUG=https://b.corp.google.com/issue?id=11174385
Review URL: https://codereview.chromium.org/52793005
git-svn-id: http://skia.googlecode.com/svn/trunk@12133 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-05 15:57:21 +00:00
reed@google.com
84e922bfb3
Revert "speed up A8 by creating a new entry-point in SkDraw that blits the path's coverage directly into an A8 target, regardless of the previous pixel values."
...
This reverts commit d615e839b71f75df895de6850b774a9e1c28ad2a.
Revert "must initialize SkDraw.fClip"
This reverts commit 108e46d29b5f57927fc8b8c403bb52019d8cb16d.
BUG=
Review URL: https://codereview.chromium.org/57883006
git-svn-id: http://skia.googlecode.com/svn/trunk@12122 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 20:57:36 +00:00
reed@google.com
ac9d306a92
speed up A8 by creating a new entry-point in SkDraw that blits the path's coverage directly into an A8 target, regardless of the previous pixel values.
...
R=bsalomon@google.com , mtklein@google.com
Review URL: https://codereview.chromium.org/56453002
git-svn-id: http://skia.googlecode.com/svn/trunk@12118 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 20:10:33 +00:00
scroggo@google.com
111fd11e11
Bench baseline for mostly 0 image.
...
Add a baseline for decoding a mostly 0 image. This is in advance of
https://codereview.chromium.org/24269006/ which provides an option to
skip writing those 0s (as part of BUG=skia:1661). On my Nexus 4, the
benchmark does not slow down after that change.
As suggested in https://codereview.chromium.org/24269006/ add a
resourcePath flag to bench. Will require a change in buildbot in order
to actually use the flag.
Add an image used by the test.
Until https://codereview.chromium.org/24448002 is submitted,
the test will not actually be run by the bots (since it
won't know where to find the file).
BUG=skia:1661
R=djsollen@google.com , mtklein@google.com
Review URL: https://codereview.chromium.org/24440002
git-svn-id: http://skia.googlecode.com/svn/trunk@11461 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-25 21:42:12 +00:00
mtklein@google.com
c289743864
Major bench refactoring.
...
- Use FLAGS_.
- Remove outer repeat loop.
- Tune inner loop automatically.
BUG=skia:1590
R=epoger@google.com , scroggo@google.com
Review URL: https://codereview.chromium.org/23478013
git-svn-id: http://skia.googlecode.com/svn/trunk@11187 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-10 19:23:38 +00:00
commit-bot@chromium.org
8f4269725b
This bench attempts to recreate Chromium's Canvas_putImageData performance test to track down https://code.google.com/p/chromium/issues/detail?id=270649 .
...
Cranking the repitition count up to 500 on a MacPro yields:
WITHOUT 10624:
running bench [640 480] writepix_rgba_UPM 8888: cmsecs = 748.25 GPU: cmsecs = 225.95 gmsecs = 244.80
running bench [640 480] writepix_rgba_PM 8888: cmsecs = 54.12 GPU: cmsecs = 225.77 gmsecs = 244.59
WITH 10624:
running bench [640 480] writepix_rgba_UPM 8888: cmsecs = 747.70 GPU: cmsecs = 230.30 gmsecs = 249.51
running bench [640 480] writepix_rgba_PM 8888: cmsecs = 55.05 GPU: cmsecs = 230.13 gmsecs = 249.38
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://chromiumcodereview.appspot.com/22895012
git-svn-id: http://skia.googlecode.com/svn/trunk@10761 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-16 00:40:34 +00:00
bsalomon@google.com
aade2e1e19
Add fullscreen rect bench
...
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/21592002
git-svn-id: http://skia.googlecode.com/svn/trunk@10510 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-02 14:39:25 +00:00
senorblanco@chromium.org
350b4d50ea
Remove SkBlendImageFilter, and all tests. Its functionality has been subsumed by SkXfermodeImageFilter.
...
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/21404002
git-svn-id: http://skia.googlecode.com/svn/trunk@10482 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-01 14:59:05 +00:00
reed@google.com
602a1d7025
add scaledimagecache
...
BUG=
Review URL: https://codereview.chromium.org/20005003
git-svn-id: http://skia.googlecode.com/svn/trunk@10286 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-23 19:13:54 +00:00
egdaniel@google.com
a308883003
Add bench for hairline paths.
...
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/19238003
git-svn-id: http://skia.googlecode.com/svn/trunk@10128 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-17 19:30:41 +00:00
humper@google.com
523521c6bc
reenable the scale benchmark, and only bench actual canvas draw commands
...
instead of direct invocations of the (now private) bitmap scale method
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/18941009
git-svn-id: http://skia.googlecode.com/svn/trunk@10027 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-11 20:28:30 +00:00
humper@google.com
b088947f27
New bitmap filter checkin; this time with less build breakage
...
BUG=
Review URL: https://codereview.chromium.org/18942002
git-svn-id: http://skia.googlecode.com/svn/trunk@9944 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-09 21:37:14 +00:00
humper@google.com
1a8940e558
Revert "More general image filter interface; tested implementation of standalone"
...
This reverts commit 4df3e8b079e019af5f60c13e7e6ec6589663962a.
git-svn-id: http://skia.googlecode.com/svn/trunk@9937 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-09 18:02:06 +00:00
humper@google.com
25fc6b9bfb
More general image filter interface; tested implementation of standalone
...
image scaler (not yet plumbed). High quality downsampler. Fast SSE
resampler.
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/17381008
git-svn-id: http://skia.googlecode.com/svn/trunk@9936 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-09 17:48:15 +00:00
reed@google.com
bcb42aecf1
add charsToGlyphs to SkTypeface
...
Will disable new unittest until all backends are implemented.
On Mac, new API is 4x faster than old paint one, so next CL I will reimplement the paint calls in terms of the new typeface call.
R=eae@chromium.org
Review URL: https://codereview.chromium.org/18083023
git-svn-id: http://skia.googlecode.com/svn/trunk@9860 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-02 13:56:39 +00:00
commit-bot@chromium.org
064779aa18
Adding my Bitmap2Path sample for 1on1 meeting.
...
BUG=
R=reed@google.com , borenet@google.com
Author: dierk@google.com
Review URL: https://chromiumcodereview.appspot.com/16829003
git-svn-id: http://skia.googlecode.com/svn/trunk@9843 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-01 17:50:29 +00:00
scroggo@google.com
2bbc2c945b
Add an option to create unpremultiplied bitmaps.
...
Currently they cannot be used directly by Skia, but
the pixels can be used elsewhere.
SkImageDecoder:
Add functions to require unpremultiplied output
and query the presence of the requirement
SkImageDecoder_libpng:
SkImageDecoder_libwebp:
SkImageDecoder_WIC:
Respect the requirement for unpremultiplied output.
TODO: Fix SkImageDecoder_CG.
SkScaledBitmapSampler:
Add procs to skip premultiplication and a boolean
parameter to use those procs.
ImageDecodingTest:
Test unpremultiplied bitmap decoding.
SampleUnpremul:
Add a sample which allows visually comparing between the
unpremultiplied version (copied into a premultiplied bitmap,
since drawing unpremultiplied is not currently supported)
and a premultiplied version of image files.
gm.h:
Add a getter for the resource path, so Samples can use it.
As of patch set 13, https://codereview.chromium.org/16816016/
and https://codereview.chromium.org/16983004/ , which were
approved separately.
R=reed@google.com
Review URL: https://codereview.chromium.org/16410009
git-svn-id: http://skia.googlecode.com/svn/trunk@9612 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-14 15:33:20 +00:00
commit-bot@chromium.org
5f879755f4
Add benchmark for PremultiplyAlpha and UnpremultiplyAlpha in Skia
...
BUG=248549
R=tomhudson@chromium.org , bsalomon@chromium.org , reed@google.com , noel@chromium.org , tomhudson@google.com
Author: jun.a.jiang@intel.com
Review URL: https://chromiumcodereview.appspot.com/16654004
git-svn-id: http://skia.googlecode.com/svn/trunk@9569 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-13 10:18:02 +00:00
reed@google.com
8af0371fe2
add bench for fontcache performance (measurement)
...
BUG=
Review URL: https://codereview.chromium.org/16374009
git-svn-id: http://skia.googlecode.com/svn/trunk@9508 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-11 19:18:44 +00:00
reed@google.com
c117cbae61
add bench for sk_memset16/32
...
BUG=
Review URL: https://codereview.chromium.org/16336009
git-svn-id: http://skia.googlecode.com/svn/trunk@9405 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-03 16:54:10 +00:00
robertphillips@google.com
1d2f631594
add bench for blurred rectori case
...
https://codereview.chromium.org/14690014/
git-svn-id: http://skia.googlecode.com/svn/trunk@9108 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-13 14:10:31 +00:00
robertphillips@google.com
6670ab9e63
Added game-like bench marks
...
https://codereview.chromium.org/14772019/
git-svn-id: http://skia.googlecode.com/svn/trunk@9078 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-09 19:03:48 +00:00
sugoi@google.com
5d71adf4b1
Adding new bench tests for lighting and blur
...
Review URL: https://codereview.chromium.org/14474004
git-svn-id: http://skia.googlecode.com/svn/trunk@8846 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-24 19:36:44 +00:00
sugoi@google.com
580a17241c
Added a few bench for some image filters
...
Review URL: https://codereview.chromium.org/14234019
git-svn-id: http://skia.googlecode.com/svn/trunk@8824 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-23 14:20:45 +00:00
sugoi@google.com
4775cba7b3
Perlin noise adjustments
...
1 ) Added GPU simplex noise as a comparison to GPU Perlin noise. It can be enabled simply by using a #define (SK_USE_SIMPLEX_NOISE)
2 ) Enabled GPU Perlin noise tests
3 ) Added a small benchmark for noise
4 ) Disabled GPU Perlin noise on Android based on benchmarks
Review URL: https://codereview.chromium.org/14087002
git-svn-id: http://skia.googlecode.com/svn/trunk@8719 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-17 13:46:56 +00:00
junov@chromium.org
d61ba6e5cf
Benchmark to measure SkSurface copy on write performance
...
Review URL: https://codereview.chromium.org/14297008
git-svn-id: http://skia.googlecode.com/svn/trunk@8718 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-17 13:43:04 +00:00
commit-bot@chromium.org
d7aaf6034e
Add Xfermode bench. Also clear before rendering in bench (rather than after).
...
Author: bsalomon@google.com
Reviewed By: robertphillips@google.com
Review URL: https://chromiumcodereview.appspot.com/13334011
git-svn-id: http://skia.googlecode.com/svn/trunk@8454 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 12:51:34 +00:00
bsalomon@google.com
4a71997e0d
Add chart bench.
...
Review URL: https://codereview.appspot.com/7368051
git-svn-id: http://skia.googlecode.com/svn/trunk@7821 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-22 15:10:36 +00:00
senorblanco@chromium.org
c3799ada5b
Add a bench for SkBicubicImageFilter.
...
Review URL: https://codereview.appspot.com/7312056
git-svn-id: http://skia.googlecode.com/svn/trunk@7668 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-08 16:40:14 +00:00
reed@google.com
c1f9011ceb
add benchmark for stroked drawRect/drawOval/drawRRect, to prepare for optimizing
...
those based on special-casing stroking for single-contour-convex shapes.
git-svn-id: http://skia.googlecode.com/svn/trunk@7537 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-04 14:57:28 +00:00
reed@google.com
633c32b13b
optimize region::intersect when one wholly contains the other
...
clone of https://codereview.appspot.com/7237055/
git-svn-id: http://skia.googlecode.com/svn/trunk@7491 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-31 15:24:24 +00:00
mike@reedtribe.org
a3f1c8e2fe
add bench for sorting
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7330 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 02:23:40 +00:00
robertphillips@google.com
8e679fe023
Added new bench to test out 1xN BitmapProcShaders
...
https://codereview.appspot.com/7160043/
git-svn-id: http://skia.googlecode.com/svn/trunk@7264 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 19:51:41 +00:00
humper@google.com
7c7292c607
Added a new function to directly generate a blurred rectangle analytically.
...
Added two new microbenchmarks to demonstrate speedup over existing BlurSeparable approach.
Added new GM tests for blurred rectangles.
Review URL: https://codereview.appspot.com/7037050
git-svn-id: http://skia.googlecode.com/svn/trunk@7034 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-04 20:29:03 +00:00
reed@google.com
7d68335eb4
add getTypes() to SkMatrix44, to cache how complex the matrix is.
...
add bench
optimize operator== by performing 4 compares in a row before checking
optimize setconcat by noting when we can write the answer directly into this
At least on this macbook, I had to mark helpers like isIdentity() as inline to get them inlined.
Review URL: https://codereview.appspot.com/6863053
git-svn-id: http://skia.googlecode.com/svn/trunk@6655 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-03 21:19:52 +00:00
reed@google.com
1ca015bd59
add bench for hairlines
...
git-svn-id: http://skia.googlecode.com/svn/trunk@6118 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 17:32:10 +00:00
reed@google.com
3d407a153a
add bench for drawBitmapRectToRect
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5915 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 14:42:38 +00:00
robertphillips@google.com
924352685d
Added bench to replicate Google spreadsheet-style table drawing
...
https://codereview.appspot.com/6593076/
git-svn-id: http://skia.googlecode.com/svn/trunk@5782 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 13:25:13 +00:00
senorblanco@chromium.org
cc9471c36d
Fix premul alpha problems w/matrix convolution filter, and re-enable the bench.
...
http://codereview.appspot.com/6541043/
git-svn-id: http://skia.googlecode.com/svn/trunk@5610 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 17:59:49 +00:00
senorblanco@chromium.org
79723f9826
Unreviewed; build fix.
...
Disable matrixconvolution bench until I can figure out the
premul issues.
git-svn-id: http://skia.googlecode.com/svn/trunk@5593 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 20:44:01 +00:00
senorblanco@chromium.org
5faa2dc266
Implements a matrix convolution filter (raster path only). The filtering loop
...
is templated on the tiling mode for speed: interior pixels are unconditionally
fetched; border pixels apply the appropriate tiling mode before fetching. It
handles target, bias, divisor (as gain), and edge modes (named to be more
skia-like). It does not handle the "preserveAlpha" semantics of
feConvolveMatrix, nor "kernelUnitLength".
git-svn-id: http://skia.googlecode.com/svn/trunk@5592 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 20:32:34 +00:00
scroggo@google.com
9a4125283a
Report data from bench_pictures in the same fashion as bench.
...
Move SkBenchLogger into separate files and make bench_pictures use it.
Remove sk_tools::print_msg, since SkBenchLogger is now used instead.
Combine picture_benchmark with bench_pictures, since that is the
only project that uses it.
Refactor the aggregator for bench timer data into its own class and
make bench_pictures use it.
Consolidate the various virtual PictureBenchmark::run functions
into one for reuse.
BUG=https://code.google.com/p/skia/issues/detail?id=822
Review URL: https://codereview.appspot.com/6488086
git-svn-id: http://skia.googlecode.com/svn/trunk@5432 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 15:21:18 +00:00
rileya@google.com
981b33abc6
Add R-Tree bench.
...
Review URL: https://codereview.appspot.com/6497086
git-svn-id: http://skia.googlecode.com/svn/trunk@5404 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-05 18:36:17 +00:00
robertphillips@google.com
6806bdaca8
Added bench to test multiple readPixels case
...
https://codereview.appspot.com/6501081/
git-svn-id: http://skia.googlecode.com/svn/trunk@5381 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 13:39:01 +00:00
rmistry@google.com
d6176b0dca
Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/ )
...
This CL is part II of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6474054
git-svn-id: http://skia.googlecode.com/svn/trunk@5263 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 18:14:13 +00:00
junov@chromium.org
9ed02b9da2
Augmenting SkDeferredCanvas notification interface to signal flushes and memory allocations
...
Renamed SkDeferredCanvas::DeviceContext to SkDeferredCanvas::NotificationClient
BUG=http://code.google.com/p/chromium/issues/detail?id=136828
TEST=Added coverage for new API to DeferredCanvas unit test. Added DeferredCanvas bench test to track deferred canvas overhead cost.
Review URL: https://codereview.appspot.com/6442108
git-svn-id: http://skia.googlecode.com/svn/trunk@5078 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 13:36:26 +00:00
scroggo@google.com
dd39488997
Avoid a loop in writeString and writePad by zeroing padding first.
...
Also add a benchmark to time the new improved writeString. Before
my change the bench took ~1.23ms and afterwards it takes ~.95ms.
Add some testing to ensure that writePad works properly.
TEST=Writer32Test, WriterBench
Review URL: https://codereview.appspot.com/6438045
git-svn-id: http://skia.googlecode.com/svn/trunk@4742 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 20:47:55 +00:00
junov@chromium.org
ef76060cbf
Adding checksum to SkFlatData to accelerate SkPicture recording.
...
The checksum triggers an early exit in the mem compare use to search for duplicate flattened objects. Also, call to memcmp was replaced with 64-bit at a time comparison loop.
Review URL: http://codereview.appspot.com/6339046/
BUG=http://code.google.com/p/chromium/issues/detail?id=54079
TEST=Checksum and PictureRecord tests in bench.exe
git-svn-id: http://skia.googlecode.com/svn/trunk@4378 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 20:03:16 +00:00