Go to file
John Stiles 1786647583 Improve debug trace generation speed by clipping the paint.
When generating a debug trace, we disable most optimizations, pessimize
the SkVM code with many additional instructions, and run the interpreter
instead of the SkVM JIT. Additionally, while under development, viewer
is generally compiled in -O0. All of these changes made it painfully
slow to generate the debug trace of a complex shader, even though we
only care about tracing a single pixel of the paint.

Now, when taking a debug trace, we clip the paint to a small 4x4 area
surrounding the trace coordinate for a single frame. This makes debug
traces run very quickly, even on a modest laptop CPU.

Change-Id: Ibcadc20a8d83a3a241e05408b8af31d61cf03d4c
Bug: skia:12666
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/482701
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-12-10 20:13:00 +00:00
animations
bazel [infra] Add SkParagraph (harfbuzz, ICU) to Canvaskit Bazel build. 2021-11-30 21:01:06 +00:00
bench Refactor SkMatrixProvider slightly 2021-12-09 20:10:58 +00:00
bin [sk] Update asset download references to use SK 2021-09-17 16:55:53 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Add Abseil dependency for Dawn 2021-09-22 22:05:32 +00:00
client_utils/android Make class members that are static constexpr also be inline. 2021-10-11 16:22:59 +00:00
demos.skia.org [demos] Add WebGPU demo using origin trial 2021-10-08 16:35:34 +00:00
dm [graphite] Move Recorder and Recording to public include. 2021-12-02 16:49:12 +00:00
docker [infra] Update cmake docker image to be Debian 10 2021-07-23 11:21:31 +00:00
docs/examples Use angle brackets for system includes 2021-11-22 17:03:11 +00:00
example Remove SDL from DEPS (and SDL example that used it) 2021-05-27 21:37:57 +00:00
experimental [graphite] Reenable linear gradient shading 2021-12-09 21:16:00 +00:00
fuzz Add SkSL::ShaderCaps and use as base class for GrShaderCaps 2021-11-19 16:35:39 +00:00
gm Refactor SkMatrixProvider slightly 2021-12-09 20:10:58 +00:00
gn Remove canvas marker stack, marked matrices, etc... 2021-12-09 16:22:16 +00:00
include Update Skia milestone to 99 2021-12-10 14:47:56 +00:00
infra [infra] Fix pubsub notification for autobuild 2021-12-10 14:07:08 +00:00
modules Refactor SkMatrixProvider slightly 2021-12-09 20:10:58 +00:00
platform_tools Migrate compat v4 classes to androidx 2021-12-06 18:04:57 +00:00
resources Fix assertion when debug-tracing a void-return function. 2021-12-10 14:39:05 +00:00
samplecode Fix when a glyph has a path 2021-12-07 14:58:29 +00:00
site Add gdbserver instructions to site docs 2021-12-10 16:41:09 +00:00
specs [infra] Port serve.py from Python2 to 3 2021-08-31 15:28:19 +00:00
src relocate GrTextBlob creation to GrTextBlobCache 2021-12-10 18:56:35 +00:00
tests Revert "Trace function return values after function-exit." 2021-12-10 18:06:04 +00:00
third_party Update ImGui to v1.85. 2021-12-09 15:10:31 +00:00
toolchain [infra] Add initial Bazel rules and files 2021-11-09 12:32:25 +00:00
tools Improve debug trace generation speed by clipping the paint. 2021-12-10 20:13:00 +00:00
.bazelrc [infra] Add SkParagraph (harfbuzz, ICU) to Canvaskit Bazel build. 2021-11-30 21:01:06 +00:00
.bazelversion [infra] Add Bazel rules for codecs. 2021-11-11 20:10:01 +00:00
.clang-format no more bin packing in .clang-format 2021-03-04 17:22:50 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore Add .vscode to the default gitignore list. 2021-10-13 15:23:02 +00:00
.gn Pre-emptive fix for upcoming ANGLE change. 2021-01-08 17:23:52 +00:00
.vpython [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
AUTHORS Reland "Enable non-standalone builds with dawn" 2021-11-15 20:52:41 +00:00
BUILD.bazel [bazel] Try adding cc_binary rules that use generated rules 2021-11-30 18:18:53 +00:00
BUILD.gn [skslc] Support HLSL output 2021-12-09 21:07:30 +00:00
codereview.settings
CONTRIBUTING
CQ_COMMITTERS
DEPS Roll ANGLE from 0e291f60ccbf to 3be551d7c2c5 (6 revisions) 2021-12-10 05:33:55 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files 2021-02-02 23:41:54 +00:00
go_repositories.bzl [bazel] Add go/gazelle to WORKSPACE and use c++ extension. 2021-11-23 20:00:15 +00:00
go.mod [infra] Add job for pushing bazel apps 2021-12-02 14:23:55 +00:00
go.sum [infra] Add job for pushing bazel apps 2021-12-02 14:23:55 +00:00
LICENSE
OWNERS [infra] Add wildcard OWNERS 2021-08-30 19:19:34 +00:00
PRESUBMIT.py Remove AUTHORS check from PRESUBMIT.py 2021-09-30 14:12:18 +00:00
public.bzl [infra] Fix globs in public.bzl 2021-11-24 15:53:30 +00:00
README
README.chromium
RELEASE_NOTES.txt Remove canvas marker stack, marked matrices, etc... 2021-12-09 16:22:16 +00:00
whitespace.txt Test SkCQ 2021-07-24 21:07:28 +00:00
WORKSPACE.bazel [bazel] Add go/gazelle to WORKSPACE and use c++ extension. 2021-11-23 20:00:15 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.