Closed Bug 1609805 Opened 4 years ago Closed 4 years ago

Support a new reftest kind, for verifying rasterizer accuracy with different tile sizes

Categories

(Core :: Graphics: WebRender, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla74
Tracking Status
firefox74 --- fixed

People

(Reporter: gw, Assigned: gw)

References

Details

Attachments

(1 file)

No description provided.

This patch introduces a new reftest (syntax ** or !* in reftest files).

This type of test renders a single input file multiple times, at a range
of different picture cache tile sizes. It then verifies that each of the
images matches (or doesn't).

This can be used to verify rasterizer accuracy when drawing primitives
with different tile sizes and/or dirty rect update strategies.

One of the included tests in this patch fails the accuracy test - the
intent is to fix this inaccuracy in a follow up patch and then be able to
mark it pixel exact.

Assignee: nobody → gwatson
Status: NEW → ASSIGNED
Pushed by gwatson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/918e156c75aa
Support a new reftest kind, for verifying rasterizer accuracy. r=nical,Bert
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla74

There is a permanent Wrench failure since this landed, see bug 1610251. That bug is about turning the task's exit status from success to fail if it encounters a failure. Can you fix the reported failure with a follow-up commit or in a new bug?

Error message:

Parsed log: https://treeherder.mozilla.org/logviewer.html#?job_id=285556958&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/QK1niWDET7iPC3afOzarag/runs/0/artifacts/public/logs/live_backing.log
Reftest URL: https://hg.mozilla.org/mozilla-central/raw-file/tip/layout/tools/reftest/reftest-analyzer.xhtml#logurl=https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/QK1niWDET7iPC3afOzarag/runs/0/artifacts/public/logs/live_backing.log&only_show_unexpected=1

Either the task should exit as failed (so Treeherder will show it as failed) or shouldn't print TEST-UNEXPECTED-FAIL (which can confuse people looking at a run which actually failed, because of a different reason.

[task 2020-01-19T21:43:12.994Z] REFTEST reftests\transforms\big-axis-aligned-scale.yaml == reftests\transforms\big-axis-aligned-scale-ref.yaml
[task 2020-01-19T21:43:13.095Z] REFTEST ** reftests\tiles\rect.yaml
[task 2020-01-19T21:43:13.301Z] REFTEST ** reftests\tiles\simple-gradient.yaml
[task 2020-01-19T21:43:13.609Z] REFTEST !* reftests\tiles\prim-suite.yaml
[task 2020-01-19T21:43:13.881Z] REFTEST TEST-UNEXPECTED-FAIL | !* reftests\tiles\prim-suite.yaml | image comparison
[task 2020-01-19T21:43:13.881Z] REFTEST TEST-END | !* reftests\tiles\prim-suite.yaml
[task 2020-01-19T21:43:13.883Z] REFTEST INFO | 274 passing, 0 failing
[task 2020-01-19T21:43:13.956Z] WARN: rx::HLSLCompiler::compileToBinary(259):
[task 2020-01-19T21:43:13.956Z] C:\fakepath(1983,18-133): warning X3571: pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you expect them
[task 2020-01-19T21:43:13.956Z] C:\fakepath(1989,62-116): warning X3571: pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you expect them
[task 2020-01-19T21:43:13.956Z] C:\fakepath(2006,84-93): warning X3556: integer divides may be much slower, try using uints if possible.
[task 2020-01-19T21:43:13.956Z] C:\fakepath(2009,50-59): warning X3556: integer modulus may be much slower, try using uints if possible.
[task 2020-01-19T21:43:13.956Z] C:\fakepath(2029,33-90): warning X3571: pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you expect them
[task 2020-01-19T21:43:13.956Z] C:\fakepath(1823,1-6): warning X4000: use of potentially uninitialized variable (dyn_index_vec4_float4)
[task 2020-01-19T21:43:13.956Z]
[task 2020-01-19T21:43:13.956Z] WARN: rx::HLSLCompiler::compileToBinary(259):
[task 2020-01-19T21:43:13.956Z] C:\fakepath(2049,62-116): warning X3571: pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you expect them
[task 2020-01-19T21:43:13.956Z] C:\fakepath(2043,18-133): warning X3571: pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you expect them
[task 2020-01-19T21:43:13.956Z] C:\fakepath(2072,87-96): warning X3556: integer divides may be much slower, try using uints if possible.
[task 2020-01-19T21:43:13.956Z] C:\fakepath(2075,50-59): warning X3556: integer modulus may be much slower, try using uints if possible.
[task 2020-01-19T21:43:13.956Z] C:\fakepath(2091,33-90): warning X3571: pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you expect them
[task 2020-01-19T21:43:13.956Z] C:\fakepath(1748,1-6): warning X4000: use of potentially uninitialized variable (dyn_index_vec4_float4)
[task 2020-01-19T21:43:13.956Z]
[task 2020-01-19T21:43:14.049Z]
[task 2020-01-19T21:43:14.049Z] z:\task_1579466173\build\src\gfx\wr\wrench>if 0 NEQ 0 EXIT /b 0
[task 2020-01-19T21:43:14.049Z]
[task 2020-01-19T21:43:14.049Z] z:\task_1579466173\build\src\gfx\wr\wrench>popd
[task 2020-01-19T21:43:14.050Z]
[task 2020-01-19T21:43:14.050Z] z:\task_1579466173\build\src\gfx\wr>pushd examples
[task 2020-01-19T21:43:14.051Z]
[task 2020-01-19T21:43:14.051Z] z:\task_1579466173\build\src\gfx\wr\examples>cargo check --verbose

Flags: needinfo?(gwatson)

Sure, I'll create a patch to fix this today.

Flags: needinfo?(gwatson)
See Also: → 1610626
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: