aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools
Commit message (Collapse)AuthorAge
* git-sync-deps handles recursive DEPSGravatar halcanary2014-08-21
| | | | | | | | | NOTRY=true R=mtklein@google.com, borenet@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/468113003
* 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
* Add --properties for things like gitHash that describe the current nanobench ↵Gravatar mtklein2014-08-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | run. --key describes the type of run (describes the line on the chart), --properties describes the run itself (describes the dot on the chart). We'll pass --properties gitHash <git hash> build_number <build number> --key ... to nanobench from the bots. And... delete a whole lot of dead code. Example: nanobench --properties gitHash foo build_number 1234 --key bar baz { "build_number" : "1234", "gitHash" : "foo", "key" : { "bar" : "baz" }, "results" : { .... Friends with https://codereview.chromium.org/491943002 BUG=skia: R=jcgregorio@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/488213002
* Print max RSS in GM and nanobench too.Gravatar mtklein2014-08-19
| | | | | | | | | | | Everyone used MB, so update the API to just return that. BUG=skia: R=halcanary@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/483323002
* Add scraper to find paths that fallback to softwareGravatar krajcevski2014-08-18
| | | | | | | | R=robertphillips@google.com, krajcevski@gmail.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/475433004
* Add flag to bench/render picturesGravatar krajcevski2014-08-18
| | | | | | | | R=robertphillips@google.com, bsalomon@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/464423003
* valgrind suppression for zlib Flate TestGravatar halcanary2014-08-14
| | | | | | | | | | NOTREECHECKS=true NOTRY=true R=bsalomon@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/477733002
* add --descriptions flag to render_pictures toolGravatar epoger2014-08-14
| | | | | | | | | | | | | Needed because right now, when you look at the full set of SKP results in rebaseline_server, you can't tell which renderMode (or builder) generated each one. BUG=skia:2833 R=borenet@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/466153006
* This eliminates the need to copy the generated images from a temporary ↵Gravatar stephana2014-08-13
| | | | | | | | | | | directory to the directory that is served by the rebaseline_server. BUG=skia:2815, skia:2818 R=epoger@google.com Author: stephana@google.com Review URL: https://codereview.chromium.org/457203003
* Update tools for use of picture stats in GPU optimization decisionGravatar robertphillips2014-08-12
| | | | | | | | R=bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/466733004
* relax quadratic binary search testGravatar caryclark2014-08-12
| | | | | | | | | | | | | | | | Extreme implicit quartic equations solve to roots that are different enough that they appear to have failed. In this case, fall back on binary searching to find an intersection. Relax the condition when this happens; don't give up just because the computed implicit root points aren't remotely the same. TBR=reed BUG=skia:2808 Author: caryclark@google.com Review URL: https://codereview.chromium.org/456383003
* clean up render_pdfs:Gravatar halcanary2014-08-11
| | | | | | | | | | | | | | | | | | Remove unused headers replace dynamic memory wstream with null wstream. Use SkAutoTDelete when appropriate. Replace PdfRenderer class with short function: pdf_to_stream. Collapse render_pdf, process_input, tool_main_core functions Split out process_input_files function. Don't crash when no arguments given. print out max rss on each skp. prettier output R=mtklein@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/463603002
* Process Statistics header, add max RSS to render_pdfsGravatar halcanary2014-08-11
| | | | | | | | | | Committed: https://skia.googlesource.com/skia/+/6274baae7fe82ce6481da367687aa6168356e1e1 R=mtklein@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/448993003
* Fix string assert and dead code which caused it.Gravatar bungeman2014-08-11
| | | | | | | | | | | | | | | Running tools with a '--' parameter caused SkString to assert here incorrectly. SkString::remove should allow the entire contents of a string to be removed. The code in the flags parser which caused this call is dead and should be removed. R=mtklein@google.com, reed@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/453333002
* Fix iOS build by centralizing --writePath.Gravatar mtklein2014-08-07
| | | | | | | | | | | CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Mac10.7-Clang-Arm7-Debug-iOS-Trybot BUG=skia: R=mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/452633002
* Revert of Process Statistics header, add max RSS to render_pdfs ↵Gravatar bungeman2014-08-07
| | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/448993003/) Reason for revert: Reverting due to breaking iOS bots. Original issue's description: > Process Statistics header, add max RSS to render_pdfs > > Committed: https://skia.googlesource.com/skia/+/6274baae7fe82ce6481da367687aa6168356e1e1 R=mtklein@google.com, halcanary@google.com TBR=halcanary@google.com, mtklein@google.com NOTREECHECKS=true NOTRY=true Author: bungeman@google.com Review URL: https://codereview.chromium.org/448243003
* Process Statistics header, add max RSS to render_pdfsGravatar halcanary2014-08-07
| | | | | | | | R=mtklein@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/448993003
* Default --skps to ./skpsGravatar mtklein2014-08-07
| | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/452553002
* render_pdfs implements --matchGravatar halcanary2014-08-07
| | | | | | | | | | BUG=skia:2743 NOTRY=true R=djsollen@google.com, mtklein@google.com, borenet@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/441423002
* Add angle config to nanobench and make angle a default config for dm and ↵Gravatar bsalomon2014-08-06
| | | | | | | | | | | nanobench. NOTREECHECKS=true R=mtklein@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/441333003
* Revert of Memory improvements to render_pdfs; better DM pool size defaults ↵Gravatar halcanary2014-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/433063002/) Reason for revert: breaking android tests Original issue's description: > Memory improvements to render_pdfs; better DM pool size defaults > > Make SK_DEFAULT_GLOBAL_DISCARDABLE_MEMORY_POOL_SIZE equal to > skia_resource_cache_mb_limit, if that value is >0 (true for some > low-memory Android devices). > > render_pdfs test program uses lazy decoding (and the discardable > memory pool). > > BUG=skia:2743 > > Committed: https://skia.googlesource.com/skia/+/66058b614d9c8cb63c24b1c779dd1a9a80752217 R=djsollen@google.com, mtklein@google.com TBR=djsollen@google.com, mtklein@google.com NOTREECHECKS=true NOTRY=true BUG=skia:2743 Author: halcanary@google.com Review URL: https://codereview.chromium.org/418173012
* Memory improvements to render_pdfs; better DM pool size defaultsGravatar halcanary2014-08-01
| | | | | | | | | | | | | | | | Make SK_DEFAULT_GLOBAL_DISCARDABLE_MEMORY_POOL_SIZE equal to skia_resource_cache_mb_limit, if that value is >0 (true for some low-memory Android devices). render_pdfs test program uses lazy decoding (and the discardable memory pool). BUG=skia:2743 R=djsollen@google.com, mtklein@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/433063002
* SKPs-as-benches in nanobenchGravatar mtklein2014-08-01
| | | | | | | | | | | | | This is meant to replace bench_pictures. CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Mac10.7-Clang-Arm7-Release-iOS-Trybot BUG=skia: R=bsalomon@google.com, jcgregorio@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/425393004
* fix signed mismatchGravatar caryclark2014-07-31
| | | | | | | | | | | | | R=egdaniel@google.com TBR=egdaniel NOTREECHECKS=true NOTRY=true BUG=skia: Author: caryclark@google.com Review URL: https://codereview.chromium.org/433903002
* Add standard fonts to all GMs.Gravatar Cary Clark2014-07-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow GM results to be compared across machines and platforms by standardizing the fonts used by all tests. This adds runtime flags to DM to use either the system font context (the default), the fonts in the resources directory ( --resourceFonts ) or a set of canonical paths generated from the fonts ( --portableFonts ). This CL should leave the current DM results unchanged by default. If the portable font data or resource font is missing when DM is run, it falls back to using the system font context. The create_test_font tool generates the paths and metrics read by DM with the --portableFonts flag set, and generates the font substitution tables read by DM with the --resourceFonts flag set. If DM is run in SkDebug mode with the --reportUsedChars flag set, it generates the corresponding data compiled into the create_test_font tool. All GM tests set their typeface information by calling either sk_tool_utils::set_portable_typeface or sk_tool_utils::portable_typeface . (The former takes the paint, the latter returns a SkTypeface.) These calls can be removed in the future when the Font Manager can be superceded. BUG=skia:2687 R=mtklein@google.com Review URL: https://codereview.chromium.org/407183003
* add cubic red option to pathops toolGravatar caryclark2014-07-29
| | | | | | | | | | | R=reed@google.com TBR=reed@google.com NOTREECHECKS=true NOTRY=true Author: caryclark@google.com Review URL: https://codereview.chromium.org/428963004
* Optimize correct picture in bench_pictures when using --bbhGravatar robertphillips2014-07-29
| | | | | | | | | | Almost all PictureRenderer::init implementations have the power to overwrite the picture. Retrieve the correct SkPicture from the renderer for optimization. R=bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/428883008
* Cleanup: Rename SkOSPath functions.Gravatar tfarina2014-07-28
| | | | | | | | | | | | | | | | Mostly for brevity and matches better with Python: Python | Old C++ | New C++ os.path.join | SkOSPath::SkPathJoin | SkOSPath::Join os.path.basename | SkOSPath::SkBasename | SkOSPath::Basename BUG=None TEST=make all R=mtklein@google.com, bsalomon@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/428443002
* Test abandoning GL context in dm/nanobench.Gravatar bsalomon2014-07-28
| | | | | | | | | | | | Rename GrContext::contextDestroyed to GrContext::abandonContext. Remove GrContext::resetContext. R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/422903002
* Fix assert in skimage test.Gravatar scroggo2014-07-25
| | | | | | | | | | | The width and height may not match expected width and height when sampleSize is not 1. R=djsollen@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/418363002
* Add auto purging for SkPicture-related Ganesh resources (esp. layers)Gravatar robertphillips2014-07-22
| | | | | | | | | | This is intended to lower the bookkeeping burden for the Layer Caching feature. Cached layers are now automatically purged when a picture is deleted. R=bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/408923002
* share dm and command flagsGravatar caryclark2014-07-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Share command flags between dm and unit tests. Also, allow dm's core to be included by itself and iOSShell. Command line flags that are the same (or nearly the same) in DM and in skia_tests have been moved to common_flags. Authors, please check to see that the shared common flag is correct for the tool. For iOS, the 'tool_main' entry point has a wrapper to allow multiple tools to be statically linked in the iOSShell. Since SkCommandLineFlags::Parse can only be called once, these calls are disabled in the IOS build. Since the iOS app directory is dynamically assigned a name, use '@' to select it. (This is the same convention chosen by the Mobile Harness iOS file system utilities.) Move the heart of dm.gyp into dm.gypi so that it can be included by itself and iOSShell.gyp. Add tools/flags/SkCommonFlags.* to define and declare common command line flags. Add support for dm to iOSShell. BUG=skia: R=scroggo@google.com, mtklein@google.com, jvanverth@google.com, bsalomon@google.com Author: caryclark@google.com Review URL: https://codereview.chromium.org/389653004
* update pathops core and testsGravatar caryclark2014-07-18
| | | | | | | | | | split out skpclip (the test of 1M pictures) into its own project TBR=reed Author: caryclark@google.com Review URL: https://codereview.chromium.org/400033002
* combine base_unittest.py modules from gm and toolsGravatar epoger2014-07-17
| | | | | | | | | | general cleanup, which will also help with http://skbug.com/2752 ('split existing "gpu" GM results into "gl" and "gles"') R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/397103003
* Use __rdtsc on Windows.Gravatar Mike Klein2014-07-16
| | | | | | | | | | | | | | | This seems to be ~100x higher resolution than QueryPerformanceCounter. AFAIK, all our Windows perf bots have constant_tsc, so we can be a bit more direct about using rdtsc directly: it'll always tick at the max CPU frequency. Now, the question remains, what is the max CPU frequency to divide through by? It looks like QueryPerformanceFrequency actually gives the CPU frequency in kHz, suspiciously exactly what we need to divide through to get elapsed milliseconds. That was a freebie. I did some before/after comparison on slow benchmarks. Timings look the same. Going to land this without review tonight to see what happens on the bots; happy to review carefully tomorrow. R=mtklein@google.com TBR=bungeman BUG=skia: Review URL: https://codereview.chromium.org/394363003
* revert timer changesGravatar Mike Klein2014-07-15
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/397843002
* nanobench on Windows: try compiler barriers around timer instead.Gravatar Mike Klein2014-07-15
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/391193003
* Give windows boring bars and use 'us' for microseconds.Gravatar mtklein2014-07-15
| | | | | | | | | | | NOTREECHECKS=true BUG=skia: R=bsalomon@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/393673006
* nanobench: add --runOnce.Gravatar mtklein2014-07-14
| | | | | | | | | BUG=skia: R=egdaniel@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/392583005
* ios fixesGravatar caryclark2014-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | skia_ios.mm Get the app's Documents directory and pass use it to set the resource path. This is a quick hack which will be replaced by a new application that is a tiny shim around a command line tool. SkImageEncoder.h SkForceLinking.cpp SkImageDecoder_CG.cpp Add support for FORCE_LINKING so iOS sees the PNG encoder and others. SkFloatBits.cpp SkPoint.cpp Handle denormalized numbers that are floored by the iOS ARM processor. SkImageDecoder_iOS.mm Remove empty encoder factory. SkTouchGesture.cpp Return early on empty state on touch rather than aborting (crashing) JpegTest.cpp Hal via stackoverflow.com says partial jpegs can be gray as well. skia_test.cpp Remove crash handler call for now to avoid link failure. OverwriteLine.h Remove fancy line overwrite for iOS. Resources.cpp Add interface to set resource directory based on runtime query. BUG=skia:2736 skia:2737 skia:2738 R=reed@google.com, halcanary@google.com, mtklein@google.com, tfarina@chromium.org Author: caryclark@google.com Review URL: https://codereview.chromium.org/373383003
* nanobench: add a cute bar chartGravatar mtklein2014-07-11
| | | | | | | | | | | Give this a try? Helpful, or gets in the way? BUG=skia: R=krajcevski@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/390483002
* roll "common" DEPS, and replace tools/pyutils with itGravatar epoger2014-07-11
| | | | | | | | | BUG=skia:2682 R=borenet@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/385783002
* import google-api-python-client using DEPSGravatar epoger2014-07-10
| | | | | | | | | BUG=skia:2641 R=jcgregorio@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/381933002
* nanobench: add median and --cpu/--gpuGravatar mtklein2014-07-09
| | | | | | | | | BUG=skia: R=krajcevski@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/377283002
* Remove ability for Release code to call getRefCnt() or getWeakRefCnt().Gravatar mtklein2014-07-09
| | | | | | | | | | | | | | | | | | | | These getRefCnt() methods are not thread safe, so Skia code should not be calling them. unique() is fine. SkDEBUG code (SkASSERTs) can still call getRefCnt() / getWeakRefCnt(). This adds tools/RefCntIs.{h,cpp}, which lets tests make their assertions in both debug and release modes. BUG=skia:2726 Committed: https://skia.googlesource.com/skia/+/4ae94ffce5ecf1b71cb5e295b68bf4ec9e697443 R=senorblanco@chromium.org, mtklein@google.com, reed@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/378643003
* Revert "Remove ability for Release code to call getRefCnt() or getWeakRefCnt()."Gravatar Mike Klein2014-07-09
| | | | | | | | This reverts commit 4ae94ffce5ecf1b71cb5e295b68bf4ec9e697443. BUG=skia: Review URL: https://codereview.chromium.org/382523002
* Add SkRacyGravatar mtklein2014-07-08
| | | | | | | | | | | | | | | | | | | | | | | SkRacy<T> is a zero-overhead wrapper for a T, except it also silences race warnings when TSAN is running. Here we apply in several classes. In SkMatrix and SkPathRef, we use it to opportunistically cache some idempotent work. In SkPixelRef, we wrap the genIDs. We think the worst that can happen here is we'll increment the global next-genID a few times instead of once when we go to get another ID. BUG=skia: Committed: https://skia.googlesource.com/skia/+/d5e3e6ae1b3434ad1158f441902ff65f1eeaa3a7 CQ_EXTRA_TRYBOTS=tryserver.skia:Canary-Chrome-Ubuntu13.10-Ninja-x86_64-ToT-Trybot,Canary-Chrome-Win7-Ninja-x86-SharedLib_ToT-Trybot,Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/371363004
* Revert of Add SkRacy (https://codereview.chromium.org/371363004/)Gravatar mtklein2014-07-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reason for revert: hidden symbol 'AnnotateBenignRaceSized' in obj/base/third_party/dynamic_annotations/libdynamic_annotations.a(obj/base/third_party/dynamic_annotations/dynamic_annotations.dynamic_annotations.o) is referenced by DSO lib/libblink_platform.so Original issue's description: > Add SkRacy > > SkRacy<T> is a zero-overhead wrapper for a T, except it also > silences race warnings when TSAN is running. > > Here we apply in several classes. In SkMatrix and SkPathRef, > we use it to opportunistically cache some idempotent work. > > In SkPixelRef, we wrap the genIDs. We think the worst that > can happen here is we'll increment the global next-genID a > few times instead of once when we go to get another ID. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/d5e3e6ae1b3434ad1158f441902ff65f1eeaa3a7 R=reed@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/377693005
* Add SkRacyGravatar mtklein2014-07-08
| | | | | | | | | | | | | | | | | | | SkRacy<T> is a zero-overhead wrapper for a T, except it also silences race warnings when TSAN is running. Here we apply in several classes. In SkMatrix and SkPathRef, we use it to opportunistically cache some idempotent work. In SkPixelRef, we wrap the genIDs. We think the worst that can happen here is we'll increment the global next-genID a few times instead of once when we go to get another ID. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/371363004
* Remove ability for Release code to call getRefCnt() or getWeakRefCnt().Gravatar mtklein2014-07-08
| | | | | | | | | | | | | | | | | These getRefCnt() methods are not thread safe, so Skia code should not be calling them. unique() is fine. SkDEBUG code (SkASSERTs) can still call getRefCnt() / getWeakRefCnt(). This adds tools/RefCntIs.{h,cpp}, which lets tests make their assertions in both debug and release modes. BUG=skia:2726 R=senorblanco@chromium.org, mtklein@google.com, reed@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/378643003