diff options
author | Hal Canary <halcanary@google.com> | 2017-12-11 17:46:26 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-12-15 17:23:48 +0000 |
commit | d7b3845f3d3f3498c2adc542b4b20003ac7d3ab0 (patch) | |
tree | 11ed4db86efb28f344255a6cc44f0c19d926c8ef /tools/skqp/README.md | |
parent | 0215e39d7e415d0530231df6ad20d5f215c72152 (diff) |
SkQP: make_gmkb, gm_knowledge (GM Knowledgebase)
Add a real implementation for gm_knowledge.h This depends on
the presence of files in the form $GMK_DIR/foo/{max,min}.png
The implementation also writes out failures in a report directory.
Add a utility: experimental/make_gmkb which is a stand-alone
go executable that generates the foo/{max,min}.png data.
tools/skqp/README.md has instructions on running SkQP.
Also: add SkFontMgrPriv.h
Change-Id: Ibe1e9a7e7de143d14eee3877f5f2d2d8713f7f49
Reviewed-on: https://skia-review.googlesource.com/65380
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Diffstat (limited to 'tools/skqp/README.md')
-rw-r--r-- | tools/skqp/README.md | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/tools/skqp/README.md b/tools/skqp/README.md new file mode 100644 index 0000000000..beac911ba0 --- /dev/null +++ b/tools/skqp/README.md @@ -0,0 +1,66 @@ + +SkQP +==== + +**Motivation**: Test an Android device’s GPU and OpenGLES & Vulkan drivers with +Skia and Skia’s existing unit & rendering tests. + +How To Use SkQP on your Android device: + +1. To build SkQP you need to install the + [Android NDK](https://developer.android.com/ndk/). + +2. Checkout Skia, then go to the source directory: + + cd $SKIA_SOURCE_DIRECTORY + +3. Configure and build Skia for your device's architecture: + + arch='arm64' # Also valid: 'arm', 'x68', 'x64' + android_ndk="${HOME}/ndk" # Or wherever you installed the NDK. + mkdir -p out/${arch}-rel + cat > out/${arch}-rel/args.gn << EOF + ndk = "$android_ndk" + ndk_api = 24 + target_cpu = "$arch" + skia_embed_resources = true + is_debug = false + EOF + tools/git-sync-deps + bin/gn gen out/${arch}-rel + ninja -C out/${arch}-rel skqp_lib + +4. Download meta.json from [https://goo.gl/jBw3Dd](https://goo.gl/jBw3Dd) . + This is the data used to build the validation model. + +5. Generate the validation model data: + + rm -rf platform_tools/android/apps/skqp/src/main/assets/gmkb + go get go.skia.org/infra/golden/go/search + go run tools/skqp/make_gmkb.go ~/Downloads/meta.json \ + platform_tools/android/apps/skqp/src/main/assets/gmkb + +Run as an executable +-------------------- + +1. Build the SkQP program, load files on the device, and run skqp: + + ninja -C out/${arch}-rel skqp + adb shell "cd /data/local/tmp; rm -rf gmkb report" + adb push platform_tools/android/apps/skqp/src/main/assets/gmkb \ + /data/local/tmp/ + adb push out/${arch}-rel/skqp /data/local/tmp/ + adb shell "cd /data/local/tmp; ./skqp gmkb report" + +2. Produce a one-page error report if there are errors: + + rm -rf /tmp/report + if adb shell test -d /data/local/tmp/report; then + adb pull /data/local/tmp/report /tmp/ + tools/skqp/make_report.py /tmp/report + fi + +Run as an APK +------------- + +[TODO] |