Closed Bug 899785 Opened 11 years ago Closed 10 years ago

Turn on OMTC Direct3D11 by default

Categories

(Core :: Graphics: Layers, defect)

x86
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla32
Tracking Status
relnote-firefox --- 32+

People

(Reporter: nrc, Assigned: bas.schouten)

References

(Depends on 3 open bugs)

Details

(Keywords: feature, Whiteboard: [leave open])

Attachments

(2 files, 1 obsolete file)

      No description provided.
Depends on: 899435, 756606
Depends on: 897839
Version: 21 Branch → Trunk
Try push to see where we stand with tests after all the 'd3d9' stuff landed: https://tbpl.mozilla.org/?tree=Try&rev=177af481a346
Depends on: 901382
Depends on: 902330
Blocks: 903892
Depends on: 903893
Depends on: 904012
Depends on: 904343
Depends on: 904890
Depends on: 907463
Depends on: 907466
Depends on: 915944
Depends on: 934842
Depends on: 943204
Attachment #8342151 - Flags: review?(matt.woodrow)
Whiteboard: [leave open]
Attachment #8342151 - Flags: review?(matt.woodrow) → review+
Depends on: 946186
There were a number of performance regressions (paint, tp5 responsiveness, tp5 private bytes, canvasmark, tresize) blamed on this checkin.  Some are pretty significant (treeize regressed by 30-50%; private bytes went up by 10%).

