Commit Graph

2270 Commits

Author SHA1 Message Date
robertphillips@google.com
4bdfb8c9d6 Compiler complaints + some minor cleanup
http://codereview.appspot.com/6295070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4238 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-12 21:23:49 +00:00
tomhudson@google.com
a0116d541d Disable morphology benchmarks on fixed point builds.
http://codereview.appspot.com/6300082/



git-svn-id: http://skia.googlecode.com/svn/trunk@4231 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-11 20:48:18 +00:00
tomhudson@google.com
f2e91a3907 Dilate & Erode benchmarks. Unlike the blur benchmarks (which test
Convolution), they show no improvement from unrolling the GLSL loops
in src/gpu/effects/GrMorphologyEffect.cpp

http://codereview.appspot.com/6299067/



git-svn-id: http://skia.googlecode.com/svn/trunk@4230 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-11 19:22:01 +00:00
reed@google.com
258e0bf00c add bench for conical Gradient
git-svn-id: http://skia.googlecode.com/svn/trunk@4203 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-07 14:18:34 +00:00
caryclark@google.com
19069a2822 fix warnings on Mac in bench
Fix these class of warnings:
- unused functions
- unused locals
- sign mismatch
- missing function prototypes
- missing newline at end of file
- 64 to 32 bit truncation

The changes prefer to link in dead code in the debug build
with 'if (false)' than to comment it out, but trivial cases
are commented out or sometimes deleted if it appears to be
a copy/paste error.
Review URL: https://codereview.appspot.com/6302044

git-svn-id: http://skia.googlecode.com/svn/trunk@4188 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-06 12:11:45 +00:00
reed@google.com
0d10280190 We often rgn-diff an area >= the other rgn. now we detect that and return empty
We do this when we update our devices in SkCanvas.cpp
Review URL: https://codereview.appspot.com/6249073

git-svn-id: http://skia.googlecode.com/svn/trunk@4101 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 18:28:59 +00:00
djsollen@google.com
dde718c558 Add bench to test the performance of creating a picture.
Review URL: https://codereview.appspot.com/6258062

git-svn-id: http://skia.googlecode.com/svn/trunk@4076 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 16:50:11 +00:00
reed@google.com
f3a8d8e0ff apply 10.p+32 -> (float)(1 << 23) fix from MathTest here as well
windows can't eat the former syntax



git-svn-id: http://skia.googlecode.com/svn/trunk@4070 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 14:08:57 +00:00
reed@google.com
7f19241adb add bench for floor variants
git-svn-id: http://skia.googlecode.com/svn/trunk@4065 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 12:26:52 +00:00
reed@google.com
fd4be26c42 Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
or stroke parameters for a path.

Today, the patheffect only sees if the caller was going to stroke or fill, and
if stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.

After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.

Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6250051

git-svn-id: http://skia.googlecode.com/svn/trunk@4048 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-25 01:04:12 +00:00
reed@google.com
d3521f1a8d revert 4046 -- GM:pathfill failed on one bot, maybe uninitialized memory somewhere?
git-svn-id: http://skia.googlecode.com/svn/trunk@4047 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 20:32:22 +00:00
reed@google.com
9797272edf Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
or stroke parameters for a path.

Today, the patheffect only sees if the caller was going to stroke or fill, and if
stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.

After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.

Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6249050

git-svn-id: http://skia.googlecode.com/svn/trunk@4046 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 20:13:57 +00:00
reed@google.com
ea6f6832dd add makedash_ variants to measure applying the dash (not drawing it)
git-svn-id: http://skia.googlecode.com/svn/trunk@4000 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-18 18:32:54 +00:00
reed@google.com
ebd24962df change SkChunkAlloc to grow its allocations geometrically (not linearly)
plus add a bench and unittest for it.



git-svn-id: http://skia.googlecode.com/svn/trunk@3989 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-17 14:28:11 +00:00
bungeman@google.com
a02bc1519c WeakRefCnt
http://codereview.appspot.com/5649046/


git-svn-id: http://skia.googlecode.com/svn/trunk@3978 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 18:21:56 +00:00
reed@google.com
a584aed5f7 perform quickReject in drawPoints (which is called by drawLine) just like we
already did in drawRect and drawPath



git-svn-id: http://skia.googlecode.com/svn/trunk@3968 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 14:06:02 +00:00
tomhudson@google.com
c3be34d4db Add (8) more benchmarks to capture performance of a pair of blit optimization
procs.

http://codereview.appspot.com/6209064/



git-svn-id: http://skia.googlecode.com/svn/trunk@3963 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 20:09:33 +00:00
reed@google.com
4ad2275350 add clipped case for dashing to exercise quickReject
git-svn-id: http://skia.googlecode.com/svn/trunk@3961 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 19:50:58 +00:00
reed@google.com
63c57613b8 add test for computing the bounds of an array of points (SkRect::set)
git-svn-id: http://skia.googlecode.com/svn/trunk@3935 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 14:14:04 +00:00
robertphillips@google.com
4debcac8c3 Debug Windows compiler complaint fixes
http://codereview.appspot.com/6208055/



git-svn-id: http://skia.googlecode.com/svn/trunk@3924 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-14 16:33:36 +00:00
bungeman@google.com
5548752100 Add bench and test for SkRefCnt.
http://codereview.appspot.com/6195071/

This also adds a cross platform SkThread for testing purposes.


git-svn-id: http://skia.googlecode.com/svn/trunk@3921 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-14 14:09:24 +00:00
epoger@google.com
3d8cd175e1 Discard absurd values (and log warnings) when graphing bench results.
BUG=http://code.google.com/p/skia/issues/detail?id=596
Review URL: https://codereview.appspot.com/6197066

git-svn-id: http://skia.googlecode.com/svn/trunk@3914 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-11 18:26:16 +00:00
reed@google.com
ef85e3c52c add experimental variant of dashing, where we explicitly draw rects
git-svn-id: http://skia.googlecode.com/svn/trunk@3897 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 15:40:57 +00:00
robertphillips@google.com
b1af07aa43 Dialed back complexity of nested clip bench to bring time down to a reasonable level
git-svn-id: http://skia.googlecode.com/svn/trunk@3883 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-09 16:27:10 +00:00
robertphillips@google.com
6bb99e36ca Added new bench test for nested clips
http://codereview.appspot.com/6199055/



git-svn-id: http://skia.googlecode.com/svn/trunk@3880 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-09 15:48:31 +00:00
robertphillips@google.com
6d62df404b First pass at accelerating gpu-based AA clipping
http://codereview.appspot.com/6195051/



git-svn-id: http://skia.googlecode.com/svn/trunk@3853 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-07 18:07:36 +00:00
bsalomon@google.com
9c1f1ac5d3 Move function decls and macros out of public headers that are meant for internal use.
git-svn-id: http://skia.googlecode.com/svn/trunk@3849 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-07 17:09:37 +00:00
reed@google.com
c56a83ca9c add bench for SkPath::Iter and SkPath::RawIter
git-svn-id: http://skia.googlecode.com/svn/trunk@3844 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-07 13:46:32 +00:00
mike@reedtribe.org
99a6ef48e3 add different stroke-widths to dash bench
git-svn-id: http://skia.googlecode.com/svn/trunk@3843 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-05 13:46:10 +00:00
reed@google.com
4aa1a70ab7 add initial bench for dashing (more work to do)
git-svn-id: http://skia.googlecode.com/svn/trunk@3841 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-04 16:37:45 +00:00
reed@google.com
26dc5b6362 always return a value
git-svn-id: http://skia.googlecode.com/svn/trunk@3823 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-02 17:41:13 +00:00
reed@google.com
4b4f86d34d distinguish intersects-rect from intersects-rgn
git-svn-id: http://skia.googlecode.com/svn/trunk@3822 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-02 17:20:02 +00:00
reed@google.com
46af7efbee renormalize some loop counts for faster tests in regions
git-svn-id: http://skia.googlecode.com/svn/trunk@3821 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-02 16:56:49 +00:00
reed@google.com
01049d5e21 rename containsrgn to containsrect, since that is what it is testing
git-svn-id: http://skia.googlecode.com/svn/trunk@3819 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-02 16:45:36 +00:00
reed@google.com
515d99840f make name lower-case, to match all other benches
git-svn-id: http://skia.googlecode.com/svn/trunk@3793 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-30 14:43:46 +00:00
reed@google.com
71937d6618 must return a value
git-svn-id: http://skia.googlecode.com/svn/trunk@3792 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-30 13:54:36 +00:00
reed@google.com
50129dbfaa add contains xy test, adjust number of rects (using xor this time)
git-svn-id: http://skia.googlecode.com/svn/trunk@3788 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-30 12:07:55 +00:00
reed@google.com
8c2cc1a4dd add RegionBench, in preparation for speeding up intersects and contains for chrome
git-svn-id: http://skia.googlecode.com/svn/trunk@3784 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-27 19:29:52 +00:00
bsalomon@google.com
82a7bfcb2d add defer canvas to bench
Committed on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/6013051


git-svn-id: http://skia.googlecode.com/svn/trunk@3700 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 19:11:17 +00:00
tomhudson@google.com
13eaaaa75a Allow specifying multiple configs for bench, e.g. -config 8888 -config GPU.
Patch courtesy of Guanqun Lu.

http://codereview.appspot.com/6031057/



git-svn-id: http://skia.googlecode.com/svn/trunk@3696 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 18:00:40 +00:00
robertphillips@google.com
6853e808a4 Addressed more Windows compiler complaint issues
http://codereview.appspot.com/6007056/



git-svn-id: http://skia.googlecode.com/svn/trunk@3689 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 15:50:18 +00:00
bsalomon@google.com
1647a1955f add circle benchmark
Committed on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/5999047/



git-svn-id: http://skia.googlecode.com/svn/trunk@3649 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-11 15:34:46 +00:00
robertphillips@google.com
09042b80d2 Fixing Windows compiler complaints
http://codereview.appspot.com/5991056/



