Azure Progress

Discussion about official Mozilla Firefox builds
Locked
User avatar
Pravda
Posts: 280
Joined: February 16th, 2012, 5:09 pm

Re: Azure Progress

Post by Pravda »

Omega X wrote:Nothing new. Microsoft creates tests that only they do well in. Google did that with WebGL and V8 tests. Marketing, marketing, marketing.


Without a doubt each browser maker cherry-picks tests which highlight their own strengths but this does not make the tests not viable per se. They still point to potential optimization opportunities.
You can't handle the правда!
User avatar
ferongr
Posts: 537
Joined: February 16th, 2011, 9:51 am

Re: Azure Progress

Post by ferongr »

LordStriker wrote:Now if only stop going into 3D clocks constantly and many times, seemingly at least without reason.


This is expected. Scrolling and drawing of many things is accelerated. If you don't want HWA, just disable it, but don't ask for impossible things.
What Falken giveth, the tōge taketh away.
User avatar
_Alexander
Posts: 1197
Joined: April 1st, 2010, 2:24 pm
Location: Your augmented reality

Re: Azure Progress

Post by _Alexander »

Firefox has significant opportunities to optimize its HWA to be more efficient for the GPU to render.
Additionally, as we have learned, certain things with HWA are immensely slower (search for new bugs assigned to Bas.Schouten and new "Azure" bugs) than with software/legacy rendering on Firefox.

Without any doubt, addressing both issues will lead to a reduced CPU and GPU strain and thus less need for 3D clock speeds for GPU and full clock speeds for the CPU.
Obviously, for things like my netbook, even though IE10 is insanely fast with HWA, it still has to raise both CPU and GPU clock speeds to their maximum as my hardware is not high end.
This should not be the case for high end i7, NV xxx systems

It is true that many benchmarks are biased - many required WebM or WebGL for example so IE9/10 scores lower in them.
Now, one cannot deny that IE9 and IE10 do a lot of things significantly faster than current other browsers (including Firefox) - this should be looked at, like the test LordStriker posted.

Why should anyone care about IE9/10 performance benchmarks? Well, IE is marketing itself as an entertainment browser, if you haven't noticed already.
These tests also are more of a gaming tests rather than real-world tests (although obviously, addressing slowdowns in IE tests would benefit all to some degree).
So, it would be of value to note and compete with IE10 and not ignore IE10.

Uhm, I think that makes sense.
http://magneticpudding.com/ <- My Blog
i5 3570k @ 4.5 Ghz / NV 660 / 32GB DDR3 / 1080p LCD / SSD (120 + 180) / W8 ||| Atom N270 / NV ION / 3GB DDR3 / SSD / 1366x768 / W8
User avatar
LordStriker
Posts: 732
Joined: September 7th, 2010, 7:14 am
Location: Macedonia, Greece

Re: Azure Progress

Post by LordStriker »

ferongr wrote:
LordStriker wrote:Now if only stop going into 3D clocks constantly and many times, seemingly at least without reason.


This is expected. Scrolling and drawing of many things is accelerated. If you don't want HWA, just disable it, but don't ask for impossible things.


Why imposible? 3D clocks meant to be mostly for gaming and similar 'heavy' processes... If you do the same things ( normal browsing/scrolling etc ) on IE9 and Fx side by side, while you're checking GPU utilization, you'll understand what I mean. Even Chromium now doesn't go 3D clocks. It stays mostly 2D.

I remember very well, someone mentioned this on Bugzilla and Bas responded "we'll have to see that while building Azure".

Anyway, rant over.
Fx 16.02 -//- Fx 19α x64 -//- Win 8 Pro x64 -//- CPU: i5 2500 -//- GPU: 7950 -//- RAM: 8GB
User avatar
ferongr
Posts: 537
Joined: February 16th, 2011, 9:51 am

Re: Azure Progress

Post by ferongr »