Are there bugs tracking these?
Flags: needinfo?(ncameron)
And out: https://hg.mozilla.org/mozilla-central/rev/725c36b5de1a
Flags: needinfo?(ncameron)
(In reply to Boris Zbarsky [:bz] from comment #8)
> There were a number of performance regressions (paint, tp5 responsiveness,
> tp5 private bytes, canvasmark, tresize) blamed on this checkin.  Some are
> pretty significant (treeize regressed by 30-50%; private bytes went up by
> 10%).
> 
> Are there bugs tracking these?

Not yet, but there will be. Now planning to fix before relanding.
Depends on: 946567
ping me if you need help interpreting or reproducing talos tests.  We can test on try server and see if the values match up.
Depends on: 947781, 913503
Depends on: 950052
Depends on: 959842
Depends on: 960219
Depends on: 963952
Depends on: 937306
Depends on: 970002
Depends on: 977520
Depends on: 969425
Depends on: 978490
Depends on: 981393
Depends on: 981374
Depends on: 986479
Depends on: 995745
Depends on: 996160
Depends on: 1003624
Assignee: ncameron → bas
Status: NEW → ASSIGNED
Attachment #8424395 - Flags: review?(bgirard)
Correct a mistake in the previous patch.
Attachment #8424395 - Attachment is obsolete: true
Attachment #8424395 - Flags: review?(bgirard)
Attachment #8424398 - Flags: review?(bgirard)
Comment on attachment 8424398 [details] [diff] [review]
Switch on OMTC on windows everywhere v2

Review of attachment 8424398 [details] [diff] [review]:
-----------------------------------------------------------------

Cheers! \o\
Attachment #8424398 - Flags: review?(bgirard) → review+
Depends on: 1012213
Depends on: 1012487
Depends on: 1012488
Hardware: x86_64 → x86
Backed out in https://hg.mozilla.org/integration/mozilla-inbound/rev/b21a2a8e9d6b - the timeout increase in https://hg.mozilla.org/integration/mozilla-inbound/rev/de4e01e6e14d may well have been enough to get webm-video/bug686957.html to pass on Win7 opt, but not on debug, and the bug 1012487 style failure of "some test, a different one each time" is not workable.
Depends on: 999317
Wasn't reftest-omtc (bug 973703) enabled on Cedar specifically to work out the Windows reftest issues prior to this being enabled by default?
Depends on: 1013262
Depends on: 1014673
No longer depends on: 1015340
Once OMTC/Win is enabled for stable, make sure to relnote.
relnote-firefox: --- → ?
Keywords: feature
Depends on: 1015718
Depends on: 1016298
Depends on: 1016408
Depends on: 1016643
Depends on: 1017395
Depends on: 1018278
Do we track OMTC performance issues other than at bug 1013262?

I found 2 test cases where OMTC regresses on windows (ASUS T100 with Bay Trail Atom z3740). I'm adding them here for reference and to not forget about them.

1. "12-texture.html" demo from Benwa Jacob's webgl-tutorial: http://bjacob.github.io/webgl-tutorial/ performs considerably and visibly worse with OMTC. Most of the other demo cases on this page are also considerably worse with OMTC.

2. "Canvas" from a benchmark suite we're considering adding to talos (bug 1020365, after it helped us notice a regression in bug 1001845). Without OMTC the canvas FPS is 30, with OMTC it's 20 --> ~50% regression.

bjacob, would you consider these webgl demos (at "1.") a reasonable/valid test cases for OMTC?
Flags: needinfo?(bjacob)
(In reply to Avi Halachmi (:avih) from comment #22)
> Do we track OMTC performance issues other than at bug 1013262?
> 
> I found 2 test cases where OMTC regresses on windows (ASUS T100 with Bay
> Trail Atom z3740). I'm adding them here for reference and to not forget
> about them.
> 
> 1. "12-texture.html" demo from Benwa Jacob's webgl-tutorial:
> http://bjacob.github.io/webgl-tutorial/ performs considerably and visibly
> worse with OMTC. Most of the other demo cases on this page are also
> considerably worse with OMTC.
> 
> 2. "Canvas" from a benchmark suite we're considering adding to talos (bug
> 1020365, after it helped us notice a regression in bug 1001845). Without
> OMTC the canvas FPS is 30, with OMTC it's 20 --> ~50% regression.
> 
> bjacob, would you consider these webgl demos (at "1.") a reasonable/valid
> test cases for OMTC?

WebGL performance is a known regression from OMTC, see bug 1000640.

That said, we currently have 0 performance data on WebGL and that seems pretty awful given our current push on gaming. I don't have any feedback on those specific demos, but we should definitely start building a WebGL version of CanvasMark for this purpose.
We do have WebGL performance tests, no need to write new ones.... but we don't run them!

https://github.com/KhronosGroup/WebGLPerf

An earlier version of them can be run online there:

http://hg.mozilla.org/users/bjacob_mozilla.com/webgl-perf-tests/raw-file/3729e8afac99/index.html

It would be very nice if someone could find the time to make these e.g. a Talos test or something. Note that the Chromium team has already integrated these tests into their own regression testing.
Flags: needinfo?(bjacob)
To answer your question, sure these demos are valid tests for the purpose of catching such basic regressions; but if the performance regression tests also catch this regression, then they are better, being simpler.
To be honest I do think that a severe WebGL performance regression can only be tolerated for a few days on the nightly channel, at most. If we can't have this fixed in time for the Aurora merge next week, I hope we'd revert or back out. Or else, I don't want to be the one who'll have to explain that to game developers...
(In reply to Benoit Jacob [:bjacob] from comment #24)
> It would be very nice if someone could find the time to make these e.g. a
> Talos test or something. Note that the Chromium team has already integrated
> these tests into their own regression testing.

Definitely on my radar. I have few tests I want to add to talos which need some prioritization, and right now it seems like the WebGL one is the highest priority.

Thanks for the links to existing WebGL tests, I'll start with them.
See Also: → 1020663
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla32
Depends on: 1027153
Depends on: 1027147
Depends on: 1029919
Depends on: 1032431
(In reply to Matt Woodrow (:mattwoodrow) from comment #23)
> WebGL performance is a known regression from OMTC, see bug 1000640.
> 
> That said, we currently have 0 performance data on WebGL and that seems
> pretty awful given our current push on gaming. I don't have any feedback on
> those specific demos, but we should definitely start building a WebGL
> version of CanvasMark for this purpose.

FWIW, we have an internal-only source license to GfxBench, and have emscripten-compiled it.  What we're missing is a reliable way to run these benchmarks on hardware that we care about...
Also see bug 1020663, and make sure to keep Avi in the loop if other developments happen on this front.
Oh right, this is the bug where this conversation started :-)
No longer depends on: 995591
No longer blocks: 1007317
Depends on: 1007317
No longer blocks: 1028033
Depends on: 1028033
No longer depends on: 1016408
I don't think this is on 32.  33, hopefully, 34 "for sure".
Depends on: 1046528
Depends on: 1048250
Depends on: 1048955
Depends on: 1057716
Depends on: 1074810
Depends on: 1077245
Depends on: 1080878
Depends on: 1082660
Depends on: 1082929
Blocks: 975370
Depends on: 1089183
Depends on: 1093279
Depends on: 1095971
Depends on: 1096227
Depends on: 1116147
Depends on: 1135509
Depends on: 1193147
Depends on: 1200524
Depends on: 1216349
Depends on: 1131031
Depends on: 1091853
Depends on: 1273701
You need to log in before you can comment on or make changes to this bug.