aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/benchmain.cpp
Commit message (Collapse)AuthorAge
* Bench baseline for mostly 0 image.Gravatar scroggo@google.com2013-09-25
| | | | | | | | | | | | | | | | | | | | | | | | Add a baseline for decoding a mostly 0 image. This is in advance of https://codereview.chromium.org/24269006/ which provides an option to skip writing those 0s (as part of BUG=skia:1661). On my Nexus 4, the benchmark does not slow down after that change. As suggested in https://codereview.chromium.org/24269006/ add a resourcePath flag to bench. Will require a change in buildbot in order to actually use the flag. Add an image used by the test. Until https://codereview.chromium.org/24448002 is submitted, the test will not actually be run by the bots (since it won't know where to find the file). BUG=skia:1661 R=djsollen@google.com, mtklein@google.com Review URL: https://codereview.chromium.org/24440002 git-svn-id: http://skia.googlecode.com/svn/trunk@11461 2bbb7eff-a529-9590-31e7-b0007b416f81
* Allow use of "--config defaults" in bench, like GMGravatar borenet@google.com2013-09-16
| | | | | | | | R=mtklein@google.com, scroggo@google.com Review URL: https://codereview.chromium.org/23855006 git-svn-id: http://skia.googlecode.com/svn/trunk@11298 2bbb7eff-a529-9590-31e7-b0007b416f81
* OK windows, please take my infinity.Gravatar mtklein@google.com2013-09-13
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/23526045 git-svn-id: http://skia.googlecode.com/svn/trunk@11272 2bbb7eff-a529-9590-31e7-b0007b416f81
* It looks like we're not always running long enough to give the GPU counters ↵Gravatar mtklein@google.com2013-09-13
| | | | | | | | | | | | | | | | | | | | | | time to converge (and possibly the same for CPU too, but GPU is definitely worse off). This CL changes our convergence logic from - did the last run take more than x milliseconds? to - did the last run take more x milliseconds and are the last two runs within y% of each other? There's also now an upper limit where we bail out with an error if we haven't yet met the convergence criteria. Keeping the lower bound is important for benches where the constant overhead is much larger than the work done in the loop; without it we'll see T(1 loop) == T(2 loops) and converge way too early. This CL also exposed that DeferredCanvasBench had a bug: it was running N^2 loops when we told it to run N. (My fault.) I threw in a couple other linty changes that I'd be happy to split off. BUG= R=robertphillips@google.com Review URL: https://codereview.chromium.org/23536046 git-svn-id: http://skia.googlecode.com/svn/trunk@11267 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
* Add missing dependency to unbreak NOGPU build.Gravatar mtklein@google.com2013-09-10
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/23527004 git-svn-id: http://skia.googlecode.com/svn/trunk@11188 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
* Fix bench logging for --repeat 1Gravatar borenet@google.com2013-09-10
| | | | | | | | | | Addressing https://code.google.com/p/skia/issues/detail?id=1607 R=scroggo@google.com Review URL: https://codereview.chromium.org/23923011 git-svn-id: http://skia.googlecode.com/svn/trunk@11181 2bbb7eff-a529-9590-31e7-b0007b416f81
* Patch for 10995Gravatar robertphillips@google.com2013-08-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@10997 2bbb7eff-a529-9590-31e7-b0007b416f81
* Split SkDevice into SkBaseDevice and SkBitmapDeviceGravatar robertphillips@google.com2013-08-29
| | | | | | | | https://codereview.chromium.org/22978012/ git-svn-id: http://skia.googlecode.com/svn/trunk@10995 2bbb7eff-a529-9590-31e7-b0007b416f81
* Replace uses of GR_DEBUG by SK_DEBUG.Gravatar commit-bot@chromium.org2013-08-28
| | | | | | | | | | | BUG=None R=bsalomon@google.com, robertphillips@google.com Author: tfarina@chromium.org Review URL: https://chromiumcodereview.appspot.com/23137022 git-svn-id: http://skia.googlecode.com/svn/trunk@10978 2bbb7eff-a529-9590-31e7-b0007b416f81
* My clang now doesn't complain about !"foo".Gravatar mtklein@google.com2013-08-22
| | | | | | | | | BUG= R=robertphillips@google.com Review URL: https://codereview.chromium.org/22875037 git-svn-id: http://skia.googlecode.com/svn/trunk@10874 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert r10830 (Split SkDevice out of SkRasterDevice) until we can get ↵Gravatar robertphillips@google.com2013-08-20
| | | | | | Chromium ready. git-svn-id: http://skia.googlecode.com/svn/trunk@10835 2bbb7eff-a529-9590-31e7-b0007b416f81
* Split SkDevice out of SkBitmapDeviceGravatar robertphillips@google.com2013-08-20
| | | | | | | | https://codereview.chromium.org/22978012/ git-svn-id: http://skia.googlecode.com/svn/trunk@10830 2bbb7eff-a529-9590-31e7-b0007b416f81
* Removing deprecated constructors and setDevice from SkDeferredCanvasGravatar commit-bot@chromium.org2013-08-09
| | | | | | | | | | | R=senorblanco@google.com, senorblanco@chromium.org BUR=crbug.com/270143 Author: junov@chromium.org Review URL: https://chromiumcodereview.appspot.com/22385011 git-svn-id: http://skia.googlecode.com/svn/trunk@10657 2bbb7eff-a529-9590-31e7-b0007b416f81
* Committed: http://code.google.com/p/skia/source/detail?r=10372Gravatar commit-bot@chromium.org2013-07-31
| | | | | | | | | | R=borenet@google.com, bungeman@google.com, robertphillips@google.com, scroggo@google.com, sglez@google.com Author: bsalomon@google.com Review URL: https://chromiumcodereview.appspot.com/19862002 git-svn-id: http://skia.googlecode.com/svn/trunk@10473 2bbb7eff-a529-9590-31e7-b0007b416f81
* This reverts commit 4052fd051db67bd1099fde2c4fe400cfbe1f2426.Gravatar bsalomon@google.com2013-07-25
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@10374 2bbb7eff-a529-9590-31e7-b0007b416f81
* R=borenet@google.com, bungeman@google.com, robertphillips@google.comGravatar commit-bot@chromium.org2013-07-25
| | | | | | | | Author: bsalomon@google.com Review URL: https://chromiumcodereview.appspot.com/19862002 git-svn-id: http://skia.googlecode.com/svn/trunk@10372 2bbb7eff-a529-9590-31e7-b0007b416f81
* refactor duplication (shouldSkip and skip_name) into a utility functionGravatar sglez@google.com2013-07-24
| | | | | | | | | | R=caryclark@google.com, reed@google.com Committed: https://code.google.com/p/skia/source/detail?r=10280 Review URL: https://codereview.chromium.org/19807005 git-svn-id: http://skia.googlecode.com/svn/trunk@10317 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert r10280, which caused https://code.google.com/p/skia/issues/detail?id=1441Gravatar epoger@google.com2013-07-23
| | | | | | Review URL: https://codereview.chromium.org/19537005 git-svn-id: http://skia.googlecode.com/svn/trunk@10284 2bbb7eff-a529-9590-31e7-b0007b416f81
* refactor duplication (shouldSkip and skip_name) into a utility functionGravatar sglez@google.com2013-07-23
| | | | | | | | R=caryclark@google.com, reed@google.com Review URL: https://codereview.chromium.org/19807005 git-svn-id: http://skia.googlecode.com/svn/trunk@10280 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixes microbench format change caused by r9417.Gravatar bensong@google.com2013-06-12
| | | | | | | r9417 introduced extra line breaks between different configs for a bench. This reverts the outputs to the previous one-line format. Review URL: https://codereview.chromium.org/16703024 git-svn-id: http://skia.googlecode.com/svn/trunk@9528 2bbb7eff-a529-9590-31e7-b0007b416f81
* Don't crash if device creation fails in bench.Gravatar commit-bot@chromium.org2013-06-03
| | | | | | | | | | R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://chromiumcodereview.appspot.com/16256011 git-svn-id: http://skia.googlecode.com/svn/trunk@9417 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
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-05-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@9307 2bbb7eff-a529-9590-31e7-b0007b416f81
* Changing SkDeferredCanvas to use factories for creationGravatar junov@chromium.org2013-05-28
| | | | | | | | | | | | | | | The objective of this change is to remove all calls to SkCanvas::setDevice. The factory API is hidden behind a build flag in order to ease the roll into chromium. A side-effect of the factory pattern is that it will no longer be possible to allocate a SkDeferredCanvas on the stack. This changes nothing for chrome, but it impacts skia test programs. Review URL: https://codereview.chromium.org/16040002 git-svn-id: http://skia.googlecode.com/svn/trunk@9298 2bbb7eff-a529-9590-31e7-b0007b416f81
* add wildcard test name matching to gm and bench.Gravatar caryclark@google.com2013-05-10
| | | | | | | | | | | | | | | | This adds the same set of options in unit tests, i.e: --match [~][^]match[$] [~][^]match[$] ... ~ causes a matching test to always be skipped ^ requires the start of the test to match $ requires the end of the test to match ^ and $ requires an exact match If a test does not match any list entry, it is skipped unless some list entry starts with ~ Review URL: https://codereview.chromium.org/14746017 git-svn-id: http://skia.googlecode.com/svn/trunk@9096 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add Xfermode bench. Also clear before rendering in bench (rather than after).Gravatar commit-bot@chromium.org2013-04-01
| | | | | | | | | | Author: bsalomon@google.com Reviewed By: robertphillips@google.com Review URL: https://chromiumcodereview.appspot.com/13334011 git-svn-id: http://skia.googlecode.com/svn/trunk@8454 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add MSAA configs to bench.Gravatar bsalomon@google.com2013-03-19
| | | | | | Review URL: https://codereview.chromium.org/12607013 git-svn-id: http://skia.googlecode.com/svn/trunk@8217 2bbb7eff-a529-9590-31e7-b0007b416f81
* Run non-rendering benches in their own config.Gravatar bsalomon@google.com2013-03-15
| | | | | | | | | | | | | | | | | Currently benches that set fIsRendering = false are run as part of the first config run. This is problematic for several reasons. 1) Which config they are run as depends on the --config options passed to bench. If I run bench --config GPU --config 8888 then they will be run in the GPU config and not the 8888 config. 2) Their presence makes bench take longer to run when testing rendering changes or comparing one rendering config to another (e.g. GPU v 8888). This is especially true on Android. 3) When comparing runs of a single config across multiple bench runs (typically with code changes) it isn't obvious from the output which benchs to ignore because they say are listed under as being part of the config. This CL adds NONRENDERING as a config (open to name suggestions). Non-rendering tests are run in and only in the NONRENDERING config. Will this screw up our bench bots/scripts/graphs? If so I think we should change them since running non-rendering tests separately makes a lot more sense than the current madness. Review URL: https://codereview.chromium.org/12475012 git-svn-id: http://skia.googlecode.com/svn/trunk@8174 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix sign/unsigned warnings in benchmain.cpp and gmmain.cppGravatar bsalomon@google.com2013-03-11
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8079 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add --gpucache size to bench.Gravatar bsalomon@google.com2013-03-11
| | | | | | | R=robertphillips@google.com Review URL: https://codereview.chromium.org/12635009 git-svn-id: http://skia.googlecode.com/svn/trunk@8075 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixing some warnings on LinuxGravatar sugoi@google.com2013-03-07
| | | | | | | There were only a few warnings left, so I fixed them and enabled the unused variable warning by removing the "-Wno-unused" flag. Only the -Wno-unused-parameter remains for now (could be removed later). Review URL: https://codereview.chromium.org/12480002 git-svn-id: http://skia.googlecode.com/svn/trunk@8030 2bbb7eff-a529-9590-31e7-b0007b416f81
* Created my own flag parser, based off of gflags.Gravatar scroggo@google.com2013-03-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Share common code between bench_ and render_ to set up the PictureRenderer. Fix an include error in SkPictureRenderer.h. Simplified parameter passing in render_pictures_main. Switch to using an SkAutoTUnref for the PictureRenderer. I also changed the input format somewhat, so the buildbots need to be updated as well: https://codereview.appspot.com/7441044/ Fixed a bug in PictureBenchmark where calling setTimeIndividualTiles(false) sets the member variable to true. Removed setDeviceType from PictureBenchmark, since only the PictureRenderer needs to know which device type to use. Some changes to the input format: '--logPerIter' no longer takes a 1 or 0. Instead, '--logPerIter' turns it on and '--nologPerIter' turns it off (with off as the default). (Note that this is for bench_pictures; bench still uses the old format) Change '--device' to '--config' and 'bitmap' to '8888' to be the same as gm. Requires '--r' before inputs (to match gm), though there can be multiple inputs following it. Changed --enable-deferred-image-decoding (which no one uses but me yet anyway) to --deferImageDecoding, since the former is incompatible with the flag parser. Changes to behavior: Show a short error message on failure (rather than the explanation of all flags). BUG=https://code.google.com/p/skia/issues/detail?id=1094 Review URL: https://codereview.appspot.com/7230053 git-svn-id: http://skia.googlecode.com/svn/trunk@7961 2bbb7eff-a529-9590-31e7-b0007b416f81
* Split GrGLContextInfo into GrGLContext & GrGLContextInfoGravatar robertphillips@google.com2013-02-28
| | | | | | | | https://codereview.appspot.com/7436045/ git-svn-id: http://skia.googlecode.com/svn/trunk@7905 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix signed/unsigned comparison warnings in benchmain.cppGravatar bsalomon@google.com2013-02-22
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7833 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix GPU-less build of bench.Gravatar bsalomon@google.com2013-02-22
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7828 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make GPU versions of benchs use the same canvas size as raster.Gravatar bsalomon@google.com2013-02-22
| | | | | | Review URL: https://codereview.appspot.com/7400049 git-svn-id: http://skia.googlecode.com/svn/trunk@7827 2bbb7eff-a529-9590-31e7-b0007b416f81
* Enhance GL error checking for non-Ganesh GL callsGravatar robertphillips@google.com2013-02-07
| | | | | | | | https://codereview.appspot.com/7312057/ git-svn-id: http://skia.googlecode.com/svn/trunk@7647 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove legacy names no longer referenced in Chrome and WebKit.Gravatar bsalomon@google.com2013-02-07
| | | | | | Review URL: https://codereview.appspot.com/7311055 git-svn-id: http://skia.googlecode.com/svn/trunk@7640 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
* Turn on the kUsePathBoundsForClip_RecordingFlag in bench, gm and tools that ↵Gravatar junov@chromium.org2013-01-16
| | | | | | | | | | | | | | use class PictureRenderer Chrome uses this flag for recording to skpicture in order to improve performance. Therefore, skai benchmarks should run with this flag enabled, and we need gm and render_pictures test coverage to validate it. In gm, the vanilla SkPicture test step will still run without the flag to ensure that case still gets test coverage, while the SkPicture test steps that use rtree and tileGrid will now run with the flag enabled. Review URL: https://codereview.appspot.com/7111043 git-svn-id: http://skia.googlecode.com/svn/trunk@7234 2bbb7eff-a529-9590-31e7-b0007b416f81
* Re-enable inst counting in debug builds.Gravatar bsalomon@google.com2013-01-15
| | | | | | | R=robertphillips@google.com Review URL: https://codereview.appspot.com/7098066 git-svn-id: http://skia.googlecode.com/svn/trunk@7206 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add clear after each image save, so that GPU images won't end up ↵Gravatar jvanverth@google.com2013-01-09
| | | | | | progressively compositing on top of one another. git-svn-id: http://skia.googlecode.com/svn/trunk@7108 2bbb7eff-a529-9590-31e7-b0007b416f81
* Defining new color constat for transparent colorGravatar junov@google.com2012-12-06
| | | | | | Review URL: https://codereview.appspot.com/6901044 git-svn-id: http://skia.googlecode.com/svn/trunk@6696 2bbb7eff-a529-9590-31e7-b0007b416f81
* Improve NaCl supportGravatar borenet@google.com2012-11-01
| | | | | | | | | | | | | | | | - Add nacl_make script to build Skia targets for NaCl using gyp - Add nacl_interface for command-line apps - Add nacl_sample as front-end for SampleApp - Add freetype to DEPS - Various gyp tweaks for NaCl TODO: - Implement GL interface - Implement font host - Fix plumbing so that SampleApp works properly Review URL: https://codereview.appspot.com/6671044 git-svn-id: http://skia.googlecode.com/svn/trunk@6245 2bbb7eff-a529-9590-31e7-b0007b416f81
* Platform/Engine -> BackendGravatar bsalomon@google.com2012-10-25
| | | | | | | | | createPlatform -> wrapBackend R=robertphillips@google.com Review URL: https://codereview.appspot.com/6785044 git-svn-id: http://skia.googlecode.com/svn/trunk@6123 2bbb7eff-a529-9590-31e7-b0007b416f81
* build iOS with 'make all'Gravatar caryclark@google.com2012-10-02
| | | | | | | | | | | This builds all skia tests by treating iOS tools as executable applications. A few warnings were fixed as well. Removed old trace draw code and remnants. Review URL: https://codereview.appspot.com/6597063 git-svn-id: http://skia.googlecode.com/svn/trunk@5776 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2012-09-21
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5635 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adding a silent playback option to SkGPipeReadGravatar junov@chromium.org2012-09-20
| | | | | | | | | | | Testing state consistency after silent playback in CanvasTest indirectly through SkDeferredCanvas. BUG=http://code.google.com/p/chromium/issues/detail?id=146178 TEST=CanvasTest unit test, and bench with --mode deferredSilent Review URL: https://codereview.appspot.com/6542047 git-svn-id: http://skia.googlecode.com/svn/trunk@5619 2bbb7eff-a529-9590-31e7-b0007b416f81