LordStriker wrote:Why imposible? 3D clocks meant to be mostly for gaming and similar 'heavy' processes... If you do the same things ( normal browsing/scrolling etc ) on IE9 and Fx side by side, while you're checking GPU utilization, you'll understand what I mean. Even Chromium now doesn't go 3D clocks. It stays mostly 2D.

I remember very well, someone mentioned this on Bugzilla and Bas responded "we'll have to see that while building Azure".

Anyway, rant over.


Because Forefox has no control over the clocks, the GPU driver and hardware has (e.g. AMD names it PowerPlay). When Firefox asks the Direct X API to draw a gradient, it's simply that, a request to draw a gradient. The API communicates with the driver, the driver does its magic, decides if it wants to boost clocks (in most cases it will switch to low power 3D) and then the GPU will start working.

There are optimizations in many areas to be had, but I think it's just not possible to do what Firefox does and keep the GPU at the 2D state (100MHzcore-150MHz memory in my case). And In any case, I don't understand why you complain about the GPU switching to 3D clocks. Do you think it be more efficient on a Flop per Wh metric to use the CPU to draw?

And don't compare what Fx does compared to IE. For once, they use completely different layout engines. Gecko implementations usually aim for standards compliance and quality/correctness of output. I can't say what a proprietary layout engine like IE's Trident does, and I can't speculate on whether whatever lower CPU usage/better performance you see on (possibly biased) benchmarks created by its creators mean.
What Falken giveth, the tōge taketh away.
User avatar
_Alexander
Posts: 1197
Joined: April 1st, 2010, 2:24 pm
Location: Your augmented reality

Re: Azure Progress

Post by _Alexander »

ferongr wrote:And don't compare what Fx does compared to IE. For once, they use completely different layout engines. Gecko implementations usually aim for standards compliance and quality/correctness of output. I can't say what a proprietary layout engine like IE's Trident does, and I can't speculate on whether whatever lower CPU usage/better performance you see on (possibly biased) benchmarks created by its creators mean.

Comparing leads to a better product. Determining how more efficient (clock speed, stuttering, etc) IE is compared to Firefox is the key to making Firefox a better browser and viceversa.
http://magneticpudding.com/ <- My Blog
i5 3570k @ 4.5 Ghz / NV 660 / 32GB DDR3 / 1080p LCD / SSD (120 + 180) / W8 ||| Atom N270 / NV ION / 3GB DDR3 / SSD / 1366x768 / W8
Ver Greeneyes
Posts: 1030
Joined: June 28th, 2008, 4:57 am

Re: Azure Progress

Post by Ver Greeneyes »

A few nice fixes in today's nightly, including bug 765845 which might help people on slower hardware (or running on battery power).
User avatar
_Alexander
Posts: 1197
Joined: April 1st, 2010, 2:24 pm
Location: Your augmented reality

Re: Azure Progress

Post by _Alexander »

Ver Greeneyes wrote:A few nice fixes in today's nightly, including bug 765845 which might help people on slower hardware (or running on battery power).

That is just a regression AFAIK.

Here are some bugs which should actually give better performance, (at least somewhere somehow)

[Azure] Write a border implementation using DrawTargets directly
https://bugzilla.mozilla.org/show_bug.cgi?id=767135
border code can be a significant bottleneck for drawing performance.

[Azure] Write a DrawTarget/SourceSurface implementation of gfxDrawable
https://bugzilla.mozilla.org/show_bug.cgi?id=767132
We should be smart enough to unwrap the DrawTargets, SourceSurfaces, etc and call the 2D functions directly, rather than going through the wrapper.

Cache gfxPatterns for gradients
https://bugzilla.mozilla.org/show_bug.cgi?id=761393
> How much perf gain can we realize with this bug fixed?
For D2D, a -lot-.


Direct2D acceleration blits/copies whole window on every draw
https://bugzilla.mozilla.org/show_bug.cgi?id=765290
But with (Azure) D2D, the whole window is drawn always, whether desktop composition is on or off.

[Azure] Paths often end up needlessly transformed
https://bugzilla.mozilla.org/show_bug.cgi?id=761916
I noticed we were doing a lot of path transformations to keep the path in UserSpace when they really weren't needed.

