aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/BitmapBench.cpp
Commit message (Collapse)AuthorAge
* Test performance of 565 bitmap scalingGravatar Yuqian Li2017-12-06
| | | | | | | | | | | | | | | | | | | | | This would catch b/70172912 On Linux desktops, see the difference between 8888 and 565 using: nanobench --config 8888 -m ^bitmap_RGB_565_scale$ ^bitmap_BGRA_8888_scale$ ^bitmap_RGB_565_scale_bilerp$ ^bitmap_BGRA_8888_scale_bilerp$ On Android, use: nanobench --config 8888 -m ^bitmap_RGB_565_scale$ ^bitmap_RGBA_8888_scale$ ^bitmap_RGB_565_scale_bilerp$ ^bitmap_RGBA_8888_scale_bilerp$ The results are similar if nanobench is run with --config 565. So it seems that the destination color type isn't very critical. Bug: skia: Change-Id: I71defda4d9e089a9a973cdb0c161773bc16e4a24 Reviewed-on: https://skia-review.googlesource.com/81141 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* remove unneeded code for index8 imagseGravatar Mike Reed2017-07-03
| | | | | | | | Bug: skia:6828 Change-Id: I039d6bc35a1ed93ce747247f32fe4e9d5b09da0c Reviewed-on: https://skia-review.googlesource.com/21400 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* hide lockpixels api behind flagGravatar Mike Reed2017-04-17
| | | | | | | | | | | | | | guarded by SK_SUPPORT_OBSOLETE_LOCKPIXELS needs https://codereview.chromium.org/2820873002/# to land first Bug: skia:6481 Change-Id: I1c39902cbf6fe99f622adfa8192733b95f7fea09 Change-Id: I1c39902cbf6fe99f622adfa8192733b95f7fea09 Reviewed-on: https://skia-review.googlesource.com/13580 Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert[4] "clean up (partially) colortable api""""Gravatar Mike Reed2017-04-03
| | | | | | | | | | | | | | Fixes: - create temp api for android to pass nullptr - don't release and access sk_sp<SkData> at the same time in parameters This reverts commit b14131c1851eea6acbd34cc42a8f860daed36b21. Bug: skia: Change-Id: Ic0e4f62520ba9f35455499ed30d306ad19d998a8 Reviewed-on: https://skia-review.googlesource.com/11129 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Matt Sarett <msarett@google.com>
* Revert "Revert[2] "clean up (partially) colortable api"""Gravatar Mike Reed2017-04-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9920b10f5292838f00600f676c4578cd11705e60. Reason for revert: trying to get details on w2k failure https://chromium-swarm.appspot.com/task?id=354345d34ba3b310&refresh=10 Caught exception 3221225477 EXCEPTION_ACCESS_VIOLATION, was running: unit test HugeBlurImageFilter unit test FontNames unit test Codec_PngRoundTrip unit test ClampRange unit test FontHost unit test ColorMatrixFilter f16 image scaled_codec_premul abnormal.wbmp 565 image brd_android_codec_divisor_0.167 interlaced3.png_0.167 unit test Codec_png unit test ImageFilterBlurLargeImage unit test FontObj unit test DrawText unit test GrShape 565 image brd_android_codec_divisor_0.333 interlaced2.png_0.333 unit test PathOpsOpCubicsThreaded unit test PathOpsOpLoopsThreaded unit test FontMgr unit test ColorToHSVRoundTrip unit test Image_Serialize_Encoding_Failure Likely culprit: unit test Image_Serialize_Encoding_Failure step returned non-zero exit code: -1073741819 Original change's description: > Revert[2] "clean up (partially) colortable api"" > > This reverts commit 1d1165ca6575e082b892c5460492c411618783ad. > > Bug: skia: > Change-Id: Idbc0634ae3cec2e79f592d252de8751b077e6408 > Reviewed-on: https://skia-review.googlesource.com/11024 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Reed <reed@google.com> > TBR=reed@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ia4e73434b083224baa36092c69526c2f59bb16aa Reviewed-on: https://skia-review.googlesource.com/11025 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert[2] "clean up (partially) colortable api""Gravatar Mike Reed2017-04-01
| | | | | | | | | | This reverts commit 1d1165ca6575e082b892c5460492c411618783ad. Bug: skia: Change-Id: Idbc0634ae3cec2e79f592d252de8751b077e6408 Reviewed-on: https://skia-review.googlesource.com/11024 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "clean up (partially) colortable api"Gravatar Mike Klein2017-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2e491a6a113c5e16a3b7bede5fa6f588deeb928d. Reason for revert: Windows unit tests failing? Original change's description: > clean up (partially) colortable api > > Needs this to land: https://codereview.chromium.org/2789853002/ > > Bug: skia: > Change-Id: I38d916a546b7fa64d000d973e695ddda24a589e7 > Reviewed-on: https://skia-review.googlesource.com/10600 > Commit-Queue: Mike Reed <reed@google.com> > Reviewed-by: Matt Sarett <msarett@google.com> > TBR=msarett@google.com,scroggo@google.com,reed@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I626e7edfcea82576a440dcaa851a04cedee6233f Reviewed-on: https://skia-review.googlesource.com/10966 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* clean up (partially) colortable apiGravatar Mike Reed2017-03-31
| | | | | | | | | | Needs this to land: https://codereview.chromium.org/2789853002/ Bug: skia: Change-Id: I38d916a546b7fa64d000d973e695ddda24a589e7 Reviewed-on: https://skia-review.googlesource.com/10600 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Matt Sarett <msarett@google.com>
* hide trivial helpers on canvasGravatar Mike Reed2017-02-22
| | | | | | | | | BUG=skia: Change-Id: I42d4ca92897bde5bd8e0575a0104b12b83134cef Reviewed-on: https://skia-review.googlesource.com/8852 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Factor code to rotate a canvas about a point.Gravatar bungeman2016-07-12
| | | | | | | | | | | SkMatrix::scale and ::rotate take a point around which to scale or rotate. Canvas lacks these helpers, so the code to rotate a canvas around a point has been duplicated many times. Factor all of these implementations into SkCanvas::rotate. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2142033002 Review-Url: https://codereview.chromium.org/2142033002
* Remove const from `const int loops`.Gravatar mtklein2015-10-01
| | | | | | | | This drives me nuts, and prevents `while (loops --> 0)`. BUG=skia: Review URL: https://codereview.chromium.org/1379923005
* Fix for nexus 5 crashing in GL benchesGravatar joshualitt2015-09-30
| | | | | | | | | | GLBenches do not expect gl state to change between onPerCanvasPreDraw and *PostDraw, but we do a clear and sometimes we clear as draw. This causes us to bind vertex objects / programs / etc. This change creates two new virtual methods which are called right before and immediately after timing. BUG=skia: Review URL: https://codereview.chromium.org/1379853003
* Style Change: NULL->nullptrGravatar halcanary2015-08-27
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
* Fix up -Winconsistent-missing-overrideGravatar mtklein2015-07-13
| | | | | | | | | | | | | | (and a couple presubmit fixes) This allows us to turn back on -Werror for LLVM coverage builds, and more generally supports building with Clang 3.7. No public API changes. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/1232463006
* C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla}Gravatar mtklein2015-03-25
| | | | | | | | | NOPRESUBMIT=true BUG=skia: DOCS_PREVIEW= https://skia.org/?cl=1037793002 Review URL: https://codereview.chromium.org/1037793002
* SkPaint::FilterLevel -> SkFilterQualityGravatar reed2015-03-16
| | | | | | | | | clone (+rebase) of https://codereview.chromium.org/1009183002/ BUG=skia: TBR=scroggo@google.com Review URL: https://codereview.chromium.org/1014533004
* Fix up all the easy virtual ... SK_OVERRIDE cases.Gravatar mtklein2015-01-09
| | | | | | | | | | | | This fixes every case where virtual and SK_OVERRIDE were on the same line, which should be the bulk of cases. We'll have to manually clean up the rest over time unless I level up in regexes. for f in (find . -type f); perl -p -i -e 's/virtual (.*)SK_OVERRIDE/\1SK_OVERRIDE/g' $f; end BUG=skia: Review URL: https://codereview.chromium.org/806653007
* Revert "Revert of create shaderproc for nofilter-opaque-dx (patchset #7 ↵Gravatar mtklein2014-10-23
| | | | | | | | | | id:120001 of https://codereview.chromium.org/664783004/)" This reverts commit 430b795cc8a1cdbddd8fdc5511a3a523348937f7 and adds suppressions. BUG=skia: Review URL: https://codereview.chromium.org/673023002
* Revert of create shaderproc for nofilter-opaque-dx (patchset #7 id:120001 of ↵Gravatar mtklein2014-10-23
| | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/664783004/) Reason for revert: Many GMs fixed. Needs rebaseline, perhaps layout test rebaselines. Original issue's description: > create shaderproc for nofilter-opaque-dx > > > speedup nofilter > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/a40a276bcee2246439dcf816273c1307f5c3c69f TBR=djsollen@google.com,reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/656913005
* create shaderproc for nofilter-opaque-dxGravatar reed2014-10-23
| | | | | | | | speedup nofilter BUG=skia: Review URL: https://codereview.chromium.org/664783004
* remove alphatype from colortableGravatar reed2014-09-29
| | | | | | | | | | | the owning bitmap is (already) responsible for knowing the alphatype BUG=skia: R=djsollen@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/611093002
* add rowbytes option to allocPixelsGravatar reed2014-06-28
| | | | | | | | TBR= Author: reed@google.com Review URL: https://codereview.chromium.org/345263005
* Remove Sk prefix from some bench classes.Gravatar tfarina2014-06-19
| | | | | | | | | | | | | | | | This idea came while commenting on https://codereview.chromium.org/343583005/ Since SkBenchmark, SkBenchLogger and SkGMBench are not part of the Skia library, they should not have the Sk prefix. BUG=None TEST=make all R=mtklein@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/347823004
* hide SkBitmap::setConfigGravatar reed2014-06-09
| | | | | | | | | | patch from issue 325733002 TBR=scroggo Author: reed@chromium.org Review URL: https://codereview.chromium.org/322963002
* Simplify benchmark internal API.Gravatar commit-bot@chromium.org2013-12-03
| | | | | | | | | | | | | | | | | | I'm not quite sure why I wrote such a convoluted API with setLoops()/getLoops(). This replaces it with a loops argument passed to onDraw(). This CL is largely mechanical translation from the old API to the new one. MathBench used this->getLoops() outside onDraw(), which seems incorrect. I fixed it. BUG= R=djsollen@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/99893003 git-svn-id: http://skia.googlecode.com/svn/trunk@12466 2bbb7eff-a529-9590-31e7-b0007b416f81
* store SkAlphaType inside SkBitmap, on road to support unpremulGravatar reed@google.com2013-10-21
| | | | | | | | | BUG= R=bsalomon@google.com, scroggo@google.com Review URL: https://codereview.chromium.org/25275004 git-svn-id: http://skia.googlecode.com/svn/trunk@11877 2bbb7eff-a529-9590-31e7-b0007b416f81
* save/restore the canvas around every bench draw callGravatar commit-bot@chromium.org2013-10-11
| | | | | | | | | | | BUG= R=djsollen@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/26848013 git-svn-id: http://skia.googlecode.com/svn/trunk@11728 2bbb7eff-a529-9590-31e7-b0007b416f81
* Temporarily disable FilterBitmapBenches while I fix it.Gravatar mtklein@google.com2013-10-10
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/26254003 git-svn-id: http://skia.googlecode.com/svn/trunk@11718 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Revert "change SkColorTable to be immutable""Gravatar reed@google.com2013-10-10
| | | | | | | | | | | | This reverts commit b8162cb840f4cb6002ef68d5ac775c6a122c52a9. Fixed was call-sites in benches that used the (now gone) setIsOpaque api. R=scroggo@google.com Review URL: https://codereview.chromium.org/26572006 git-svn-id: http://skia.googlecode.com/svn/trunk@11695 2bbb7eff-a529-9590-31e7-b0007b416f81
* Refactoring: get rid of the SkBenchmark void* parameter.Gravatar mtklein@google.com2013-09-13
| | | | | | | | | | | While I was doing massive sed-ing, I also converted every bench to use DEF_BENCH instead of registering the ugly manual way. BUG= R=scroggo@google.com Review URL: https://codereview.chromium.org/23876006 git-svn-id: http://skia.googlecode.com/svn/trunk@11263 2bbb7eff-a529-9590-31e7-b0007b416f81
* Major bench refactoring.Gravatar mtklein@google.com2013-09-10
| | | | | | | | | | | | | - Use FLAGS_. - Remove outer repeat loop. - Tune inner loop automatically. BUG=skia:1590 R=epoger@google.com, scroggo@google.com Review URL: https://codereview.chromium.org/23478013 git-svn-id: http://skia.googlecode.com/svn/trunk@11187 2bbb7eff-a529-9590-31e7-b0007b416f81
* Change old PRG to be SkLCGRandom; change new one to SkRandomGravatar commit-bot@chromium.org2013-09-09
| | | | | | | | | | | | | | The goal here is to get people to start using the new random number generator, while leaving the old one in place so we don't have to rebaseline GMs. R=reed@google.com, bsalomon@google.com Author: jvanverth@google.com Review URL: https://chromiumcodereview.appspot.com/23576015 git-svn-id: http://skia.googlecode.com/svn/trunk@11169 2bbb7eff-a529-9590-31e7-b0007b416f81
* Switch out random number generator for tests, benches, samples.Gravatar commit-bot@chromium.org2013-09-06
| | | | | | | | | | | | This change makes tests, benches and samples use the new SkMWCRandom PRNG. GMs will be saved for another time, as they'll require rebaselining. R=reed@google.com, bsalomon@google.com Author: jvanverth@google.com Review URL: https://chromiumcodereview.appspot.com/23653018 git-svn-id: http://skia.googlecode.com/svn/trunk@11136 2bbb7eff-a529-9590-31e7-b0007b416f81
* stop using bitmap-filter flags outside of paint itself, as a step towards ↵Gravatar reed@google.com2013-07-22
| | | | | | | | | | really changing them into an enum BUG= Review URL: https://codereview.chromium.org/19825002 git-svn-id: http://skia.googlecode.com/svn/trunk@10240 2bbb7eff-a529-9590-31e7-b0007b416f81
* New bitmap filter checkin; this time with less build breakageGravatar humper@google.com2013-07-09
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/18942002 git-svn-id: http://skia.googlecode.com/svn/trunk@9944 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "More general image filter interface; tested implementation of ↵Gravatar humper@google.com2013-07-09
| | | | | | | | standalone" This reverts commit 4df3e8b079e019af5f60c13e7e6ec6589663962a. git-svn-id: http://skia.googlecode.com/svn/trunk@9937 2bbb7eff-a529-9590-31e7-b0007b416f81
* More general image filter interface; tested implementation of standaloneGravatar humper@google.com2013-07-09
| | | | | | | | | | | | image scaler (not yet plumbed). High quality downsampler. Fast SSE resampler. BUG= R=reed@google.com Review URL: https://codereview.chromium.org/17381008 git-svn-id: http://skia.googlecode.com/svn/trunk@9936 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove dst/rendertarget support for kARGB_4444_ConfigGravatar reed@google.com2013-06-21
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/17335008 git-svn-id: http://skia.googlecode.com/svn/trunk@9727 2bbb7eff-a529-9590-31e7-b0007b416f81
* cast enum to float to fix (really bad) warningGravatar reed@google.com2013-05-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@9316 2bbb7eff-a529-9590-31e7-b0007b416f81
* extend SkBenchmark to allow a bench to return a durationScale, which allows ↵Gravatar reed@google.com2013-05-29
| | | | | | | | | | | | | | | it to perform fewer actual interations, but report a scale factor to account for that. Thus a very slow bench can be compared head-to-head with a faster one, w/o actually forcing the tool to run for the full duration of the slower test. Extend BitmapBench to time bicubic filtering, and use this durationScale for it. Extend SkBenchmark to have setBitmapFlags(or, clear), allowing it to request a set of paint flags to be cleared, and set to be set. BUG= R=robertphillips@google.com Review URL: https://codereview.chromium.org/16069010 git-svn-id: http://skia.googlecode.com/svn/trunk@9315 2bbb7eff-a529-9590-31e7-b0007b416f81
* use DEF_BENCHGravatar reed@google.com2013-05-28
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/16069005 git-svn-id: http://skia.googlecode.com/svn/trunk@9305 2bbb7eff-a529-9590-31e7-b0007b416f81
* Partial reapply of r5364 minus the non-neon code path.Gravatar djsollen@google.com2013-04-09
| | | | | | | | See https://codereview.appspot.com/6465075 for a more detailed description of the contents of this CL. Review URL: https://codereview.chromium.org/13060004 git-svn-id: http://skia.googlecode.com/svn/trunk@8579 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2013-01-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r5364 (Update ARM and NEON optimizations for S32A_Opaque_BlitRow32)Gravatar robertphillips@google.com2012-09-04
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5378 2bbb7eff-a529-9590-31e7-b0007b416f81
* Update ARM and NEON optimizations for S32A_Opaque_BlitRow32.Gravatar djsollen@google.com2012-08-31
| | | | | | | | These patches replace those written by ARM with ones provided by NVidia. Review URL: https://codereview.appspot.com/6465075 git-svn-id: http://skia.googlecode.com/svn/trunk@5364 2bbb7eff-a529-9590-31e7-b0007b416f81
* Result of running tools/sanitize_source_files.py (which was added in ↵Gravatar rmistry@google.com2012-08-23
| | | | | | | | | https://codereview.appspot.com/6465078/) This CL is part I of IV (I broke down the 1280 files into 4 CLs). Review URL: https://codereview.appspot.com/6485054 git-svn-id: http://skia.googlecode.com/svn/trunk@5262 2bbb7eff-a529-9590-31e7-b0007b416f81
* land http://codereview.appspot.com/6353063/ by LeiGravatar reed@google.com2012-07-24
| | | | | | | | | | | | | | | | | | | | | | | optimizations for D16 using SSE2 skia_bench -config 565 -match bitmap_8888_scale_filter -forceFilter 1 -repeat 30 The result I got on Android platform was below: w/o this optimization routine: D/skia ( 1868): running bench [640 480] bitmap_8888_scale_filter D/skia ( 1868): 565: cmsecs = 286.50 w/ with optimization: D/skia ( 1463): running bench [640 480] bitmap_8888_scale_filter D/skia ( 1463): 565: cmsecs = 186.80 The net gain is 34.80%. git-svn-id: http://skia.googlecode.com/svn/trunk@4729 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add (8) more benchmarks to capture performance of a pair of blit optimizationGravatar tomhudson@google.com2012-05-15
| | | | | | | | | | procs. http://codereview.appspot.com/6209064/ git-svn-id: http://skia.googlecode.com/svn/trunk@3963 2bbb7eff-a529-9590-31e7-b0007b416f81
* In debug builds, only run each benchmark 1 time (test for assertion-breakage,Gravatar tomhudson@google.com2011-10-28
| | | | | | | | | not performance). codereview.appspot.com/5314064/ git-svn-id: http://skia.googlecode.com/svn/trunk@2552 2bbb7eff-a529-9590-31e7-b0007b416f81
* Automatic update of all copyright notices to reflect new license terms.Gravatar epoger@google.com2011-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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