mozilla :: #gfx

19 May 2017
00:26pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/rev/d1c9dd7d60de - sotaro - Bug 1365196 - Throttle GenerateFrame() r=kats,nical
00:30jgilbertdvander, which part?
00:30jgilbertI'm building with it now, at least
00:30dvanderjgilbert: do you have community edition or did you service-now the real one?
00:30jgilbertcommunity
00:38jgilbertdvander, our configure is broken with python64 for the moment, if you happen to be using it instead of python32
00:41dvanderhuh, im not sure. i think i have whatever mozilla-build gave me.
00:41jgilbertthat should be fine
00:41jgilbertare you loading start-shell?
00:42dvanderstart-shell-msvc, yeah
00:42jgilbertno, use start-shell.bat
02:18kamidphishhello. What's the magic pref to force opengl layers on for linux?
02:19roclayers.acceleration.force-enabled
02:21kamidphishthanks roc
02:37lsalzmansome days i think we should rename this to layers.acceleration.force-unstability to make the downsides more clear :)
05:20Burdsis there any known way to force firefox to use my nvidia GPU instead of integrated card? nvidia control panel isnt working.
09:04Burdsis there any known way to force firefox to use my nvidia GPU instead of integrated card? nvidia control panel isnt working.
14:06pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/pushloghtml?startID=589&endID=590 - 65 changesets - Merge m-c to graphics
15:02kvarknical: ping
15:02kvarkdaily anyone?
15:05nicalkvark: pong
15:06kvarknical: it's just that no one was responding to the call when we first made it. Now there is 5 people, but I don't see you
15:07nicalkvark: yeah I don't have a super speedy internet here so I'm read-only today
15:07kvarkok
15:08nicalmy status is on the pad: basically reviving year-old work that I did in euclid
15:39Gankrokvark: https://gist.github.com/Gankro/c95366d3e1d35606a340929ae8464a57
15:41Gankrokvark: jrmuizel: actual reftests that care about this: https://hg.mozilla.org/mozilla-central/raw-file/tip/layout/tools/reftest/reftest-analyzer.xhtml#logurl=https://queue.taskcluster.net/v1/task/Tc7veQ2ITMi10sw1VvRm8Q/runs/0/artifacts/public/logs/live_backing.log&only_show_unexpected=1
15:54Burdsis there any known way to force firefox to use my nvidia GPU instead of integrated card? nvidia control panel isnt working.
16:07nicalBurds: in windows you can usually right click on the program icon and run the program with the discrete gpu from the menu
16:21botondmstange: did you figure it out (the password for the mac machine)?
16:21mstangebotond: no
16:22botondmstange: i changed it to "mozilla", and set the password hint to say "where you work"
16:22mstangebotond: oops
16:22mstangeok
16:26larsbergBurds: should work if you do the right-click one or follow the instructions at: https://webvr.rocks/firefox (webvr doesn't really work without running on the discrete GPU)
16:27larsbergHave to do it in Program settings, though, as if you set the "global" settings to high performance, there's some override for firefox.exe that will still slam you back to integrated
16:27* larsberg keeps meaning to ask nvidia about that
16:43kvarkkats: I don't know if Glenn will merge the GL-related WR PR, given that it's already Saturday there. If you want it now, we may ask other folks to review.
16:45kats-awaykvark: sooner would be better, since the bustage could hide other regressions that land in the meantime
17:03Burdslarsberg : i have nvidia control panel set to use the nvidia GPU for firefox.exe
17:03Burdsbut its still not using the gpu
17:03Burdsis that what you were referring to?
17:04Burdsnical : right click -> run with GPU doesnt work for firefox, ive tried
17:07Burdslarsberg : not sure what that webvr thing is talking about. I dont have occulus.
17:08larsbergburds the bit about what to check in the nvidia control panel bit
17:08Burdsunless you are talking about step 3 and ive already done that, but it does not work. about:support always shows the gpu as inactive.
17:08nicalBurds: some video drivers force the integrated gpu if they detect that the executable is firefox (by sniffing the process name). I have no idea what to do if this is your case.
17:10Burdsnical : how do you know that is the case here? i know old nvidia drivers didnt allow you to set firefox.exe to use the GPU in nvidia control panel, but that was fixed a long time ago and that isnt my problem
17:10Burdsi can set firefox.exe to use the GPU in nvidia control panel ,but it simply doesnt use the GPU
17:10larsbergBurds: Depending on the driver version, you may also need to set "Power management mode" to "Prefer maximum performance." Laptop power management modes can cause it to override the preferred processor setting.
17:11Burdslarsberg : i already have it set to maximum performance, that isnt the problem here. my GPU is also being used in a game with no problems.
17:11Burdsits just firefox that will not use the GPU
17:11larsbergYeah, it's like nical said, there's some video driver goop from nvidia that tries really hard to force firefox.exe to the integrated card. It's kinda a nightmare for WebVR :-/
17:13Burdsis there an article or something that confirms that it is a nvidia driver issue? because i can pretty much guarantee that if i go ask nvidia about this, they will ask "Do other applications use the GPU fine?" followed by "Well, that's a problem with firefox then, if everything else uses the GPU."
17:14larsbergRename the firefox.exe binary to chrome.exe and see what happens :-) IIRC, it used to then immediately start running with the discrete GPU, at least in our tests ~a month ago.
17:15Burdsi tried renaming firefox.exe to testfox.exe
17:17botondkats: how often does the graphics branch typically get merged into m-c?
17:17Burdsits still not using the gpu, although task manager still shows the process name as "firefox.exe" instead of "testfox.exe"
17:18katsbotond: i try to get it done once a week
17:18katsbotond: it probably has been longer than that now though
17:18botondkats: do you think there's any sense in getting dxr to index it?
17:19katsbotond: it would be useful, if it's not hard to do
17:19nicalBurds: I know because we've investigated cases like that before, also funny (or not) enough, we tried to change the process name once and it broke for a ton of users for that reason
17:20Burds? so if the process name is changed, firefox wont run?
17:26Burdssorry gotta leave, if anyone knows a workaround for this, PM me please
17:26nicalNo they just ran into driver crashes
17:52pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/pushloghtml?startID=590&endID=591 - 226 changesets - Merge m-c to graphics
17:55GankroFriggin' web browsers... https://usercontent.irccloud-cdn.com/file/GRaTWlsE/web-browsers.png
18:13kvarkGankro: see the end of https://github.com/servo/webrender/issues/452
18:45mstangedvander, rhunt: where do we launch the compositor thread in the gpu process?
18:45mstangewe'd like to experiment with raising its priority
18:45mstangein terms of OS thread scheduling
18:45dvandermstange: http://searchfox.org/mozilla-central/source/gfx/ipc/GPUParent.cpp#112
18:45mstangedvander: thanks!
18:45dvanderoh sorry, i didn't forget that profiler patch btw, i'll get to it today
18:59mstangedvander: no problem, I switched review to billm anyway
19:05mstangeehsan: https://bugzilla.mozilla.org/show_bug.cgi?id=1366353
19:05firebotBug 1366353 NEW, nobody@mozilla.org Consider raising the priority of the GPU process
19:10pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/rev/a6bc850107c6 - Jeff Muizelaar - Bug 1366069. Fix mac theme rendering with DrawTargetRecording. r=mstange
19:14dvandermstange: ah ok
19:16mstangedvander: and it turned out the previous patch wasn't handling shutdown properly...
19:16dvanderthat's a recurring theme in the gpu process
19:20ehsandvander, for bug 1366353, I suggest starting by only increasing the priority of the compositor thread first
19:20firebothttps://bugzil.la/1366353 NEW, nobody@mozilla.org Consider raising the priority of the GPU process
19:20ehsanwhat do you think?
19:20ehsanplanning to do that in CompositorThreadHolder::CreateCompositorThread()
19:21mstangekvark: http://searchfox.org/mozilla-central/source/layout/reftests/bugs/reftest.list
19:21dvanderehsan: that seems pretty reasonable, that's a long time to sit idle
19:22ehsanok
19:22ehsanI'll write a patch
19:23mstangeGankro: http://searchfox.org/mozilla-central/search?q=fails.*fuzzy&regexp=true&path=reftest.list
19:24mstangeand also the reverse: http://searchfox.org/mozilla-central/search?q=fuzzy.*fails&regexp=true&path=reftest.list
20:06kvarkGankro: https://is.gd/opDl7x
21:09Caspy7bunch of people with GTX 960/970 drivers with up to date drivers reporting black screens https://www.reddit.com/r/firefox/comments/6c1etk/i_was_randomly_getting_a_black_window_in_firefox/
21:09Caspy7(in the comments)
21:13KWiersojrmuizel: ping if you're around
21:13jrmuizelKWierso: pong
21:14KWiersojrmuizel: I'm having trouble merging graphics to m-c for kats because one of your commits landed without a bug number: https://hg.mozilla.org/projects/graphics/pushloghtml?changeset=e0ec2a72700f
21:14KWiersoI think I can fix this by doing a backout of the revision and then reland it with the bug number added
21:14KWiersodo you know what bug that was for?
21:14jrmuizelI did do a backout of the revision and relanded it with the bug number
21:15jrmuizelKWierso: but the bug is Bug 1364626.
21:15firebothttps://bugzil.la/1364626 FIXED, jmuizelaar@mozilla.com Reftesting with WebRender happens out of order
21:18KWiersohrm, guess the hook is still angry
21:22jrmuizelKWierso: maybe we could rewrite the history on the graphics branch?
21:22KWiersojrmuizel: I'll just land the merge with an "ignore hooks" thing this one time
21:22jrmuizelKWierso: ah ok
21:22jrmuizelmchang: ping
21:22KWiersoand I guess file a bug about adding the "no bug" hook to graphics
21:22jrmuizelKWierso: thanks
21:22mchangjrmuizel: pong
21:23jrmuizelmchang: I don't think we need a temporary surface
21:23mstangemattwoodrow: are you here?
21:23mchangjrmuizel: for d2d or generally
21:23jrmuizelmchang: for d2d
21:23mstangemattwoodrow: do you know where we check whether text overrlaps non-opaque pixels, so that we can turn off subpixel AA on Windows?
21:24mchangjrmuizel: why?
21:24jrmuizelmchang: can't we just use the effect Image?
21:24jrmuizelmchang: as the source?
21:24jrmuizels/?/
21:24mchangjrmuizel: no, it didnt work
21:24jrmuizelmchang: oh?
21:24jrmuizelmchang: do we know why?
21:25jrmuizelmchang: or rather doesn't it work in your original ugly patch?
21:25mattwoodrowmstange: FLB, GetComponentAlphaBounds is accumulated for the layer
21:26mchangjrmuizel: i tried outside of gecko and if i create a bitmap that wraps around hte backbuffer, i cannot use that bitmap as input for an effect
21:26mstangemattwoodrow: thanks!
21:26mattwoodrowmstange: http://searchfox.org/mozilla-central/source/layout/painting/FrameLayerBuilder.cpp#3551
21:26mattwoodrowthat bit in particular
21:26mchangjrmuizel: You can try maybe to investigate something else here - https://github.com/changm/DWriteFont/blob/master/DWriteFont/D2DSetup.cpp#L1103
21:27mchangjrmuizel: https://github.com/changm/DWriteFont/blob/master/DWriteFont/D2DSetup.cpp#L283 - If I tried to create the back buffer dxgi surface with the bitmap properties that made it possible to be used as an input, i kept getting failures
21:28mchanginvalid bitmap property arguments
21:28mstangemattwoodrow: thanks
21:28mstangemattwoodrow: I think I somehow need to propagate the opaque region of a paintedlayer to the DrawTarget that we use to paint into its contents
21:28mstangeso that PushGroupAndCopyBackground knows what it's allowed to copy
21:29jrmuizelmchang: how did your ugly patch make it work?
21:30mattwoodrowmstange: Why do we need to restrict the copy?
21:30mstangemattwoodrow: otherwise you accumulate too much alpha
21:30mstangemattwoodrow: you copy stuff up and then composite it back down
21:30mstangethat's only equivalent if the pixels are opaque
21:31mstangemattwoodrow: http://searchfox.org/mozilla-central/source/gfx/thebes/gfxContext.cpp#797
21:31mchangjrmuizel: it wasnt part of a direct draw, we used the luminance effect output as the mask for pushgroup - https://bug1359527.bmoattachments.org/attachment.cgi?id=8866549
21:31firebothttps://bugzil.la/1359527 NEW, mchang@mozilla.com NYTimes SVG can take 30ms to render
21:31mchangsee DrawTargetD2D1::;pushLayer
21:31jrmuizelmchang: let's skype
21:31mattwoodrowmstange: Ah, right
21:32mchangjrmuizel: ok
21:39mattwoodrowmstange: Seems ok to track opaque regions on layers instead of just an opaque flag
21:39KWiersojrmuizel: commit message hooks should now be enforced on graphics branch
21:40KWiersoworking on bypassing things for this merge, though
21:56mstangemattwoodrow: on Windows 10 the solution is probably easier: https://bugzilla.mozilla.org/show_bug.cgi?id=1366405
21:56firebotBug 1366405 NEW, nobody@mozilla.org We're forcing the window's main layer to be transparent on Windows 10 because we think it has a glas
22:15mattwoodrowmstange: That seems very worth fixing
22:17mstangemattwoodrow: I concur
23:07mchangjrmuizel: ping
23:16jrmuizelmchang: pong
23:16mchangjrmuizel: I think we still need the temporary surface because the output of the luminance effect sets the RGB channels to 0
23:16mchangso it erases all the content currently in mBitmap
23:18jrmuizelmchang: but you had it working before
23:18jrmuizelmchang: the effect shouldn't modify the bitmap
23:19mchangjrmuizel: it only wokred with push layer, the effect says it sets the color channels to 0
23:19jrmuizelmchang: we're only using it with push layer
23:20jrmuizelthe effect sets the output color channels to 0
23:23jrmuizelmchang: I need to go
23:23mchangjrmuizel: ok, i think we still made a separate temporary surface
23:23mchangand used that surface to push group
23:29Burdsnical : i just tried changing the .exe name to testfox.exe again, this time the process name changed to testfox.exe in the task manager, but firefox STILL isnt using the GPU
23:30Burdshmm strangely though, multi processing is now enabled and at least one of the processes is still named firefox.exe while the rest are testfox.exe
20 May 2017
No messages
   
Last message: 64 days and 21 hours ago