[Azure] gfxPlatform::GetSourceSurfaceForSurface copies too much
https://bugzilla.mozilla.org/show_bug.cgi?id=753644
This will be very slow. We should use references and/or caching instead.

EDIT: There are others too, most of them are about issues and not solutions though.
http://magneticpudding.com/ <- My Blog
i5 3570k @ 4.5 Ghz / NV 660 / 32GB DDR3 / 1080p LCD / SSD (120 + 180) / W8 ||| Atom N270 / NV ION / 3GB DDR3 / SSD / 1366x768 / W8
Ver Greeneyes
Posts: 1030
Joined: June 28th, 2008, 4:57 am

Re: Azure Progress

Post by Ver Greeneyes »

Hera wrote:That is just a regression AFAIK.

According to comment 5 in that bug, it's a regression from enabling Azure - so I'd say that counts :)
User avatar
_Alexander
Posts: 1197
Joined: April 1st, 2010, 2:24 pm
Location: Your augmented reality

Re: Azure Progress

Post by _Alexander »

Ver Greeneyes wrote:
Hera wrote:That is just a regression AFAIK.

According to comment 5 in that bug, it's a regression from enabling Azure - so I'd say that counts :)

It wasn't a noticeable fix for me. :?

EDIT:
Slight development on caching gradients (not sure if a good one):
Do not reply to this email. You can add comments to this bug at
https://bugzilla.mozilla.org/show_bug.cgi?id=761393

Jet Villegas (:jet) <bugs@junglecode.net> changed:

What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|nobody@mozilla.org |paul@paul.cx

--- Comment #5 from Jet Villegas (:jet) <bugs@junglecode.net> 2012-06-29 06:37:51 PDT ---
Assigning to Paul as we discussed. Please see dholbert and bas for guidance
here, as needed.
http://magneticpudding.com/ <- My Blog
i5 3570k @ 4.5 Ghz / NV 660 / 32GB DDR3 / 1080p LCD / SSD (120 + 180) / W8 ||| Atom N270 / NV ION / 3GB DDR3 / SSD / 1366x768 / W8
dutchguy
Posts: 199
Joined: October 14th, 2003, 12:39 am

Re: Azure Progress

Post by dutchguy »

Skia landed today for windows.
TheVisitor
Posts: 5469
Joined: May 13th, 2012, 10:43 am

Re: Azure Progress

Post by TheVisitor »

this is a strange comment: https://bugzilla.mozilla.org/show_bug.cgi?id=774118#c17

It looks like they're just turning off Azure by default for now to avoid the bug (and others). ?
speciesx
Posts: 307
Joined: March 24th, 2011, 10:38 am

Re: Azure Progress

Post by speciesx »

only in FF beta.
sry for my bad english.

My real user agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv: current nightly) Gecko/20100101 Firefox/current nightly
User avatar
_Alexander
Posts: 1197
Joined: April 1st, 2010, 2:24 pm
Location: Your augmented reality

Re: Azure Progress

Post by _Alexander »

Two bugs that are somewhat interesting,

[Azure] Minimize intermediate surface size used by push/popgroup
https://bugzilla.mozilla.org/show_bug.cgi?id=778367
reduce fill-rate requirements for push/popgroups

Mask region ignored when rendering with Direct2D
https://bugzilla.mozilla.org/show_bug.cgi?id=779029
important information that should be visible would be covered by the un-masked region making a site unuseable
http://magneticpudding.com/ <- My Blog
i5 3570k @ 4.5 Ghz / NV 660 / 32GB DDR3 / 1080p LCD / SSD (120 + 180) / W8 ||| Atom N270 / NV ION / 3GB DDR3 / SSD / 1366x768 / W8
User avatar
Dingler
Posts: 1245
Joined: November 14th, 2011, 4:41 am

Re: Azure Progress

Post by Dingler »

Crashes with gfx.content.azure.enabled: https://bugzilla.mozilla.org/show_bug.cgi?id=780018
Locked