aboutsummaryrefslogtreecommitdiffhomepage
path: root/dm/DMUtil.cpp
Commit message (Collapse)AuthorAge
* Don't test the old picture backend anymore.Gravatar mtklein2014-09-29
| | | | | | | | | | | This saves a bunch of CPU time in DM, and even better, lets us tear it down! BUG=skia: R=robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/612603002
* Add --matrix to DM, to play around with and maybe use on a bot.Gravatar mtklein2014-09-11
| | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/563723005
* Try out scalar picture sizesGravatar robertphillips2014-08-29
| | | | | | | | | | This paves the way for removing the 'fTile' parameter from SkPictureShader (although that should be a different CL). If we like this we could also move to providing an entire cull SkRect. R=reed@google.com, mtklein@google.com, fmalita@google.com, fmalita@chromium.org Author: robertphillips@google.com Review URL: https://codereview.chromium.org/513983002
* Install a hook to swap between SkPicture backends with a single define.Gravatar mtklein2014-08-21
| | | | | | | | | BUG=skia: R=robertphillips@google.com, reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/492023002
* Support serialization in SkRecord-backed SkPictures.Gravatar mtklein2014-06-24
| | | | | | | | | | | Update DM to test SkRecord through SkPictureRecorder API. BUG=skia: R=robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/345553003
* DM: SKP source / PDF backendGravatar mtklein2014-06-06
| | | | | | | | | | | | | Removed expectations code for PDF backend for now, given that we don't have any, and refactored a little to make that cleaner. We can now test .skp -> .pdf -> .png in DM. Neat eh? BUG=skia:2598 R=halcanary@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/316643003
* Alter SkCanvas::drawPicture (devirtualize, take const SkPicture, take pointer)Gravatar robertphillips2014-06-04
| | | | | | | | R=reed@google.com, bsalomon@google.com, mtklein@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/313613004
* DM: go back to memcmp for BitmapsEqualGravatar mtklein2014-06-03
| | | | | | | | | | | | | | | Even when autovectorized, using MaxComponentDifference is slower than memcmp. And debug builds (most runs of DM) will never even be autovectorized. DM::MaxComponentDifference is the top function on DM profile, and memcmp moves to ~20th. BUG=skia: R=halcanary@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/315743002
* DM: find max component differenceGravatar commit-bot@chromium.org2014-05-16
| | | | | | | | | | | | | So far unused except to back BitmapsEqual, but I want to play with it in CLs I'm working on. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/290043005 git-svn-id: http://skia.googlecode.com/svn/trunk@14759 2bbb7eff-a529-9590-31e7-b0007b416f81
* refactor DM::SetupBitmapGravatar commit-bot@chromium.org2014-05-15
| | | | | | | | | | | | | Seemed sort of repetitive. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/286993005 git-svn-id: http://skia.googlecode.com/svn/trunk@14752 2bbb7eff-a529-9590-31e7-b0007b416f81
* DM: Add --skps.Gravatar commit-bot@chromium.org2014-05-14
| | | | | | | | | | | | | | | This does render_pictures, plus checks SkRecord optimizations. Disable an SkRecord optimization that draws several bot SKPs wrong. (To be investigated.) BUG=skia:2378 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/270543004 git-svn-id: http://skia.googlecode.com/svn/trunk@14739 2bbb7eff-a529-9590-31e7-b0007b416f81
* Staging for cleanup of SkPicture-related headersGravatar robertphillips@google.com2014-04-18
| | | | | | | | https://codereview.chromium.org/243173002 git-svn-id: http://skia.googlecode.com/svn/trunk@14258 2bbb7eff-a529-9590-31e7-b0007b416f81
* Staged removal of SkPicture-derived classesGravatar commit-bot@chromium.org2014-04-17
| | | | | | | | | | | | | | This CL removes the SkPicture-derived classes (with a flag to keeps clients working). In the process it also lightens the recording factory function so it is no longer ref counted). The only interesting bits are in SkPicture* and Sk*Picture.* R=reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/238273012 git-svn-id: http://skia.googlecode.com/svn/trunk@14251 2bbb7eff-a529-9590-31e7-b0007b416f81
* split SkPictureRecorder out of SkPictureGravatar robertphillips@google.com2014-04-13
| | | | | | | | https://codereview.chromium.org/214953003/ git-svn-id: http://skia.googlecode.com/svn/trunk@14171 2bbb7eff-a529-9590-31e7-b0007b416f81
* DM: also run benches once.Gravatar commit-bot@chromium.org2014-02-26
| | | | | | | | | | | | | | | | | | Also: - make GrMemoryPoolBenches threadsafe - some tweaks to various DM code - rename GM::shortName() to getName() to match benches and tests On my desktop, (289 GMs, 617 benches) x 4 configs, 227 tests takes 46s in Debug, 14s in Release. (Still minutes faster than running tests && bench && gm.) GPU singlethreading is definitely the limiting factor again; going to reexamine whether that's helpful to thread it again. BUG=skia: R=reed@google.com, bsalomon@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/178473006 git-svn-id: http://skia.googlecode.com/svn/trunk@13603 2bbb7eff-a529-9590-31e7-b0007b416f81
* Change device factories to take SkImageInfo instead of SkBitmap::ConfigGravatar commit-bot@chromium.org2014-02-16
| | | | | | | | | | | | | patch from issue 167033002 BUG=skia: R=reed@google.com Author: reed@chromium.org Review URL: https://codereview.chromium.org/168653002 git-svn-id: http://skia.googlecode.com/svn/trunk@13463 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add support for reading a directory of images with --expectations (-r).Gravatar commit-bot@chromium.org2013-12-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DM writes out its images in a hierarchy that's a little different than GM, so this can't read GM's output. But it can read its own, written with -w. Example usage: $ out/Release/dm -w /tmp/baseline $ out/Release/dm -r /tmp/baseline -w /tmp/new (and optionally) $ mkdir /tmp/diff; out/Release/skdiff /tmp/baseline /tmp/new /tmp/diff GM's IndividualImageExpectationsSource and Expectations are a little too eager about decoding and hashing the expected images, so I took the opportunity to add DM::Expectations that mostly replaces skiagm::ExpectationsSource and skiagm::Expectations in DM. It mainly exists to move the image decoding and comparison off the main thread, which would otherwise be a major speed bottleneck. I tried to use skiagm code where possible. One notable place where I differed is in this new feature. When -r is a directory of images, DM does no hashing. It considerably faster to read the expected file into an SkBitmap and do a byte-for-byte comparison than to hash the two bitmaps and check those. The example usage above isn't quite working 100% yet. Expectations on some GMs fail, even with no binary change. I haven't pinned down whether this is due to - a bug in DM - flaky GMs - unthreadsafe GMs - flaky image decoding - unthreadsafe image decoding - something else but I intend to. Leon, Derek and I have suspected PNG decoding isn't threadsafe, but are as yet unable to prove it. I also seem to be able to cause malloc to fail on my laptop if I run too many configs at once, though I never seem to be using more than ~1G of RAM. Will track that down too. BUG= R=reed@google.com, bsalomon@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/108963002 git-svn-id: http://skia.googlecode.com/svn/trunk@12596 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r12427Gravatar rmistry@google.com2013-12-02
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12428 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-12-02
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12427 2bbb7eff-a529-9590-31e7-b0007b416f81
* DM: some refactoringGravatar mtklein@google.com2013-11-26
| | | | | | | | | | | | | | - rename ComparisonTask to ChecksumTask - have ChecksumTask handle all the checksum-checking - turn on all extra modes by default - simplify progress output to a countdown BUG= R=bsalomon@google.com Review URL: https://codereview.chromium.org/88543002 git-svn-id: http://skia.googlecode.com/svn/trunk@12398 2bbb7eff-a529-9590-31e7-b0007b416f81
* DM: add --rtree.Gravatar commit-bot@chromium.org2013-10-30
| | | | | | | | | | | BUG= R=epoger@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/51243003 git-svn-id: http://skia.googlecode.com/svn/trunk@12033 2bbb7eff-a529-9590-31e7-b0007b416f81
* DM: add --serializeGravatar commit-bot@chromium.org2013-10-21
| | | | | | | | | | | | | | | | | Plus: - minor ReplayTask refactoring to share code with SerializeTask - move --replay to ReplayTask and --serialize to SerializeTask like WriteTask - when --writePath is given, write failures for Replay and Serialize tasks - function names have fewer blatant Skia style violations BUG= R=bsalomon@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/32613003 git-svn-id: http://skia.googlecode.com/svn/trunk@11890 2bbb7eff-a529-9590-31e7-b0007b416f81
* DM: duh, don't calculate digests unless we're going to look at them.Gravatar commit-bot@chromium.org2013-10-16
| | | | | | | | | | | | | This doesn't cut the runtime significantly (~6s either way) but it does cut the CPU time down from ~10s to ~6s. BUG= R=bungeman@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/27476007 git-svn-id: http://skia.googlecode.com/svn/trunk@11826 2bbb7eff-a529-9590-31e7-b0007b416f81
* dm is like gm, but faster and with fewer features.Gravatar mtklein@google.com2013-10-16
This is sort of the near-minimal proof-of-concept skeleton. - It can run existing GMs. - It supports most configs (just not PDF). - --replay is the only "fancy" feature it currently supports Hopefully you will be disturbed by its speed. BUG= R=epoger@google.com Review URL: https://codereview.chromium.org/22839016 git-svn-id: http://skia.googlecode.com/svn/trunk@11802 2bbb7eff-a529-9590-31e7-b0007b416f81