git-svn-id: http://skia.googlecode.com/svn/trunk@3626 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-06 20:01:46 +00:00
tomhudson@google.com
86bb9b73a0 Add usage message and -h|--help arguments to bench.
git-svn-id: http://skia.googlecode.com/svn/trunk@3583 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-03 13:28:57 +00:00
robertphillips@google.com
a0b63b8631 Reverting bench tests to pre-3546 (i.e., readding "Debug" option) with a SK_DEBUG guard
git-svn-id: http://skia.googlecode.com/svn/trunk@3550 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-30 12:23:56 +00:00
robertphillips@google.com
39a058f122 Removing "Debug" option from bench tests to evaluate possible regression
git-svn-id: http://skia.googlecode.com/svn/trunk@3546 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-29 19:16:07 +00:00
robertphillips@google.com
d3b9fbbc48 Code changes for ANGLE GL interface. .gyp file changes will be delivered later.
http://codereview.appspot.com/5940046/



git-svn-id: http://skia.googlecode.com/svn/trunk@3519 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-28 16:19:11 +00:00
robertphillips@google.com
0da3719050 Added debug GL Interface. This interface tracks various GL objects in order to find leaks & invalid accesses.
Core Review: http://codereview.appspot.com/5846049/




git-svn-id: http://skia.googlecode.com/svn/trunk@3426 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-19 14:42:13 +00:00
tomhudson@google.com
af2313e7e7 Disable overly heavy benchmark - 15x slower than any other benchmark
and not giving us particularly important information. It may be useful
to occasionally reactivate it when trying to optimize rectangle blits,
but otherwise it was a waste to have clogging up the performance bots.



git-svn-id: http://skia.googlecode.com/svn/trunk@3385 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 18:33:54 +00:00
reed@google.com
b8c39178ff add bench for various interp techniques used in bitmapshader_matrix
git-svn-id: http://skia.googlecode.com/svn/trunk@3333 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-07 12:36:07 +00:00
djsollen@google.com
710c269dc1 fix reorder initialization warning
http://codereview.appspot.com/5699084/

git-svn-id: http://skia.googlecode.com/svn/trunk@3264 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-27 16:22:48 +00:00
djsollen@google.com
809a2a9fb7 Add a bench for picture playback.
Review URL: https://codereview.appspot.com/5694053

git-svn-id: http://skia.googlecode.com/svn/trunk@3245 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-23 20:57:09 +00:00
vandebo@chromium.org
b9682d38c1 Change append to appendf for call sites with no format arguments.
Original CL: http://codereview.appspot.com/5685062/

Review URL: https://codereview.appspot.com/5686059

git-svn-id: http://skia.googlecode.com/svn/trunk@3225 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-21 18:53:39 +00:00
tomhudson@google.com
6bf38b59c9 Move GL-specific include files to their own subdirectory, to better
coexist alongside D3D backend.
Requires gyp change.

http://codereview.appspot.com/5665045/



git-svn-id: http://skia.googlecode.com/svn/trunk@3185 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-14 15:11:59 +00:00
digit@google.com
1771cbf43d posix: Avoid static initializers in static/global mutexes
This patch removes static initializers related to static and
global mutexes from the final library's machine code when
building on a pthread-capable system.

We use PTHREAD_MUTEX_INITIALIZER to perform POD-style
initialization. You need a line like the following to declare
a global mutex with it:

    SkBaseMutex gMutex = { PTHREAD_MUTEX_INITIALIZER };

We introduce the SK_DECLARE_STATIC_MUTEX and SK_DECLARE_GLOBAL_MUTEX
macros to be able to declare static/global mutexes in the source tree
uniformly.

SkMutex is now defined as a sub-class of SkBaseMutex, with standard
construction/destruction semantics. This is useful if the mutex
object is a member of another C++ class, or allocated dynamically.

We also modify a few places to refer to SkBaseMutex instead of a
SkMutex, where it makes sense. Generally speaking, client code
should hold and use pointers to SkBaseMutex whenever they can
now.

We defined a new built-time macro named SK_USE_POSIX_THREADS
to indicate that we're using a pthread-based SkThread.h
interface. The macro will also be used in future patches
to implement other helper thread synchronization classes.

Finally, we inline the acquire() and release() functions in the
case of Posix to improve performance a bit.

Running: 'bench -repeat 10 -match mutex' on an Android device or
a 2.4GHz Xeon Linux desktop shows the following improvements:

                      Before     After

        Galaxy Nexus    1.64      1.45
        Nexus S         1.47      1.16
        Xoom            1.86      1.66
        Xeon            0.36      0.31

This removes 5 static mutex initializers from the library
Review URL: https://codereview.appspot.com/5501066

git-svn-id: http://skia.googlecode.com/svn/trunk@3091 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-26 21:26:40 +00:00
senorblanco@chromium.org
e50f7361b4 Add a wide stroked line path benchmark to bench. It uses the same stroke width
and endcap style as the stroked curved path.

Review URL:  http://codereview.appspot.com/5529069/



git-svn-id: http://skia.googlecode.com/svn/trunk@3028 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-12 19:10:35 +00:00
bsalomon@google.com
cadbcb8e53 Towards enabling -Werror in skia on Linux
Review URL: http://codereview.appspot.com/5516044/



git-svn-id: http://skia.googlecode.com/svn/trunk@2983 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-06 19:22:11 +00:00
bsalomon@google.com
508824bd4b Make null gl a top level config in bench
Review URL: http://codereview.appspot.com/5484052/



git-svn-id: http://skia.googlecode.com/svn/trunk@2867 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-13 16:49:49 +00:00
reed@google.com
5ae777dcad rename sk_float_isNaN to sk_float_isnan to match related functions
add sk_float_isinf returning non-zero if the argument is +/- infinity



git-svn-id: http://skia.googlecode.com/svn/trunk@2813 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-06 20:18:05 +00:00
reed@google.com
1607863b60 rename hasValidCoordinates to isFinite (on SkRect) and reimplement for speed
git-svn-id: http://skia.googlecode.com/svn/trunk@2811 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-06 18:56:37 +00:00
reed@google.com
0be5eb7533 add bench for computing isfinite of 4 values (targeted for SkRect)
git-svn-id: http://skia.googlecode.com/svn/trunk@2805 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-05 21:53:22 +00:00
reed@google.com
a069c8ff9a speedup AAClip::setRegion (n^2 to n)
add bench for setRegion



git-svn-id: http://skia.googlecode.com/svn/trunk@2759 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-28 19:54:56 +00:00
reed@google.com
055af884c8 add test for drawPosText, to measure any difference it introduces given that
it has to transform each char's position (unlike drawText)



git-svn-id: http://skia.googlecode.com/svn/trunk@2742 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-23 15:52:02 +00:00
tomhudson@google.com
8caac6447d Add fractional-radius blurs to blur benchmark.
Specialize loops in apply_kernel and apply_kernel_interp,
improving blur benchmark performance by 25%.



git-svn-id: http://skia.googlecode.com/svn/trunk@2731 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-22 15:58:06 +00:00
reed@google.com
cc58651183 add bench for shader+blitMask
git-svn-id: http://skia.googlecode.com/svn/trunk@2685 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-15 15:29:45 +00:00
tomhudson@google.com
410e9dc9aa New SkMutex benchmark - used when we suspected mutex performance issues;
committed not because they're a bottleneck now but because we might do
something with them in the future & it's quite lightweight.



git-svn-id: http://skia.googlecode.com/svn/trunk@2675 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-14 17:30:08 +00:00
bsalomon@google.com
3d3dfe011c Fixes int to scalar warnings. This checkin changes the range of random matrix values in a benchmark but it is believed not to affect the runtime.
Review URL: http://codereview.appspot.com/5371045/


git-svn-id: http://skia.googlecode.com/svn/trunk@2653 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-10 13:50:19 +00:00
reed@google.com
073c90769e use new PurgeFontCache() api
git-svn-id: http://skia.googlecode.com/svn/trunk@2633 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-08 20:03:48 +00:00
djsollen@google.com
56c69773ae Update files to use SK_BUILD_FOR_ANDROID.
This CL also removes any unecessary references to
the ANDROID definition.
Review URL: http://codereview.appspot.com/5354049

git-svn-id: http://skia.googlecode.com/svn/trunk@2629 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-08 19:00:26 +00:00
bsalomon@google.com
c436499622 [GPU] Add explicit byte order and PM vs. UPM 8888 configs
Review URL: http://codereview.appspot.com/5347042/



git-svn-id: http://skia.googlecode.com/svn/trunk@2618 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-07 15:54:49 +00:00
bsalomon@google.com
e269f210bd Recommit r2611 with fix for gm
git-svn-id: http://skia.googlecode.com/svn/trunk@2614 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-07 13:29:52 +00:00
bsalomon@google.com
b87d2b5c2a Revert r2611 until windows gm can be debugged
git-svn-id: http://skia.googlecode.com/svn/trunk@2612 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-07 01:58:39 +00:00
bsalomon@google.com
6d9adaec78 Add replacement APIs for createPlatformSurface: createPlatformTexture and createPlatformRenderTarget
git-svn-id: http://skia.googlecode.com/svn/trunk@2611 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-07 01:37:22 +00:00
reed@google.com
8e372c98bf custom memset32 to speed up erasing the offscreen when its width is small.
git-svn-id: http://skia.googlecode.com/svn/trunk@2594 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-03 13:45:38 +00:00
djsollen@google.com
58629291bc Adding support to trunk for building Skia using the Android NDK.
This CL depends on a subsequent CL to add the appropriate NDK
toolchain and system sources to the skia repo.

Review URL: http://codereview.appspot.com/5306089/
Review URL: http://codereview.appspot.com/5306089

git-svn-id: http://skia.googlecode.com/svn/trunk@2592 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-03 13:08:29 +00:00
reed@google.com
6e5a45c038 add bench for building the font cache
git-svn-id: http://skia.googlecode.com/svn/trunk@2590 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 21:02:57 +00:00
reed@google.com
1a7eabc8dc support multiple (OR'd) -match parameters
git-svn-id: http://skia.googlecode.com/svn/trunk@2568 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-31 16:33:52 +00:00
reed@google.com
57c4957604 add bench for building aaclips
git-svn-id: http://skia.googlecode.com/svn/trunk@2565 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-31 14:33:35 +00:00
bsalomon@google.com
4a018bb20b Fix pure virtual call from destructor and turn VertBench back on
git-svn-id: http://skia.googlecode.com/svn/trunk@2556 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-28 19:50:21 +00:00
reed@google.com
7b1ca8c66e disable for now (brian is fixing)
git-svn-id: http://skia.googlecode.com/svn/trunk@2555 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-28 19:24:58 +00:00
reed@google.com
05d63aef00 add initial bench for drawVertices
git-svn-id: http://skia.googlecode.com/svn/trunk@2553 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-28 18:57:32 +00:00
tomhudson@google.com
ca529d303e In debug builds, only run each benchmark 1 time (test for assertion-breakage,
not performance).
codereview.appspot.com/5314064/



git-svn-id: http://skia.googlecode.com/svn/trunk@2552 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-28 15:34:49 +00:00
tomhudson@google.com
8382394bf2 Instead of using fixed size for GPU context in benchmain, walk list of
benchmarks and find the largest size required.
codereview.appspot.com/5330045/



git-svn-id: http://skia.googlecode.com/svn/trunk@2551 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-28 14:59:07 +00:00
bsalomon@google.com
74913722bf Add NULL GL context implementation. Use in bench (-nullgl) and SampleApp (backspace key)
Review URL: http://codereview.appspot.com/5303080/


git-svn-id: http://skia.googlecode.com/svn/trunk@2545 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-27 20:44:19 +00:00
tomhudson@google.com
71dd3e0359 New benchmark for blitRect based on call frequency observed while scrolling
Gmail inside Chrome. Is a bit slow...



git-svn-id: http://skia.googlecode.com/svn/trunk@2540 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-27 13:27:20 +00:00
bsalomon@google.com
820e80ad63 Fix some warnings on VS2010
Review URL: http://codereview.appspot.com/5312051/



git-svn-id: http://skia.googlecode.com/svn/trunk@2520 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-24 21:09:40 +00:00
bungeman@google.com
c961442926 Fix wall clock in bench system timer on Windows.
git-svn-id: http://skia.googlecode.com/svn/trunk@2503 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-19 22:10:21 +00:00
bsalomon@google.com
ba3664285b Pass NULL to BenchTimer cons when gl context creation failed.
git-svn-id: http://skia.googlecode.com/svn/trunk@2501 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-19 21:02:27 +00:00
bsalomon@google.com
788e247484 Fix benchmain to build w/ scalar=fixed
git-svn-id: http://skia.googlecode.com/svn/trunk@2500 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-19 20:56:30 +00:00
bsalomon@google.com
373a6635b7 Virtualize SkGLContext with subclasses SkNativeGLContext and SkMesaGLContext, allow both in gm
Review URL: http://codereview.appspot.com/5307045/



git-svn-id: http://skia.googlecode.com/svn/trunk@2499 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-19 20:43:20 +00:00
reed@google.com
095186a466 change text bench to measure text blit speed
git-svn-id: http://skia.googlecode.com/svn/trunk@2483 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-18 12:21:50 +00:00
bsalomon@google.com
e295313f01 move utils/SkEGLContext to gpu/SkGLContext, some gpu.gyp cleanup, set eol style LF on all gpu files
Review URL: http://codereview.appspot.com/5242056/



git-svn-id: http://skia.googlecode.com/svn/trunk@2474 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-13 13:33:08 +00:00
reed@google.com
e05cc8e94e explicitly set opt level for mac-release
delete obsolete FPS bench



git-svn-id: http://skia.googlecode.com/svn/trunk@2442 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-10 14:19:40 +00:00
bungeman@google.com
a38c819b76 Fix two warnings in bench timers.
http://codereview.appspot.com/5164049/


git-svn-id: http://skia.googlecode.com/svn/trunk@2400 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-03 20:44:39 +00:00
tomhudson@google.com
5ea050f662 Optimize software radial gradients (remove branches from the inner loop where
we can, because an entire row is conservatively either outside or inside the
gradient.) Change the gradient benchmark to capture both cases, and add new
gm to detect errors in these optimized paths.



git-svn-id: http://skia.googlecode.com/svn/trunk@2327 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-26 15:03:55 +00:00
bungeman@google.com
9399cac0a1 Change no-op math bench to noOp.
http://codereview.appspot.com/4962047/


git-svn-id: http://skia.googlecode.com/svn/trunk@2206 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-08-31 19:47:59 +00:00
reed@google.com
ddc518b90f add
git-svn-id: http://skia.googlecode.com/svn/trunk@2185 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-08-29 17:49:23 +00:00
bsalomon@google.com
971d0c8049 Get rid of createRenderTargetFrom3DAPIState and associated glGets necessary to support it.
Review URL: http://codereview.appspot.com/4928041/



git-svn-id: http://skia.googlecode.com/svn/trunk@2144 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-08-19 17:22:05 +00:00
epoger@google.com
3726000a28 More little improvements to bench_graph_svg.py
- add ability to express revision numbers as offset from latest
- add configurable title
Review URL: http://codereview.appspot.com/4808081

git-svn-id: http://skia.googlecode.com/svn/trunk@2067 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-08-08 20:27:04 +00:00
epoger@google.com
c71174da7a Incremental improvements to bench graph generation
- make revision number a link to that change on code.google.com
- clean up display and add help text
- make revision lines show up a bit more (light yellow)
Review URL: http://codereview.appspot.com/4839053

git-svn-id: http://skia.googlecode.com/svn/trunk@2062 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-08-08 17:19:23 +00:00
epoger@google.com
ec3ed6a5eb Automatic update of all copyright notices to reflect new license terms.
I have manually examined all of these diffs and restored a few files that
seem to require manual adjustment.

The following files still need to be modified manually, in a separate CL:

android_sample/SampleApp/AndroidManifest.xml
android_sample/SampleApp/res/layout/layout.xml
android_sample/SampleApp/res/menu/sample.xml
android_sample/SampleApp/res/values/strings.xml
android_sample/SampleApp/src/com/skia/sampleapp/SampleApp.java
android_sample/SampleApp/src/com/skia/sampleapp/SampleView.java
experimental/CiCarbonSampleMain.c
experimental/CocoaDebugger/main.m
experimental/FileReaderApp/main.m
experimental/SimpleCocoaApp/main.m
experimental/iOSSampleApp/Shared/SkAlertPrompt.h
experimental/iOSSampleApp/Shared/SkAlertPrompt.m
experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig
gpu/src/android/GrGLDefaultInterface_android.cpp
gyp/common.gypi
gyp_skia
include/ports/SkHarfBuzzFont.h
include/views/SkOSWindow_wxwidgets.h
make.bat
make.py
src/opts/memset.arm.S
src/opts/memset16_neon.S
src/opts/memset32_neon.S
src/opts/opts_check_arm.cpp
src/ports/SkDebug_brew.cpp
src/ports/SkMemory_brew.cpp
src/ports/SkOSFile_brew.cpp
src/ports/SkXMLParser_empty.cpp
src/utils/ios/SkImageDecoder_iOS.mm
src/utils/ios/SkOSFile_iOS.mm
src/utils/ios/SkStream_NSData.mm
tests/FillPathTest.cpp
Review URL: http://codereview.appspot.com/4816058

git-svn-id: http://skia.googlecode.com/svn/trunk@1982 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-28 14:26:00 +00:00
reed@google.com
8c4a2db81c fix printf output for name when skscalar is fixed
git-svn-id: http://skia.googlecode.com/svn/trunk@1866 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-14 19:22:19 +00:00
reed@google.com
25df8884bb add bench for building blurs
git-svn-id: http://skia.googlecode.com/svn/trunk@1865 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-14 19:03:58 +00:00
mike@reedtribe.org
63e5e34c4e be sure to call setupPaint, so we can respect the command-line args like alpha
git-svn-id: http://skia.googlecode.com/svn/trunk@1814 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-07 01:17:07 +00:00
junov@google.com
4ee7ae5dcf Adding the notion of a volatile bitmap to SkBitmap.
Volatility is a hint that indicates that the contents of a bitmap 
are ephemeral. SkGpuDevice will not preserve volatile bitmaps
in its texture cache, and will use textures from a pool of
keyless (recyclable) textures to avoid the performance hit of
texture allocation and release.

A subsequent change is required in webkit in order to take advantage
of this optimization. putImageData, and other methods that create
temporary bitmaps will have to mark their bitmaps as volatile.
before rendering them through skia.



git-svn-id: http://skia.googlecode.com/svn/trunk@1769 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-30 17:30:49 +00:00
reed@google.com
1ca4f26039 fix warning about SkPoint initialization
git-svn-id: http://skia.googlecode.com/svn/trunk@1717 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-24 19:17:37 +00:00
tomhudson@google.com
f5f83e1f7e Fix bad merge which broke compiles.
git-svn-id: http://skia.googlecode.com/svn/trunk@1716 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-24 19:15:57 +00:00
tomhudson@google.com
317d540409 New benchmark for SkMatrix::computeType().
Utility function in SkMatrix to make benchmarking more accurate.



git-svn-id: http://skia.googlecode.com/svn/trunk@1710 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-24 18:30:49 +00:00
bungeman@google.com
3c1412f717 Update BenchGpuTimer.cpp to new interface.
http://codereview.appspot.com/4645055/


git-svn-id: http://skia.googlecode.com/svn/trunk@1678 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-23 13:14:57 +00:00
tomhudson@google.com
6e8d335b45 New benchmark to create many random quadratic paths.
Added to try to get a handle on the cost of CPU-side changes to GPU rendering, but probably too noisy to be useful.



git-svn-id: http://skia.googlecode.com/svn/trunk@1674 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-22 17:16:35 +00:00
bungeman@google.com
6d0c02cc25 Fix Gradient2Bench colors so that Debug bench will run.
git-svn-id: http://skia.googlecode.com/svn/trunk@1639 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-17 17:56:23 +00:00
bungeman@google.com
85669f9d77 Add graphing for multiple runs of bench.
http://codereview.appspot.com/4539087/


git-svn-id: http://skia.googlecode.com/svn/trunk@1628 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-17 13:58:14 +00:00
reed@google.com
af951c9bc4 make SkDevice constructors explicit between offscreen and on/direct
http://codereview.appspot.com/4632044/



git-svn-id: http://skia.googlecode.com/svn/trunk@1620 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-16 19:10:39 +00:00
reed@google.com
8ac7a0fcef add gradient_create bench, just to measure the time to create a new gradient
git-svn-id: http://skia.googlecode.com/svn/trunk@1610 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-16 13:14:19 +00:00
reed@google.com
72415161dd add tilemode options
git-svn-id: http://skia.googlecode.com/svn/trunk@1607 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-15 21:17:37 +00:00
bungeman@google.com
a5d4841424 Add information to bench output.
http://codereview.appspot.com/4602057/


git-svn-id: http://skia.googlecode.com/svn/trunk@1598 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-15 17:25:46 +00:00
epoger@google.com
baa677b248 delete all old (non-Gyp) buildfiles
git-svn-id: http://skia.googlecode.com/svn/trunk@1583 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-14 18:35:08 +00:00
bungeman@google.com
2080900985 Fix scale metric bench.
git-svn-id: http://skia.googlecode.com/svn/trunk@1549 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-08 19:38:53 +00:00
bungeman@google.com
be9ad4e5fc Higher resolution timers for bench.
http://codereview.appspot.com/4548090/


git-svn-id: http://skia.googlecode.com/svn/trunk@1534 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-07 19:16:02 +00:00
tomhudson@google.com
288ff33d06 New benchmarks to determine performance of matrix-point multiplication for floating point vs. double matrices.
Over-the-shoulder review by reed@.



git-svn-id: http://skia.googlecode.com/svn/trunk@1525 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-07 14:31:38 +00:00
tomhudson@google.com
25583a3812 Make scalar benchmarks compile and run under SKIA_SCALAR=fixed as well as float.
git-svn-id: http://skia.googlecode.com/svn/trunk@1516 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-06 17:55:11 +00:00
tomhudson@google.com
f910b36e45 New scalar benchmark suite, comparing SkScalarAs2sCompliment vs native float operations
http://http://codereview.appspot.com/4532116/



git-svn-id: http://skia.googlecode.com/svn/trunk@1511 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-06 15:16:31 +00:00
reed@google.com
cbefd7d842 add internal multiplier for loopcount, to reduce variance for simple/fast tests
git-svn-id: http://skia.googlecode.com/svn/trunk@1510 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-06 13:31:30 +00:00
reed@google.com
e0dcde7399 make concat_float distinguishable using -match
init our float/double arrays, so we get reliable timings (NaNs are slow)



git-svn-id: http://skia.googlecode.com/svn/trunk@1509 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-06 13:20:29 +00:00
tomhudson@google.com
a20416b010 Remove warnings, improve benchmark quality, complicate benchmark results:
- data on heap instead of stack
 - more closely match operations of actual SkMatrix::setConcat()
 - avoid random perturbations, do_always;
   use perf annotate to verify that assembly isn't getting optimized away



git-svn-id: http://skia.googlecode.com/svn/trunk@1500 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-03 20:32:58 +00:00
tomhudson@google.com
7b4e107322 <body onunload="M_unloadPage();">
<!-- Begin help window -->
<script type="text/javascript"><!--
var xsrfToken = 'dd5d1a57ca1d5440593050fdc596d377';
var helpDisplayed = false;
document.onclick = M_clickCommon;
var media_url = "/static/";
var base_url = "/";

var publish_link = "/4571045/publish";

// -->
</script>
<div id="help" style="display: none;">

<div style="font-size: medium; text-align: center;">Keyboard Shortcuts</div>
<hr>
<table width="100%">

  <tbody><tr valign="top">
      <td>
            <table width="100%">
	            <tbody><tr>
		              <td></td><th>File</th>
			              </tr>
				              <tr>
					                <td class="shortcut"><span class="letter">u</span> <b>:</b></td><td>up to issue</td>
							        </tr>
								        <tr>
									          <td class="shortcut"><span class="letter">m</span> <b>:</b></td><td>publish + mail comments</td>
										          </tr>
											  	<tr>
													  <td class="shortcut"><span class="letter">M</span> <b>:</b></td><td>edit review message</td>
													  	</tr>
														        <tr>
															          <td class="shortcut"><span class="letter">j</span> / <span class="letter">k</span> <b>:</b></td><td>jump to file after / before current file</td>
																          </tr>
																	          <tr>
																		            <td class="shortcut"><span class="letter">J</span> / <span class="letter">K</span> <b>:</b></td><td>jump to next file with a comment after / before current file</td>
																			            </tr>
																				            <tr>
																					              <td></td><th>Side-by-side diff</th>
																						              </tr>
																							              <tr>
																								                <td class="shortcut"><span class="letter">i</span> <b>:</b></td><td>toggle intra-line diffs</td>
																										        </tr>
																											        <tr>
																												          <td class="shortcut"><span class="letter">e</span> <b>:</b></td><td>expand all comments</td>
																													          </tr>
																														          <tr>
																															            <td class="shortcut"><span class="letter">c</span> <b>:</b></td><td>collapse all comments</td>
																																            </tr>
																																	            <tr>
																																		              <td class="shortcut"><span class="letter">s</span> <b>:</b></td><td>toggle showing all comments</td>
																																			              </tr>
																																				              <tr>
																																					                <td class="shortcut"><span class="letter">n</span> / <span class="letter">p</span> <b>:</b></td><td>next / previous diff chunk or comment</td>
																																							        </tr>
																																								        <tr>
																																									          <td class="shortcut"><span class="letter">N</span> / <span class="letter">P</span> <b>:</b></td><td>next / previous comment</td>
																																										          </tr>
																																											          <tr>
																																												            <td class="shortcut"><span class="letter">&lt;Enter&gt;</span> <b>:</b></td><td>respond to / edit current comment</td>
																																													            </tr>
																																														          </tbody></table>
																																															      </td>
																																															          <td>
																																																        <table width="100%"> 
																																																	        <tbody><tr>
																																																		         <td></td><th>Issue</th>
																																																			         </tr>
																																																				         <tr>
																																																					           <td class="shortcut"><span class="letter">u</span> <b>:</b></td><td>up to list of issues</td>
																																																						           </tr>
																																																							           <tr>
																																																								             <td class="shortcut"><span class="letter">m</span> <b>:</b></td><td>publish + mail comments</td>
																																																									             </tr>
																																																										     	<tr>
																																																												  <td class="shortcut"><span class="letter">j</span> / <span class="letter">k</span> <b>:</b></td><td>jump to patch after / before current patch</td>
																																																												  	</tr>
																																																														<tr>
																																																															  <td class="shortcut"><span class="letter">o</span> / <span class="letter">&lt;Enter&gt;</span> <b>:</b></td><td>open current patch in side-by-side view</td>
																																																															  	</tr>
																																																																	<tr>
																																																																		  <td class="shortcut"><span class="letter">i</span> <b>:</b></td><td>open current patch in unified diff view</td>
																																																																		  	</tr>
																																																																			        <tr><td>&nbsp;</td></tr>
																																																																				        <tr><td></td><th>Issue List</th></tr>
																																																																					        <tr>
																																																																						          <td class="shortcut"><span class="letter">j</span> / <span class="letter">k</span> <b>:</b></td><td>jump to issue after / before current issue</td>
																																																																							          </tr>
																																																																								          <tr>
																																																																									            <td class="shortcut"><span class="letter">o</span> / <span class="letter">&lt;Enter&gt;</span> <b>:</b></td><td>open current issue</td>
																																																																										            </tr>
																																																																											            <tr>
																																																																												    	  <td class="shortcut"><span class="letter">#</span> <b>:</b></td>
																																																																													  	  <td>close issue</td>
																																																																														  	</tr>
																																																																															        <tr><td>&nbsp;</td></tr>
																																																																																        <tr>
																																																																																	          <td></td><th>Comment/message editing</th>
																																																																																		          </tr>
																																																																																			          <tr>
																																																																																				            <td class="shortcut"><span class="letter">&lt;Ctrl&gt;</span> + <span class="letter">s</span> <b>:</b></td><td>save comment</td>
																																																																																					            </tr>
																																																																																						            <tr>
																																																																																							              <td class="shortcut"><span class="letter">&lt;Esc&gt;</span> <b>:</b></td><td>cancel edit</td>
																																																																																								              </tr>
																																																																																									            </tbody></table>
																																																																																										        </td>
																																																																																											  </tr>

																																																																																											  </tbody></table>
																																																																																											  </div>
																																																																																											  <!-- End help window -->

																																																																																											  <div align="right">

																																																																																											  <div style="float:left; font-weight:bold"><i>Rietveld</i> Code Review Tool</div>


																																																																																											  <b>tomhudson@google.com (TomH)</b>
																																																																																											  |

																																																																																											  <a class="novisit" href="/settings">Settings</a>
																																																																																											  |


																																																																																											  <a class="novisit" target="_blank" href="http://code.google.com/p/rietveld/wiki/CodeReviewHelp">Help</a>
																																																																																											  |
																																																																																											  <a class="novisit" target="_blank" href="http://code.google.com/p/rietveld/issues/list">Bug tracker</a>
																																																																																											  |
																																																																																											  <a class="novisit" target="_blank" href="http://groups.google.com/group/codereview-discuss">Discussion group</a>
																																																																																											  |
																																																																																											  <a class="novisit" target="_blank" href="http://code.google.com/p/rietveld">Source code</a>
																																																																																											  |

																																																																																											  <a class="novisit" href="http://codereview.appspot.com/_ah/logout?continue=https://www.google.com/accounts/Logout%3Fcontinue%3Dhttps://appengine.google.com/_ah/logout%253Fcontinue%253Dhttp://codereview.appspot.com/4571045/%26service%3Dah">Sign out</a>

																																																																																											  </div>

																																																																																											  <div class="counter">(691)</div>
																																																																																											  <div class="mainmenu">
																																																																																											    
																																																																																											      <a href="/" class="active">Issues</a>
																																																																																											        <a href="/repos">Repositories</a>
																																																																																												  <a href="/search">Search</a>

																																																																																												  </div>
																																																																																												  <div class="mainmenu2">
																																																																																												    
																																																																																												      
																																																																																												          
																																																																																													        <a href="/use_uploadpy">Create Issue</a>
																																																																																														    
																																																																																														        |
																																																																																															    <a href="/mine">My Issues</a>
																																																																																															        |
																																																																																																    <a href="/starred">Starred</a>
																																																																																																        |
																																																																																																	    <a href="/all">Open</a>
																																																																																																	        |
																																																																																																		    <a href="/all?closed=1">All</a>
																																																																																																		      

																																																																																																		      </div>

																																																																																																		      <div>

																																																																																																		        <h2>
																																																																																																			    <span id="issue-star-4571045">
																																																																																																			      
																																																																																																			          
																																																																																																				        <a href="javascript:M_addIssueStar(4571045)">
																																																																																																						<img src="/static/star-dark.gif" width="15" height="15" border="0"></a>
																																																																																																						    
																																																																																																						      
																																																																																																						      </span>


																																																																																																						      <span class="issue-close" id="issue-close-4571045">
																																																																																																						          <a href="javascript:M_closeIssue(4571045)">
																																																																																																							        <img src="/static/close.gif" title="Close This Issue" width="15" height="15" border="0"></a>
																																																																																																								</span>

																																																																																																								    Issue <a href="/4571045/" onmouseover="M_showPopUp(this, 'popup-issue');">
																																																																																																								                4571045</a>:
																																																																																																										    New matrix benchmarks to evaluate ::setConcat implementation options 
																																																																																																										      </h2>

																																																																																																										        <table class="issue-details" border="0" width="100%">
																																																																																																											    <tbody><tr valign="top">

																																																																																																											          <td class="meta" width="20%">
																																																																																																												          
																																																																																																													            <div>
																																																																																																														                
																																																																																																																              <a class="novisit" href="/4571045/edit">
																																																																																																																	                      Edit Issue
																																																																																																																			                    </a>
																																																																																																																					                
																																																																																																																							            <br>
																																																																																																																								                
																																																																																																																										              <a class="novisit" href="/4571045/publish">
																																																																																																																											                      Publish+Mail Comments
																																																																																																																													                    </a> ('m')
																																																																																																																															                
																																																																																																																																	            
																																																																																																																																		                  <br>
																																																																																																																																				                <a class="novisit" href="/4571045/diff/1/bench/MatrixBench.cpp">
																																																																																																																																						                <b>Start Review</b>
																																																																																																																																								              </a>
																																																																																																																																									                  
																																																																																																																																											            </div>
																																																																																																																																												            
																																																																																																																																													            <div class="issue_details_sidebar">
																																																																																																																																														              <div><b>Created:</b><br>
																																																																																																																																															                  16 minutes ago by me
																																																																																																																																																	            </div>
																																																																																																																																																		              <div><b>Modified:</b><br>
																																																																																																																																																			                  0 minutes ago
																																																																																																																																																					            </div>
																																																																																																																																																						              <div><b>Reviewers:</b><br>
																																																																																																																																																							                  <a href="/user/reed1" onmouseover="M_showUserInfoPopup(this)">reed1</a>
																																																																																																																																																									            </div>
																																																																																																																																																										              <div><b>CC:</b><br>
																																																																																																																																																											                  
																																																																																																																																																													            </div>
																																																																																																																																																														              <div><b>Base URL:</b><br>
																																																																																																																																																															                  http://skia.googlecode.com/svn/trunk/
																																																																																																																																																																	            </div>
																																																																																																																																																																		              <div><b>Visibility:</b><br>
																																																																																																																																																																			                  
																																																																																																																																																																					                  Public.
																																																																																																																																																																							              
																																																																																																																																																																								                </div>
																																																																																																																																																																										        </div>
																																																																																																																																																																											      </td>

																																																																																																																																																																											            <td style="padding-left: .8em; padding-right: .8em;" width="80%">
																																																																																																																																																																												            




																																																																																																																																																																													      <h3><a id="issue-description-pointer" href="javascript:M_toggleSection('issue-description')" class="toggled-section opentriangle">
																																																																																																																																																																													          Description</a></h3>
																																																																																																																																																																														    <div id="issue-description" style="margin-left:15px;">
																																																																																																																																																																														        <pre>On platforms that use Float (instead of Fixed), SkMatrix stores its internal
																																																																																																																																																																															values as floats, but setConcat() needs extra precision and so uses doubles to
																																																																																																																																																																															contain intermediate values.
																																																																																																																																																																															These three benchmarks compare the speed of float-only, double-only, and
																																																																																																																																																																															float-cast-to-double implementations of a chunk of code extracted from the
																																																																																																																																																																															non-perspective case of setConcat().
																																																																																																																																																																															</pre>
																																																																																																																																																																															  </div>




																																																																																																																																																																															    <h3>
																																																																																																																																																																															        <a id="ps-1-pointer" href="javascript:M_toggleSectionForPS('4571045', '1')" class="toggled-section opentriangle">
																																																																																																																																																																																      Patch Set 1
																																																																																																																																																																																            
																																																																																																																																																																																	        </a>
																																																																																																																																																																																		  </h3>

																																																																																																																																																																																		    

																																																																																																																																																																																		      <div id="ps-1" style="">
																																																																																																																																																																																		          
																																																																																																																																																																																			  <div class="issue-list">

																																																																																																																																																																																			    <div class="pagination">
																																																																																																																																																																																			        <div style="float: left;">
																																																																																																																																																																																				      <i>Created:</i> 16 minutes ago
																																																																																																																																																																																				          </div>
																																																																																																																																																																																					      <div style="float: right;">
																																																																																																																																																																																					            
																																																																																																																																																																																						            <a href="/download/issue4571045_1.diff">
																																																																																																																																																																																							              Download raw patch set</a>
																																																																																																																																																																																								            
																																																																																																																																																																																									          
																																																																																																																																																																																										      </div>
																																																																																																																																																																																										          <div style="clear:both;"></div>
																																																																																																																																																																																											    </div>

																																																																																																																																																																																											      <table id="queues" style="clear:both;">
																																																																																																																																																																																											          <tbody><tr align="left">
																																																																																																																																																																																												        <th colspan="2"></th>
																																																																																																																																																																																													      <th>Unified diffs</th>
																																																																																																																																																																																													            <th>Side-by-side diffs</th>
																																																																																																																																																																																														          <th>Delta from patch set</th>
																																																																																																																																																																																															        <th colspan="3">Stats</th>
																																																																																																																																																																																																      <th>Patch</th>
																																																																																																																																																																																																          </tr>

																																																																																																																																																																																																	      
																																																																																																																																																																																																	            <tr name="patch">
																																																																																																																																																																																																		            <td class="first" width="14"><img src="/static/closedtriangle.gif" style="" width="12" height="9"></td>
																																																																																																																																																																																																			            <td style="white-space: nowrap">M    </td>
																																																																																																																																																																																																				            <td>
																																																																																																																																																																																																					              <a class="noul" href="/4571045/patch/1/2">
																																																																																																																																																																																																						                  bench/MatrixBench.cpp
																																																																																																																																																																																																								            </a>
																																																																																																																																																																																																									            </td>
																																																																																																																																																																																																										            <td>
																																																																																																																																																																																																											              <a class="noul" href="/4571045/diff/1/bench/MatrixBench.cpp">
																																																																																																																																																																																																												                  View
																																																																																																																																																																																																														            </a>
																																																																																																																																																																																																															            </td>
																																																																																																																																																																																																																            <td style="white-space: nowrap">
																																																																																																																																																																																																																	            
																																																																																																																																																																																																																		            </td>
																																																																																																																																																																																																																			            <td style="white-space: nowrap">4 chunks</td>
																																																																																																																																																																																																																				            <td style="white-space: nowrap">+114 lines, -3 lines</td>
																																																																																																																																																																																																																					            <td style="white-space: nowrap">
																																																																																																																																																																																																																						              
																																																																																																																																																																																																																							                  0 comments
																																																																																																																																																																																																																									              
																																																																																																																																																																																																																										                
																																																																																																																																																																																																																												        </td>
																																																																																																																																																																																																																													        <td>
																																																																																																																																																																																																																														          <a href="/download/issue4571045_1_2.diff" title="Download patch for bench/MatrixBench.cpp">
																																																																																																																																																																																																																															              Download
																																																																																																																																																																																																																																                </a>
																																																																																																																																																																																																																																		        </td>
																																																																																																																																																																																																																																			      </tr>
																																																																																																																																																																																																																																			          

																																																																																																																																																																																																																																				    </tbody></table>
																																																																																																																																																																																																																																				    </div>

																																																																																																																																																																																																																																				      
																																																																																																																																																																																																																																				        </div>




																																																																																																																																																																																																																																					  




																																																																																																																																																																																																																																					    <h3>
																																																																																																																																																																																																																																					        <a id="messages-pointer" href="javascript:M_toggleSection('messages')" class="toggled-section opentriangle">
																																																																																																																																																																																																																																						      Messages
																																																																																																																																																																																																																																						          </a>
																																																																																																																																																																																																																																							    </h3>

																																																																																																																																																																																																																																							      <div><i>Total messages: 3</i></div>

																																																																																																																																																																																																																																							        <div id="messages">
																																																																																																																																																																																																																																								    <div style="margin-bottom: .5em;">
																																																																																																																																																																																																																																								          <a href="javascript:M_showAllComments('cl', 3)">
																																																																																																																																																																																																																																									          Expand All Messages</a>
																																																																																																																																																																																																																																										        |
																																																																																																																																																																																																																																											      <a href="javascript:M_hideAllComments('cl', 3)">
																																																																																																																																																																																																																																											              Collapse All Messages</a>
																																																																																																																																																																																																																																												          </div>

																																																																																																																																																																																																																																													      
																																																																																																																																																																																																																																													            <div class="message " id="msg-agpjb2RlcmV2aWV3chwLEgVJc3N1ZRil_5YCDAsSB01lc3NhZ2UY6QcM" name="0">
																																																																																																																																																																																																																																														            <a name="msg-agpjb2RlcmV2aWV3chwLEgVJc3N1ZRil_5YCDAsSB01lc3NhZ2UY6QcM"></a>
																																																																																																																																																																																																																																															            <div class="header">
																																																																																																																																																																																																																																																              <table border="0" width="100%" cellspacing="0" cellpadding="0">
																																																																																																																																																																																																																																																	                  <tbody><tr class="comment_title" onclick="M_switchChangelistComment(0)">
																																																																																																																																																																																																																																																			                <td style="padding-left: 5px; white-space: nowrap;">
																																																																																																																																																																																																																																																					                <b>me</b>
																																																																																																																																																																																																																																																							              </td>
																																																																																																																																																																																																																																																								                    <td width="100%">
																																																																																																																																																																																																																																																										                    <table style="table-layout:fixed; white-space: nowrap;" width="100%">
																																																																																																																																																																																																																																																												                      <tbody><tr>
																																																																																																																																																																																																																																																														                          <td>
																																																																																																																																																																																																																																																																	                        <div style="white-space: nowrap; overflow: hidden;" class="extra" id="cl-preview-0">
																																																																																																																																																																																																																																																																				                          
																																																																																																																																																																																																																																																																							                         </div>
																																																																																																																																																																																																																																																																										                     </td>
																																																																																																																																																																																																																																																																												                       </tr>
																																																																																																																																																																																																																																																																														                       </tbody></table>
																																																																																																																																																																																																																																																																																                     </td>
																																																																																																																																																																																																																																																																																		                   <td align="right" style="white-space: nowrap; padding-right: 5px;">
																																																																																																																																																																																																																																																																																				                   13 minutes ago
																																																																																																																																																																																																																																																																																						                 </td>
																																																																																																																																																																																																																																																																																								             </tr>
																																																																																																																																																																																																																																																																																									               </tbody></table>
																																																																																																																																																																																																																																																																																										               </div>

																																																																																																																																																																																																																																																																																											               <div id="cl-comment-0" style="display: none;">
																																																																																																																																																																																																																																																																																												                 <div class="message-body">
																																																																																																																																																																																																																																																																																														             <pre name="cl-message-0"></pre>
																																																																																																																																																																																																																																																																																															               </div>
																																																																																																																																																																																																																																																																																																                 <div class="message-actions">
																																																																																																																																																																																																																																																																																																		             
																																																																																																																																																																																																																																																																																																			                   <a href="javascript:M_replyToMessage('0', '2011/06/03 18:57:35', 'TomH')" id="message-reply-href-0">Reply</a>
																																																																																																																																																																																																																																																																																																					                 <textarea rows="7" cols="70" name="message" style="display:none"></textarea>
																																																																																																																																																																																																																																																																																																							               <div id="message-reply-0" style="display:none;"></div>
																																																																																																																																																																																																																																																																																																								                   
																																																																																																																																																																																																																																																																																																										             </div>
																																																																																																																																																																																																																																																																																																											             </div>

																																																																																																																																																																																																																																																																																																												           </div>
																																																																																																																																																																																																																																																																																																													       
																																																																																																																																																																																																																																																																																																													             <div class="message " id="msg-agpjb2RlcmV2aWV3chwLEgVJc3N1ZRil_5YCDAsSB01lc3NhZ2UY0Q8M" name="1">
																																																																																																																																																																																																																																																																																																														             <a name="msg-agpjb2RlcmV2aWV3chwLEgVJc3N1ZRil_5YCDAsSB01lc3NhZ2UY0Q8M"></a>
																																																																																																																																																																																																																																																																																																															             <div class="header">
																																																																																																																																																																																																																																																																																																																               <table border="0" width="100%" cellspacing="0" cellpadding="0">
																																																																																																																																																																																																																																																																																																																	                   <tbody><tr class="comment_title" onclick="M_switchChangelistComment(1)">
																																																																																																																																																																																																																																																																																																																			                 <td style="padding-left: 5px; white-space: nowrap;">
																																																																																																																																																																																																																																																																																																																					                 <b>reed1</b>
																																																																																																																																																																																																																																																																																																																							               </td>
																																																																																																																																																																																																																																																																																																																								                     <td width="100%">
																																																																																																																																																																																																																																																																																																																										                     <table style="table-layout:fixed; white-space: nowrap;" width="100%">
																																																																																																																																																																																																																																																																																																																												                       <tbody><tr>
																																																																																																																																																																																																																																																																																																																														                           <td>
																																																																																																																																																																																																																																																																																																																																	                         <div style="white-space: nowrap; overflow: hidden;" class="extra" id="cl-preview-1">
																																																																																																																																																																																																																																																																																																																																				                           1. lets remove the "fix" from the function name. just muladdmul I think 2. we ...
																																																																																																																																																																																																																																																																																																																																							                          </div>
																																																																																																																																																																																																																																																																																																																																										                      </td>
																																																																																																																																																																																																																																																																																																																																												                        </tr>
																																																																																																																																																																																																																																																																																																																																															                </tbody></table>
																																																																																																																																																																																																																																																																																																																																																	              </td>
																																																																																																																																																																																																																																																																																																																																																		                    <td align="right" style="white-space: nowrap; padding-right: 5px;">
																																																																																																																																																																																																																																																																																																																																																				                    10 minutes ago
																																																																																																																																																																																																																																																																																																																																																						                  </td>
																																																																																																																																																																																																																																																																																																																																																								              </tr>
																																																																																																																																																																																																																																																																																																																																																									                </tbody></table>
																																																																																																																																																																																																																																																																																																																																																											        </div>

																																																																																																																																																																																																																																																																																																																																																												        <div id="cl-comment-1" style="display: none;">
																																																																																																																																																																																																																																																																																																																																																													          <div class="message-body">
																																																																																																																																																																																																																																																																																																																																																														              <pre name="cl-message-1">1. lets remove the "fix" from the function name. just muladdmul I think
																																																																																																																																																																																																																																																																																																																																																															      2. we can remove the return, since it will be compiled away anyway
																																																																																																																																																																																																																																																																																																																																																															      3. nice checkin comment!
																																																																																																																																																																																																																																																																																																																																																															      4. what are the results like?</pre>
																																																																																																																																																																																																																																																																																																																																																															                </div>
																																																																																																																																																																																																																																																																																																																																																																	          <div class="message-actions">
																																																																																																																																																																																																																																																																																																																																																																		              
																																																																																																																																																																																																																																																																																																																																																																			                    <a href="javascript:M_replyToMessage('1', '2011/06/03 19:00:39', 'reed1')" id="message-reply-href-1">Reply</a>
																																																																																																																																																																																																																																																																																																																																																																					                  <textarea rows="7" cols="70" name="message" style="display:none"></textarea>
																																																																																																																																																																																																																																																																																																																																																																							                <div id="message-reply-1" style="display:none;"></div>
																																																																																																																																																																																																																																																																																																																																																																									            
																																																																																																																																																																																																																																																																																																																																																																										              </div>
																																																																																																																																																																																																																																																																																																																																																																											              </div>

																																																																																																																																																																																																																																																																																																																																																																												            </div>
																																																																																																																																																																																																																																																																																																																																																																													        
																																																																																																																																																																																																																																																																																																																																																																														      <div class="message " id="msg-agpjb2RlcmV2aWV3chwLEgVJc3N1ZRil_5YCDAsSB01lc3NhZ2UYuRcM" name="2">
																																																																																																																																																																																																																																																																																																																																																																														              <a name="msg-agpjb2RlcmV2aWV3chwLEgVJc3N1ZRil_5YCDAsSB01lc3NhZ2UYuRcM"></a>
																																																																																																																																																																																																																																																																																																																																																																															              <div class="header">
																																																																																																																																																																																																																																																																																																																																																																																                <table border="0" width="100%" cellspacing="0" cellpadding="0">
																																																																																																																																																																																																																																																																																																																																																																																		            <tbody><tr class="comment_title" onclick="M_switchChangelistComment(2)">
																																																																																																																																																																																																																																																																																																																																																																																			                  <td style="padding-left: 5px; white-space: nowrap;">
																																																																																																																																																																																																																																																																																																																																																																																					                  <b>me</b>
																																																																																																																																																																																																																																																																																																																																																																																							                </td>
																																																																																																																																																																																																																																																																																																																																																																																									              <td width="100%">
																																																																																																																																																																																																																																																																																																																																																																																										                      <table style="table-layout:fixed; white-space: nowrap;" width="100%">
																																																																																																																																																																																																																																																																																																																																																																																												                        <tbody><tr>
																																																																																																																																																																																																																																																																																																																																																																																															                    <td>
																																																																																																																																																																																																																																																																																																																																																																																																	                          <div style="white-space: nowrap; overflow: hidden; visibility: hidden;" class="extra" id="cl-preview-2">
																																																																																																																																																																																																																																																																																																																																																																																																				                            &gt; 4. what are the results like? For posterity: tomhudson@tomhudson-zx600-linux:/usr/local/google/src/skia3$ out/bench/bench -match matrix_concat -repeat 1000 ...
																																																																																																																																																																																																																																																																																																																																																																																																							                           </div>
																																																																																																																																																																																																																																																																																																																																																																																																										                       </td>
																																																																																																																																																																																																																																																																																																																																																																																																												                         </tr>
																																																																																																																																																																																																																																																																																																																																																																																																															                 </tbody></table>
																																																																																																																																																																																																																																																																																																																																																																																																																	               </td>
																																																																																																																																																																																																																																																																																																																																																																																																																		                     <td align="right" style="white-space: nowrap; padding-right: 5px;">
																																																																																																																																																																																																																																																																																																																																																																																																																				                     0 minutes ago
																																																																																																																																																																																																																																																																																																																																																																																																																						                   </td>
																																																																																																																																																																																																																																																																																																																																																																																																																								               </tr>
																																																																																																																																																																																																																																																																																																																																																																																																																									                 </tbody></table>
																																																																																																																																																																																																																																																																																																																																																																																																																											         </div>

																																																																																																																																																																																																																																																																																																																																																																																																																												         <div id="cl-comment-2">
																																																																																																																																																																																																																																																																																																																																																																																																																													           <div class="message-body">
																																																																																																																																																																																																																																																																																																																																																																																																																														               <pre name="cl-message-2">&gt; 4. what are the results like?

																																																																																																																																																																																																																																																																																																																																																																																																																															       For posterity:

																																																																																																																																																																																																																																																																																																																																																																																																																															       tomhudson@tomhudson-zx600-linux:/usr/local/google/src/skia3$ out/bench/bench
																																																																																																																																																																																																																																																																																																																																																																																																																															       -match matrix_concat -repeat 1000
																																																																																																																																																																																																																																																																																																																																																																																																																															       skia bench: alpha=0xFF antialias=1 filter=0
																																																																																																																																																																																																																																																																																																																																																																																																																															       running bench [640 480]         matrix_concat_double  8888: msecs =  0.79   565:
																																																																																																																																																																																																																																																																																																																																																																																																																															       msecs =  0.79   GPU: msecs =  0.79
																																																																																																																																																																																																																																																																																																																																																																																																																															       running bench [640 480]    matrix_concat_floatdouble  8888: msecs =  0.97   565:
																																																																																																																																																																																																																																																																																																																																																																																																																															       msecs =  0.97   GPU: msecs =  0.97
																																																																																																																																																																																																																																																																																																																																																																																																																															       running bench [640 480]          matrix_concat_float  8888: msecs =  0.74   565:
																																																																																																																																																																																																																																																																																																																																																																																																																															       msecs =  0.73   GPU: msecs =  0.74</pre>
																																																																																																																																																																																																																																																																																																																																																																																																																															                 </div>
																																																																																																																																																																																																																																																																																																																																																																																																																																	           <div class="message-actions">
																																																																																																																																																																																																																																																																																																																																																																																																																																		               
																																																																																																																																																																																																																																																																																																																																																																																																																																			                     <a href="javascript:M_replyToMessage('2', '2011/06/03 19:11:06', 'TomH')" id="message-reply-href-2">Reply</a>
																																																																																																																																																																																																																																																																																																																																																																																																																																					                   <textarea rows="7" cols="70" name="message" style="display:none"></textarea>
																																																																																																																																																																																																																																																																																																																																																																																																																																							                 <div id="message-reply-2" style="display:none;"></div>
																																																																																																																																																																																																																																																																																																																																																																																																																																									             
																																																																																																																																																																																																																																																																																																																																																																																																																																										               </div>
																																																																																																																																																																																																																																																																																																																																																																																																																																											               </div>

																																																																																																																																																																																																																																																																																																																																																																																																																																												             </div>
																																																																																																																																																																																																																																																																																																																																																																																																																																													         

																																																																																																																																																																																																																																																																																																																																																																																																																																														     <div>
																																																																																																																																																																																																																																																																																																																																																																																																																																														           <a href="javascript:M_showAllComments('cl', 3)">
																																																																																																																																																																																																																																																																																																																																																																																																																																															         Expand All Messages</a>
																																																																																																																																																																																																																																																																																																																																																																																																																																																       |
																																																																																																																																																																																																																																																																																																																																																																																																																																																             <a href="javascript:M_hideAllComments('cl', 3)">
																																																																																																																																																																																																																																																																																																																																																																																																																																																	             Collapse All Messages</a>
																																																																																																																																																																																																																																																																																																																																																																																																																																																		         </div>

																																																																																																																																																																																																																																																																																																																																																																																																																																																			   </div>



																																																																																																																																																																																																																																																																																																																																																																																																																																																			   <script language="JavaScript" type="text/javascript">
																																																																																																																																																																																																																																																																																																																																																																																																																																																			     <!--
																																																																																																																																																																																																																																																																																																																																																																																																																																																			         document.onkeydown = M_changelistKeyDown;
																																																																																																																																																																																																																																																																																																																																																																																																																																																				     var dashboardState = new M_DashboardState(window, 'patch', 'M_CLPatchMarker');
																																																																																																																																																																																																																																																																																																																																																																																																																																																				         M_switchChangelistCommentByAnchor();
																																																																																																																																																																																																																																																																																																																																																																																																																																																					   // -->
																																																																																																																																																																																																																																																																																																																																																																																																																																																					   </script>



																																																																																																																																																																																																																																																																																																																																																																																																																																																					     <div style="display:none;">
																																																																																																																																																																																																																																																																																																																																																																																																																																																					         <form method="POST" action="/4571045/publish" id="message-reply-form">
																																																																																																																																																																																																																																																																																																																																																																																																																																																						       <input type="hidden" name="xsrf_token" value="dd5d1a57ca1d5440593050fdc596d377">
																																																																																																																																																																																																																																																																																																																																																																																																																																																						             <div></div>
																																																																																																																																																																																																																																																																																																																																																																																																																																																							           <input type="hidden" name="subject" value="New matrix benchmarks to evaluate ::setConcat implementation options">
																																																																																																																																																																																																																																																																																																																																																																																																																																																								         <input type="hidden" name="message_only" value="1">
																																																																																																																																																																																																																																																																																																																																																																																																																																																									       <input type="submit" value="Send Message">
																																																																																																																																																																																																																																																																																																																																																																																																																																																									             <input type="button" value="Discard" name="discard">
																																																																																																																																																																																																																																																																																																																																																																																																																																																										           <input type="checkbox" name="send_mail" value="1" id="message-reply-send-mail" checked="checked">
																																																																																																																																																																																																																																																																																																																																																																																																																																																											         <label>Send mail to reviewers</label>
																																																																																																																																																																																																																																																																																																																																																																																																																																																												     </form>
																																																																																																																																																																																																																																																																																																																																																																																																																																																												       </div>
																																																																																																																																																																																																																																																																																																																																																																																																																																																												         <a id="resizer" class="resizer" style="display:none;cursor:pointer">
																																																																																																																																																																																																																																																																																																																																																																																																																																																													     <img src="/static/zippyplus.gif">
																																																																																																																																																																																																																																																																																																																																																																																																																																																													       </a>



																																																																																																																																																																																																																																																																																																																																																																																																																																																													             </td>
																																																																																																																																																																																																																																																																																																																																																																																																																																																														         </tr>
																																																																																																																																																																																																																																																																																																																																																																																																																																																															   </tbody></table>

																																																																																																																																																																																																																																																																																																																																																																																																																																																															   </div>

																																																																																																																																																																																																																																																																																																																																																																																																																																																															     
																																																																																																																																																																																																																																																																																																																																																																																																																																																															         <div class="popup" id="popup-issue" style="left: 104px; top: 116px; visibility: hidden; ">
																																																																																																																																																																																																																																																																																																																																																																																																																																																																       <b>Issue 4571045: New matrix benchmarks to evaluate ::setConcat implementation options
																																																																																																																																																																																																																																																																																																																																																																																																																																																																       	</b><br>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																	      Created 16 minutes ago by me<br>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																	            Modified 0 minutes ago<br>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																		          Reviewers: reed1<br>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																			        Base URL: http://skia.googlecode.com/svn/trunk/<br>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																				      Comments: 0
																																																																																																																																																																																																																																																																																																																																																																																																																																																																				            
																																																																																																																																																																																																																																																																																																																																																																																																																																																																					        </div>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																						  


																																																																																																																																																																																																																																																																																																																																																																																																																																																																						  <p></p>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																						  <div style="float: left;">
																																																																																																																																																																																																																																																																																																																																																																																																																																																																						    <a target="_blank" href="http://code.google.com/appengine/"><img border="0" src="/static/appengine-noborder-120x30.gif" alt="Powered by Google App Engine"></a>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																						    </div>

																																																																																																																																																																																																																																																																																																																																																																																																																																																																						    <div class="extra" style="font-size: 9pt; float: right; text-align: right;">
																																																																																																																																																																																																																																																																																																																																																																																																																																																																						      <div style="height:14px;">
																																																																																																																																																																																																																																																																																																																																																																																																																																																																						        <img src="/static/rss.gif" alt="RSS Feeds" width="14" height="14" align="top">
																																																																																																																																																																																																																																																																																																																																																																																																																																																																							  <a href="/rss/all">Recent Issues</a>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																							    
																																																																																																																																																																																																																																																																																																																																																																																																																																																																							      |
																																																																																																																																																																																																																																																																																																																																																																																																																																																																							        <a href="/rss/mine/TomH">My Issues</a>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																								  |
																																																																																																																																																																																																																																																																																																																																																																																																																																																																								    <a href="/rss/reviews/TomH">My Reviews</a>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																								      |
																																																																																																																																																																																																																																																																																																																																																																																																																																																																								        <a href="/rss/closed/TomH">My Closed</a>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																									  
																																																																																																																																																																																																																																																																																																																																																																																																																																																																									    
																																																																																																																																																																																																																																																																																																																																																																																																																																																																									      |
																																																																																																																																																																																																																																																																																																																																																																																																																																																																									        <a href="/rss/issue/4571045">This issue</a>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										   
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										     </div>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       <div style="margin-top: .3em;">This is Rietveld <a href="http://code.google.com/p/rietveld/updates/list">r756
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       </a></div>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       </div>


																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       <script type="text/javascript">
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       </script><script src="http://www.google-analytics.com/ga.js" type="text/javascript"></script>
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       <script type="text/javascript">
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       var pageTracker = _gat._getTracker("UA-4803694-4");
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       pageTracker._initData();
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       pageTracker._trackPageview();
																																																																																																																																																																																																																																																																																																																																																																																																																																																																										       </script>
On platforms that use Float (instead of Fixed), SkMatrix stores its internal
values as floats, but setConcat() needs extra precision and so uses doubles
to contain intermediate values.
These three benchmarks compare the speed of float-only, double-only, and
float-cast-to-double implementations of a chunk of code extracted from the
non-perspective case of setConcat().




git-svn-id: http://skia.googlecode.com/svn/trunk@1497 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-03 19:16:56 +00:00
reed@google.com
3fb5187647 speed-up SkMatrix::preScale by 3x, by special-casing it instead of just calling
concat. Inspired by the profile of the fishtank site



git-svn-id: http://skia.googlecode.com/svn/trunk@1462 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-01 15:11:22 +00:00
bungeman@google.com
d1a416a97c glFinish to complete bench before stopping stopwatch.
git-svn-id: http://skia.googlecode.com/svn/trunk@1366 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-18 18:37:07 +00:00
mike@reedtribe.org
a9015f897c add GPU config
git-svn-id: http://skia.googlecode.com/svn/trunk@1341 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-17 02:25:05 +00:00
reed@google.com
757cdc4e73 check for missing filename (needs to be specified when tool is launched)
git-svn-id: http://skia.googlecode.com/svn/trunk@1287 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-09 21:59:56 +00:00
reed@google.com
80adceb39a rename radial to radial1, so I can distinguish it from radial2 in my
-match patter sniffer



git-svn-id: http://skia.googlecode.com/svn/trunk@1120 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-13 18:32:19 +00:00
reed@google.com
84e9c0801f speed up 2-point-radial gradients by 9x, using float instead of fixed
git-svn-id: http://skia.googlecode.com/svn/trunk@1118 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-13 17:44:24 +00:00
reed@google.com
d34658a5f1 add benchmark for path filling
git-svn-id: http://skia.googlecode.com/svn/trunk@1097 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-11 13:12:51 +00:00
reed@google.com
3b14dc1851 add strokerects to gm
output current bench settings



git-svn-id: http://skia.googlecode.com/svn/trunk@1040 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-04 14:31:36 +00:00
mike@reedtribe.org
2ecead5604 add 2 stroke tests to rects
git-svn-id: http://skia.googlecode.com/svn/trunk@1038 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-02 13:37:23 +00:00
reed@google.com
981d479800 http://codereview.appspot.com/3980041/
Add blitmask procs (with optional platform acceleration)
patch by yaojie.yan



git-svn-id: http://skia.googlecode.com/svn/trunk@910 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-09 12:55:47 +00:00
reed@google.com
b9d84f3bed add black, opaque, blend variants for text blits, to exercise different
special cases in blitmask



git-svn-id: http://skia.googlecode.com/svn/trunk@700 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-17 19:45:43 +00:00
reed@google.com
1fcd51e6b2 add template macro to "safely" perform casts w/o breaking strict-aliasing
fix aliasing warnings



git-svn-id: http://skia.googlecode.com/svn/trunk@674 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-05 15:50:27 +00:00
reed@android.com
eca4836067 add
git-svn-id: http://skia.googlecode.com/svn/trunk@640 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-12-20 18:34:17 +00:00
agl@chromium.org
652807bbc8 Revert "Revert "Use hairline when line width <= 1.0, instead of < 1.0.""
This reverts commit r560. Chromium has landed at r560, so I'm applying the
revert-revert. (See the comments in r560 for details.)

git-svn-id: http://skia.googlecode.com/svn/trunk@561 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-27 15:47:34 +00:00
agl@chromium.org
6fd950ca5c Revert "Use hairline when line width <= 1.0, instead of < 1.0."
This reverts commit r538 for the moment. In order to roll Chrome to include
some bug fixes, I want to land it in between this revert, and the revert
revert. That way the baseline changes from the other revisions can be
considered without conflating the huge number of changes due to r538.

git-svn-id: http://skia.googlecode.com/svn/trunk@560 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-26 21:47:25 +00:00
anatoly@google.com
a956e4fe2e Use hairline when line width <= 1.0, instead of < 1.0.
This speeds line drawing up considerably when drawing with
default linewidth on canvas.

Review: http://codereview.appspot.com/883047/show



git-svn-id: http://skia.googlecode.com/svn/trunk@538 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-12 13:51:28 +00:00
reed@android.com
831f6c676f update with better fps reporting
git-svn-id: http://skia.googlecode.com/svn/trunk@506 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-02-22 22:03:06 +00:00
reed@android.com
0c9da393d9 add FPSBench
git-svn-id: http://skia.googlecode.com/svn/trunk@505 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-02-22 19:50:13 +00:00
reed@android.com
867ee807cc motorola neon patch for blitMask, used in text drawing
git-svn-id: http://skia.googlecode.com/svn/trunk@397 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-10-20 13:55:41 +00:00
reed@android.com
11ec186bfc add opaque -vs- alpha bitmap cases
git-svn-id: http://skia.googlecode.com/svn/trunk@393 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-10-19 19:01:45 +00:00
reed@android.com
4e635f9eb2 add -forceDither option to bench (it is tristate)
update neon optimizations from motorola



git-svn-id: http://skia.googlecode.com/svn/trunk@391 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-10-19 17:39:46 +00:00
reed@android.com
e9d0060f4d add decode bench
add dictionary for bench tools to see optional cmdline args



git-svn-id: http://skia.googlecode.com/svn/trunk@351 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-02 21:12:42 +00:00
reed@android.com
4d85059920 add benchmark for repeat-tile bitmaps
git-svn-id: http://skia.googlecode.com/svn/trunk@318 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-12 20:30:58 +00:00
reed@android.com
cd21c809a9 remove dead code
git-svn-id: http://skia.googlecode.com/svn/trunk@311 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-11 15:35:36 +00:00
reed@android.com
29348cb061 add -forceFilter to bench tool
move some utils out of effects/



git-svn-id: http://skia.googlecode.com/svn/trunk@307 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-04 18:17:15 +00:00
reed@android.com
387359e348 add -config foo to restrict the output to just the specific config
add -match foo to restrict the benchmarks to those whose names match foo



git-svn-id: http://skia.googlecode.com/svn/trunk@305 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-04 01:51:09 +00:00
reed@android.com
c714479548 remove noisy font table tests from TextBench
git-svn-id: http://skia.googlecode.com/svn/trunk@304 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-04 01:25:44 +00:00
reed@android.com
8015dd83ae almost there on gm (need to fix image writes/reads/compares)
move SkAutoGraphics into SkGraphics.h
add [] operators to SkString



git-svn-id: http://skia.googlecode.com/svn/trunk@228 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-06-21 00:49:18 +00:00
reed@android.com
9781ca5866 add SkSfntUtils to parse some known truetype tables
add comments and cleanup to count_tables in SkFontHost_tables.cpp
fix transparency bug in gifs
use (alpha+1) for blending in srcover mode, to ensure opaque results



git-svn-id: http://skia.googlecode.com/svn/trunk@155 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-04-14 14:28:22 +00:00
reed@android.com
d6638e644e add Table apis to SkFontHost
need to implement in _win backend



git-svn-id: http://skia.googlecode.com/svn/trunk@149 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-04-08 05:03:52 +00:00
reed@android.com
953ce8dcb7 rename bench's main to benchmain.cpp, to avoid multiple files with same name
git-svn-id: http://skia.googlecode.com/svn/trunk@141 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-04-01 18:38:43 +00:00
reed@android.com
6c924ad46c add -pict option to bench, which draws everything through a picture, and then
compares the result to the original draws



git-svn-id: http://skia.googlecode.com/svn/trunk@139 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-31 03:48:49 +00:00
reed@android.com
5e5adfd12c migrate more legacy unittests into tests/
SkParse yet to be cleaned up



git-svn-id: http://skia.googlecode.com/svn/trunk@113 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-07 03:39:23 +00:00
reed@android.com
3a859a0034 draft of Text benchmark
not enabled yet, as having trouble with mac-fonthost port



git-svn-id: http://skia.googlecode.com/svn/trunk@87 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-28 00:56:29 +00:00
reed@android.com
f523e25da0 add BitmapBench
git-svn-id: http://skia.googlecode.com/svn/trunk@83 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-26 23:15:37 +00:00
reed@android.com
a70ba36c97 remove duplicate SkTRegistry definition
git-svn-id: http://skia.googlecode.com/svn/trunk@78 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-22 17:41:57 +00:00
reed@android.com
4c7d3d6828 make help - shows options in makefile
add optional image-encoding to bench



git-svn-id: http://skia.googlecode.com/svn/trunk@74 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-21 03:15:13 +00:00
reed@android.com
4bc1983e01 add options to bench: -repeat N -forceOpaque -forceBlend -forceAA -forceBW
output stats for all configs (should be a option)



git-svn-id: http://skia.googlecode.com/svn/trunk@73 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-19 20:08:35 +00:00
reed@android.com
4cb8bd18d9 add crude Makefile (someone please help!)
make SkFloatBits.cpp compile w/o floats



git-svn-id: http://skia.googlecode.com/svn/trunk@69 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-16 16:15:37 +00:00
reed@android.com
d2c3744801 add arg to make diff sized rects
git-svn-id: http://skia.googlecode.com/svn/trunk@59 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-08 03:00:57 +00:00
reed@android.com
a720790ef0 move main.cpp outside of the xcode project
git-svn-id: http://skia.googlecode.com/svn/trunk@58 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-07 11:49:19 +00:00
reed@android.com
b398fe8638 add cmd-line args
respect canvas size from each bench obj, rather than hardcode 640x480



git-svn-id: http://skia.googlecode.com/svn/trunk@57 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-07 11:47:57 +00:00
joe.gregorio
092590b88d Initial automake and autoconf files to build core into libskia.a.
git-svn-id: http://skia.googlecode.com/svn/trunk@55 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-06 17:03:16 +00:00
reed@android.com
bd700c391d add benchmark framework
git-svn-id: http://skia.googlecode.com/svn/trunk@52 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-01-05 03:34:50 +00:00