aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/benchmain.cpp
Commit message (Collapse)AuthorAge
* Add NVPR configs to benchGravatar commit-bot@chromium.org2014-01-26
| | | | | | | | | | | BUG=skia:2042 R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/145943003 git-svn-id: http://skia.googlecode.com/svn/trunk@13188 2bbb7eff-a529-9590-31e7-b0007b416f81
* add leaks flag to show unref'd instsGravatar commit-bot@chromium.org2014-01-23
| | | | | | | | | | | | | | | | Leaks are shown optionally instead of always for tests, gm, and bench. The current display does not show actual leaks necessarily, but shows global objects that were not deleted when the test ended. To enable the end-of-run leak display, pass --leaks or -l. BUG=skia: R=mtklein@google.com Author: caryclark@google.com Review URL: https://codereview.chromium.org/143943009 git-svn-id: http://skia.googlecode.com/svn/trunk@13151 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add default resource path for skia test cases in gm and bench tools.Gravatar tfarina@chromium.org2013-12-31
| | | | | | | | | | BUG=skia:1765 TEST=./out/Release/gm --match downsamplebitmap_image R=mtklein@google.com, scroggo@google.com, yunchao.he@intel.com Review URL: https://codereview.chromium.org/120873002 git-svn-id: http://skia.googlecode.com/svn/trunk@12850 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove SK_SCALAR_IS_[FLOAT,FIXED] and assume floatsGravatar reed@google.com2013-12-17
| | | | | | | | | | | | | To keep the CL (slightly) managable, this does not make any changes to existing macros (e.g. SkScalarMul). Just tackling #ifdef constructs this time around. BUG= R=bsalomon@google.com, caryclark@google.com Review URL: https://codereview.chromium.org/117053002 git-svn-id: http://skia.googlecode.com/svn/trunk@12712 2bbb7eff-a529-9590-31e7-b0007b416f81
* 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
* Add JSON output option to bench.Gravatar commit-bot@chromium.org2013-12-03
| | | | | | | | | | | | | | | | | | | | A new command-line flag --outResultsFile takes the filename to write the JSON into. The human readable output is the same as before with one exception. Previously DEBUG would be printed if in debug mode, or nothing would be printed if in release mode. Now this is reported as a named option: build=DEBUG or build=RELEASE R=djsollen@google.com, bsalomon@google.com Author: jcgregorio@google.com Review URL: https://codereview.chromium.org/83863002 git-svn-id: http://skia.googlecode.com/svn/trunk@12465 2bbb7eff-a529-9590-31e7-b0007b416f81
* More Windows 64b compilation warning fixesGravatar robertphillips@google.com2013-11-21
| | | | | | | | https://codereview.chromium.org/47513017/ git-svn-id: http://skia.googlecode.com/svn/trunk@12337 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement a benchmark for GrResourceCacheGravatar commit-bot@chromium.org2013-11-21
| | | | | | | | | | | | | | | | | | | | | | | Adds "grresourcecache_add" and "grresourcecache_find" bench tests to test GrResourceCache::add and GrResourceCache::find. The tests work only with GPU backends, since GrResourceCache needs an GrGpu. Modifies bench tests to override SkBenchmark::isSuitableFor(Backend) function that specifies what kind of backend the test is inteded for. This replaces the previous "fIsRendering" flag that would indicate test that did no rendering. Adds SkCanvas::getGrContext() call to get the GrContext that the canvas ends up drawing to. The member function solves a common use-case that is also used in the benchmark added here. R=mtklein@google.com, bsalomon@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/73643005 git-svn-id: http://skia.googlecode.com/svn/trunk@12334 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r12315 (More Windows 64b compilation warning fixes) due to ↵Gravatar robertphillips@google.com2013-11-20
| | | | | | compilation failures git-svn-id: http://skia.googlecode.com/svn/trunk@12316 2bbb7eff-a529-9590-31e7-b0007b416f81
* More Windows 64b compilation warning fixesGravatar robertphillips@google.com2013-11-20
| | | | | | | | https://codereview.chromium.org/47513017/ git-svn-id: http://skia.googlecode.com/svn/trunk@12315 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix bench so that if SK_SUPPORTS_GPU even when not provided as compiler optionGravatar djsollen@google.com2013-11-20
| | | | | | | | | | | | | In the case that SK_SUPPORTS_GPU is not provided to the compiler the value is eithe defined in in the SkUserConfig.h or SkPostConfig.h. Prior to this change those headers were not read prior to trying to include the GPU headers which resulted in a failed compile. R=bsalomon@google.com Review URL: https://codereview.chromium.org/76213004 git-svn-id: http://skia.googlecode.com/svn/trunk@12309 2bbb7eff-a529-9590-31e7-b0007b416f81
* More clang warning fixes.Gravatar commit-bot@chromium.org2013-10-21
| | | | | | | | | | | | | | | | Mostly unused functions and variables removed. BUG=None TEST=ninja -C out/Debug most ninja -C out/Release most R=bsalomon@google.com, caryclark@google.com, robertphillips@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/27933002 git-svn-id: http://skia.googlecode.com/svn/trunk@11884 2bbb7eff-a529-9590-31e7-b0007b416f81
* Third wave of Win64 warning cleanupGravatar robertphillips@google.com2013-10-16
| | | | | | | | https://codereview.chromium.org/27487003/ git-svn-id: http://skia.googlecode.com/svn/trunk@11817 2bbb7eff-a529-9590-31e7-b0007b416f81
* save/restore the canvas around every bench draw callGravatar commit-bot@chromium.org2013-10-14
| | | | | | | | | | | | | | BUG= Committed: http://code.google.com/p/skia/source/detail?r=11728 R=djsollen@google.com, reed@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/26848013 git-svn-id: http://skia.googlecode.com/svn/trunk@11755 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
* fix warnings when running a no gpu buildGravatar djsollen@google.com2013-10-10
| | | | | | | | R=mtklein@google.com Review URL: https://codereview.chromium.org/26908002 git-svn-id: http://skia.googlecode.com/svn/trunk@11710 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix mac10.6 buildGravatar djsollen@google.com2013-10-10
| | | | | | Review URL: https://codereview.chromium.org/26882003 git-svn-id: http://skia.googlecode.com/svn/trunk@11708 2bbb7eff-a529-9590-31e7-b0007b416f81
* Insert swapbuffers into GPU benchmarks.Gravatar djsollen@google.com2013-10-10
| | | | | | | | R=mtklein@google.com Review URL: https://codereview.chromium.org/26489003 git-svn-id: http://skia.googlecode.com/svn/trunk@11704 2bbb7eff-a529-9590-31e7-b0007b416f81
* 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