aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench
Commit message (Collapse)AuthorAge
* nanobench: Add some Valgrind failure paranoia.Gravatar mtklein2015-10-20
| | | | | | | | | | Trying to figure out http://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Valgrind/builds/586/steps/nanobench/logs/stdio BUG=skia:4482 Review URL: https://codereview.chromium.org/1418633002
* Add SkTTopoSortGravatar robertphillips2015-10-19
| | | | | | BUG=skia:4094 Review URL: https://codereview.chromium.org/1414503003
* Misc: Don't run etc1 bench with invalid image and fix VS2015 build warningGravatar bsalomon2015-10-19
| | | | Review URL: https://codereview.chromium.org/1409993003
* Renable image benchmarkingGravatar scroggo2015-10-15
| | | | | | | | | | | | | | | - Remove --images '' to renable image benchmarking - Add a flag to disable testing JPEG's buildTileIndex, since it also leaks memory - Do not run images on GPU - Do not run large interlaced images on 32 bit bots - When buildTileIndex is not being used in the subset benches, do not use it for BRD BUG=skia:3418 BUG=skia:4469 BUG=skia:4471 BUG=skia:4360 Review URL: https://codereview.chromium.org/1396113002
* Remove unnecessary allocation in nanobenchGravatar scroggo2015-10-14
| | | | Review URL: https://codereview.chromium.org/1408593002
* Stop benching PNG buildTileIndex by defaultGravatar scroggo2015-10-13
| | | | | | | | | | It leaks memory and kills the bots. Supply an option to run it for local comparison. BUG=skia:4360 BUG=skia:3418 Review URL: https://codereview.chromium.org/1396613007
* Add subsetting to SkScanlineDecoderGravatar msarett2015-10-13
| | | | | | | | | | | | This CL allows the SkScanlineDecoder to decode partial scanlines. This is a first step in efficiently implementing subsetting in SkScaledCodec. BUG=skia:4209 Review URL: https://codereview.chromium.org/1390213002
* Fix codec memory leaks in nanobenchGravatar scroggo2015-10-09
| | | | | | | | | | | | SubsetTranslateBench.cpp: Unref the color table, so it gets deleted. SkBitmapRegionDecoderInterface.cpp: Delete the stream if it is not used. BUG=skia:3418 Review URL: https://codereview.chromium.org/1396113003
* Fill incomplete images in SkCodec parent classGravatar msarett2015-10-09
| | | | | | | | | | | | | | | | | | | | | | | | | Rather than implementing some sort of "fill" in every SkCodec subclass for incomplete images, let's make the parent class handle this situation. This includes an API change to SkCodec.h SkCodec::getScanlines() now returns the number of lines it read successfully, rather than an SkCodec::Result enum. getScanlines() most often fails on an incomplete input, in which case it is useful to know how many lines were successfully decoded - this provides more information than kIncomplete vs kSuccess. We do lose information when the API is used improperly, as we are no longer able to return kInvalidParameter or kScanlineNotStarted. Known Issues: Does not work for incomplete fFrameIsSubset gifs. Does not work for incomplete icos. BUG=skia: Review URL: https://codereview.chromium.org/1332053002
* Update Subset benches to support interlacing and fix bugsGravatar scroggo2015-10-08
| | | | | | | | | | | | | | | | | | | | | Instead of decoding one line at a time, if the ScanlineOrder is kNone, decode all of the lines in one pass, and then copy the subset into the output. This will allow us to more realistically test subset decodes for interlaced png. It also makes running them not take forever. Do *not* support other modes (besides kTopDown), since they are not used by the big three we need to replace BitmapRegionDecoder implementation (skbug.com/4428). Fix a bug in SubsetTranslateBench and SubsetZoomBench: When we decode another subset, we need to reset the scanline decode first. This bug appears to have been present since the introduction of these tests in crrev.com/1160953002 BUG=skia:4205 BUG=skia:3418 Review URL: https://codereview.chromium.org/1387233002
* Revert "Revert of factories should return baseclass, allowing the impl to ↵Gravatar reed2015-10-06
| | | | | | | | | | | specialize (patchset #4 id:60001 of https://codereview.chromium.org/1390523005/ )" This reverts commit 95376a0dde3cdf414eb97a20cef3af19ed7e0151. BUG=skia: TBR= Review URL: https://codereview.chromium.org/1389083002
* Revert of factories should return baseclass, allowing the impl to specialize ↵Gravatar schenney2015-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #4 id:60001 of https://codereview.chromium.org/1390523005/ ) Reason for revert: Breaks Chrome with this link error: ../../third_party/skia/include/effects/SkMorphologyImageFilter.h:75: error: undefined reference to 'SkMorphologyImageFilter::SkMorphologyImageFilter(int, int, SkImageFilter*, SkImageFilter::CropRect const*)' ../../third_party/skia/include/effects/SkMorphologyImageFilter.h:104: error: undefined reference to 'SkMorphologyImageFilter::SkMorphologyImageFilter(int, int, SkImageFilter*, SkImageFilter::CropRect const*)' Presumably due to code in third_party/WebKit/Source/platform/graphics/filters/FEMorphology.cpp that contains: #include "SkMorphologyImageFilter.h" ... if (m_type == FEMORPHOLOGY_OPERATOR_DILATE) return adoptRef(SkDilateImageFilter::Create(radiusX, radiusY, input.get(), &rect)); return adoptRef(SkErodeImageFilter::Create(radiusX, radiusY, input.get(), &rect)); Original issue's description: > factories should return baseclass, allowing the impl to specialize > > waiting on https://codereview.chromium.org/1386163002/# to land > > BUG=skia:4424 > > Committed: https://skia.googlesource.com/skia/+/80a6dcaa1b757826ed7414f64b035d512d9ccbf8 TBR=senorblanco@google.com,robertphillips@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:4424 Review URL: https://codereview.chromium.org/1389063002
* factories should return baseclass, allowing the impl to specializeGravatar reed2015-10-06
| | | | | | | | waiting on https://codereview.chromium.org/1386163002/# to land BUG=skia:4424 Review URL: https://codereview.chromium.org/1390523005
* Cleanup timing state machineGravatar joshualitt2015-10-05
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1386933002
* Specify bench_type & source_type for image benchesGravatar scroggo2015-10-05
| | | | | | | | | This will allow us to use perf filtering for comparing SkImageDecoder to SkCodec. BUG=skia:3418 Review URL: https://codereview.chromium.org/1387863002
* Factor out VisualBench timing code into a helper classGravatar joshualitt2015-10-05
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1375363003
* S4 only has 8 texture units on the GLContext we createGravatar joshualitt2015-10-02
| | | | | | BUG=skia:4373 Review URL: https://codereview.chromium.org/1386643002
* 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
* Merge SkCodec with SkScanlineDecoderGravatar scroggo2015-09-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Benefits: - This mimics other decoding APIs (including the ones SkCodec relies on, e.g. a png_struct, which can be used to decode an entire image or one line at a time). - It allows a client to ask us to do what we can do efficiently - i.e. start from encoded data and either decode the whole thing or scanlines. - It removes the duplicate methods which appeared in both SkCodec and SkScanlineDecoder (some of which, e.g. in SkJpegScanlineDecoder, just call fCodec->sameMethod()). - It simplifies moving more checks into the base class (e.g. the examples in skbug.com/4284). BUG=skia:4175 BUG=skia:4284 ===================================================================== SkScanlineDecoder.h/.cpp: Removed. SkCodec.h/.cpp: Add methods, enums, and variables which were previously in SkScanlineDecoder. Default fCurrScanline to -1, as a sentinel that start has not been called. General changes: Convert SkScanlineDecoders to SkCodecs. General changes in SkCodec subclasses: Merge SkScanlineDecoder implementation into SkCodec. Most (all?) owned an SkCodec, so they now call this-> instead of fCodec->. SkBmpCodec.h/.cpp: Replace the unused rowOrder method with an override for onGetScanlineOrder. Make getDstRow const, since it is called by onGetY, which is const. SkCodec_libpng.h/.cpp: Make SkPngCodec an abstract class, with two subclasses which handle scanline decoding separately (they share code for decoding the entire image). Reimplement onReallyHasAlpha so that it can return the most recent result (e.g. after a scanline decode which only decoded part of the image) or a better answer (e.g. if the whole image is known to be opaque). Compute fNumberPasses early, so we know which subclass to instantiate. Make SkPngInterlaceScanlineDecoder use the base class' fCurrScanline rather than a separate variable. CodexTest.cpp: Add tests for the state changes in SkCodec (need to call start before decoding scanlines; calling getPixels means that start will need to be called again before decoding more scanlines). Add a test which decodes in stripes, currently only used for an interlaced PNG. TODO: Add tests for onReallyHasAlpha. Review URL: https://codereview.chromium.org/1365313002
* Move Mutexy things to private.Gravatar herb2015-09-29
| | | | | | | | | | There is no API change. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/1368333004
* Move SkAtomics.h to private.Gravatar herb2015-09-28
| | | | | | | | | | There are no API changes. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/1369333004
* Remove SkBitmapSourceGravatar fmalita2015-09-25
| | | | | | | | | To avoid breaking existing SKPs, add a deserialization stub which unflattens SkBitmapSource records to SkImageSources. R=reed@google.com,mtklein@google.com,robertphillips@google.com Review URL: https://codereview.chromium.org/1363913002
* use override to make the new xcode happierGravatar reed2015-09-25
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1368673004
* stop scaling loops and improve warmup benchGravatar joshualitt2015-09-24
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1363663004
* Add warmup bench to visual benchGravatar joshualitt2015-09-24
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1358373003
* Add nanobench tests for BitmapRegionDecoderGravatar msarett2015-09-22
| | | | | | | | | | | | | | | | SkBitmapRegionDecoderInterface provides an interface for multiple implementations of Android's BitmapRegionDecoder. We already have correctness tests in DM that will enable us to compare the quality of our various BRD implementations. We also need these performance tests to compare the speed of our various implementations. BUG=skia:4357 Review URL: https://codereview.chromium.org/1344993003
* move mutex construction out of the benchmarks.Gravatar mtklein2015-09-22
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1345853004
* Delete the typefaces.Gravatar herb2015-09-18
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1353203002
* Font cache stress test.Gravatar herb2015-09-18
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1348883002
* Add shared mutex benchmark.Gravatar herb2015-09-18
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1352863004
* Benchmark all mutex implementations.Gravatar herb2015-09-18
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1342283004
* Forward declare SkStrokeRec in SkPathEffectGravatar halcanary2015-09-15
| | | | Review URL: https://codereview.chromium.org/1312163008
* Convert unit tests, GMs from SkBitmapSource to SkImagesourceGravatar fmalita2015-09-15
| | | | | | | | | | | This removes SkBitmapSource clients within Skia. http://crrev.com/1334173004 does the same for Blink, so we should be able to remove SkBitmapSource in a follow-up. R=reed@google.com,robertphillips@google.com,mtklein@google.com Review URL: https://codereview.chromium.org/1343123002
* discardable pixelrefs are gone, update tests accordinglyGravatar reed2015-09-14
| | | | | | BUG=skia:4328 Review URL: https://codereview.chromium.org/1340803002
* skia: Add ANGLE with GL backend to nanobench/DMGravatar hendrikw2015-09-11
| | | | | | | This will allow us to test this without hacking it in, might be useful for others too. Review URL: https://codereview.chromium.org/1338003002
* skia: Initialize value passed to GetShaderiv in GLBenchGravatar hendrikw2015-09-08
| | | | | | | The command buffer's GetShaderiv and GetProgramiv code checks that the success value passed in is either -1 or 0. Review URL: https://codereview.chromium.org/1318143004
* Clean up remaining users of SkPMFloatGravatar mtklein2015-08-31
| | | | | | | | | | | | This switches over SkXfermodes_opts.h and SkColorMatrixFilter to use Sk4f, and converts the SkPMFloat benches to Sk4f benches. No pixels should change here, and no code beyond the Sk4f_ benches should change speed. The benches are faster than the old versions. BUG=skia:4117 Review URL: https://codereview.chromium.org/1324743002
* Rename flag from "distance field" to "device independent."Gravatar bsalomon2015-08-31
| | | | Review URL: https://codereview.chromium.org/1322433006
* skia: add ability to load command_buffer_gles2Gravatar hendrikw2015-08-27
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1306823003
* Style Change: NULL->nullptrGravatar halcanary2015-08-27
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
* Add white variants to TextBenchGravatar mtklein2015-08-26
| | | | | | | | Might be worth a look. BUG=skia: Review URL: https://codereview.chromium.org/1319503003
* Style Change: SkNEW->new; SkDELETE->deleteGravatar halcanary2015-08-26
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316123003 Review URL: https://codereview.chromium.org/1316123003
* Remove include of stdlib.h from SkTypes.h.Gravatar bungeman2015-08-26
| | | | | | | | | | | | | | | Unfortunately, immintrin.h (which is also included by SkTypes) includes xmmintrin.h which includes mm_malloc.h which includes stdlib.h for malloc even though, from the implementation, it is difficult to see why. Fortunately, arm_neon.h does not seem to be involved in such shenanigans, so building for Android will keep things sane. TBR=reed@google.com Doesn't change Skia API, just moves an include. Review URL: https://codereview.chromium.org/1313203003
* VisualBenchTest: Write JSON outputGravatar borenet2015-08-20
| | | | | | BUG=skia:4093 Review URL: https://codereview.chromium.org/1302103002
* Use static_assert instead of SK_COMPILE_ASSERT.Gravatar bungeman2015-08-20
| | | | | | | Now that static_assert is allowed, there is no need to use a non- standard compile time assertion Review URL: https://codereview.chromium.org/1306443004
* private iterator to visit all resource cache entriesGravatar reed2015-08-19
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1271033002
* unsigned -> int for counts and indices in picture-related codeGravatar mtklein2015-08-19
| | | | | | | | also, (C) BUG=skia: Review URL: https://codereview.chromium.org/1300163002
* remove SkDeferredCanvasGravatar reed2015-08-19
| | | | | | | | Waiting a day or so to see if the blink-removal of SkDeferredCanvas sticks BUG=skia: Review URL: https://codereview.chromium.org/1269093002
* flag to use const& instead of const* for src-rectGravatar reed2015-08-06
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1272713005