Closed

Mozilla's Next Big 'Quantum' Enhancement Will Make Firefox Silky-Smooth

The next phase of "Project Quamtum" will bring a GPU-accelerated rendering engine, "WebRender," to Firefox, which will make the browser silky-smooth.

Mozilla's Next Big 'Quantum' Enhancement Will Make Firefox Silky-Smooth : Read more
36 answers Last reply
More about mozilla big quantum enhancement make firefox silky smooth
  1. So gpu will use a lot of energy during web browsing... bad for mobile devices?
  2. Tfw 100% gpu load on my old 970 in 2018 just from browsing mozilla
  3. im waiting for the extension/plugins to be updated. many of them will stop working.
  4. "Mozilla's Next Big 'xxx' Enhancement Will Make Firefox..."

    Hmmm... where have I heard that before...?
  5. Seems pretty optimistic considering virtually all GPUs have been blacklisted from browser acceleration since 2011 in Firefox, making the "use Hardware Acceleration" tickbox like a bad joke. And even though it has been disabled, even a single Firefox tab can make the GPU run at 100% UVD speeds anyway.

    About the only types of acceleration that reliably works now are WebGL and H.264 in Flash. Considering Flash is deprecated and even reduced to click-to-run in Firefox 55, it's not like they have a lot of experience in getting it to work at all.
  6. Quote:
    every pixel will be painted on the screen on each frame

    That's a terrible idea. Games are run by far fewer people, for far less time, making games a flawed justification for this model. Even using the GPU is not an excuse to waste power redrawing elements (or entire windows) that aren't changing.

    The first question many will ask is how to turn this off. Others might be content simply to decrease the framerate.
  7. Wow, a lot af hate in here.
    Rendering a web page the same way as a game might not be that heavy a task as you think. Its not like web pages have amazing graphics or anything. The fanciest pages might not be much harder to run than Doom 2 (1994).
  8. hannibal said:
    So gpu will use a lot of energy during web browsing... bad for mobile devices?


    They might, but they also might not. A gpu is designed specifically to draw images on the screen, the cpu is not. And when scrolling a page today, almost every pixel will have to be redrawn in any case anyway (cpu or gpu).
  9. Beta is fast
  10. Lucian speculates:
    "One side benefit of Mozilla making its web rendering engine act as a gaming engine does is that Firefox could become the best browser for 3D web games. Coupled with WebAssembly, which will allow game developers to port their C++ 3D games and run them at near-native speed, Firefox could become a compelling deployment platform for gaming developers."

    However this is completely unrelated. It's like saying that if you go to the video arcade and put your mobile phone onto a Taito arcade machine, that it will suddenly become a better arcade machine itself. Developers will not be writing to the same API that Firefox's browser is implemented in (Rust and its collection of dozens of external APIs) but just to JS/DHTML/Canvas/WebGL as usual, and none of the improvements that Firefox is making will make those Web APIs any better for authoring gaming apps.
  11. Hannibal: yes this will be bad for battery life. If you want good battery life you can limit FPS via about:config layout.frame_rate. I use 6fps in firefox for browsing on battery and then I switch to Chrome when I'm plugged in. Adblock and Noscript are also really good for reducing your mobile data usage, speeding up page loads, and increasing battery life.
  12. nikolajj said:
    hannibal said:
    So gpu will use a lot of energy during web browsing... bad for mobile devices?


    They might, but they also might not. A gpu is designed specifically to draw images on the screen, the cpu is not.

    Okay, try running a 3D game - even an old one - in full screen, on a laptop. Then, tell me what it does to your battery life compared with just having a conventional web browser window open.

    nikolajj said:
    And when scrolling a page today, almost every pixel will have to be redrawn in any case anyway (cpu or gpu).

    Not traditionally, where they would use bit-block transfers to copy the parts of the window that were previously visible and just render the new area. But maybe for pages that use multiple layers and transparency, etc.
  13. linuxgeex said:
    Lucian speculates:
    "One side benefit of Mozilla making its web rendering engine act as a gaming engine does is that Firefox could become the best browser for 3D web games. Coupled with WebAssembly, which will allow game developers to port their C++ 3D games and run them at near-native speed, Firefox could become a compelling deployment platform for gaming developers."

    However this is completely unrelated. It's like saying that if you go to the video arcade and put your mobile phone onto a Taito arcade machine, that it will suddenly become a better arcade machine itself. Developers will not be writing to the same API that Firefox's browser is implemented in (Rust and its collection of dozens of external APIs) but just to JS/DHTML/Canvas/WebGL as usual, and none of the improvements that Firefox is making will make those Web APIs any better for authoring gaming apps.

    I tend to agree with Lucian. He's making two points:
  14. New web APIs (e.g. WebAssembly) are designed to provide compute performance near that of native code. Importantly, this doesn't mean you have to write any assembly language - it allows you to target toolchains like C++ compilers to output code in a portable intermediate format.
  • linuxgeex said:
    Hannibal: yes this will be bad for battery life.

    Thanks for confirming that.

    linuxgeex said:
    Adblock and Noscript are also really good for reducing your mobile data usage, speeding up page loads, and increasing battery life.

    It's a really poor design, if it depends on these hacks. You can't assume they'll work forever. I'm still waiting for publishers to deliver at least some of their content in a way that's technically indistinguishable from ads. Why wouldn't they - they're not making any money off of people using Adblock, so there's no incentive to serve people who are. Then, you have to turn it off and you're in the same boat (performance-wise) as the rest of us.
  • Cool. Can't wait to update to it once it Tab Mix Plus supports their new versions.
  • bit_user said:
    nikolajj said:
    hannibal said:
    So gpu will use a lot of energy during web browsing... bad for mobile devices?


    They might, but they also might not. A gpu is designed specifically to draw images on the screen, the cpu is not.

    Okay, try running a 3D game - even an old one - in full screen, on a laptop. Then, tell me what it does to your battery life compared with just having a conventional web browser window open.

    nikolajj said:
    And when scrolling a page today, almost every pixel will have to be redrawn in any case anyway (cpu or gpu).

    Not traditionally, where they would use bit-block transfers to copy the parts of the window that were previously visible and just render the new area. But maybe for pages that use multiple layers and transparency, etc.


    Well, the power usage would increase, but I don't know a lot of 3D websites ;) Imagen a game engine that did not render any frames when nothing is happening. I have a hard time imagining that this would redraw anything if the content is completely static.
    The bit-block transfer is a good point, but we don't know if this will still work that way or do something equally smart. It is not like they are making an actual game engine.

    Tho both a programmer and a gamer, I don't claim to be an expert at this, but an engine like this has never been made before, so it just might be awesome. Who knows. A company like Mozilla just might know what they are doing, and I surely hope so ;) (fingers crossed)
  • linuxgeex said:
    Hannibal: yes this will be bad for battery life.


    You can't know that for sure yet. A gpu should use less power to draw the same frame a a cpu. (a 180 watt gpu draws frames many times faster than a 90 watt cpu. This is my logic at least. Perhaps it is flawed?)
    If this will use the same tricks or equivalent to draw as moders browsers, it could be more efficient than using the cpu. Furthermore: If you have a dedicated gpu, the gpu is already doing some work anyway. So this might actualy remove some overhead!
    We don't know, so let's wait and see.
    If it ends up killing battery life, then I will only use it on my desktop ^^
  • hannibal said:
    So gpu will use a lot of energy during web browsing... bad for mobile devices?


    Not necessarily. If the GPU is many times faster at the task the time required before the system can shift to a lower power state is improved. For a page like this forum, that doesn't have constant animation or other visual activity, letting the GPU perform its specialty rather than the general purpose CPU can make for an improvement. On a page with lots of activity it will be little different than any app that uses the GPU properly and should be more power efficient than having the CPU do it. Just the same, a busy page means a busy battery.
  • Firefox lost its glory days already. it is the most browser that crashes and hangs these days.
  • samer.forums said:
    Firefox lost its glory days already. it is the most browser that crashes and hangs these days.


    You say that, but I work as a software developer making web sites and web apps and I use Firefox because it is where I find the greatest stability.
    The worst offender is Edge! It hangs at random as well at being slow as IE.
  • nikolajj said:
    samer.forums said:
    Firefox lost its glory days already. it is the most browser that crashes and hangs these days.


    You say that, but I work as a software developer making web sites and web apps and I use Firefox because it is where I find the greatest stability.
    The worst offender is Edge! It hangs at random as well at being slow as IE.


    Nah , Chrome works better for me and crashes less. If you use extensions like I do you will understand what I mean.
  • epobirs said:
    For a page like this forum, that doesn't have constant animation or other visual activity,

    But that's not what they said. They said every pixel will be rendered 60 times/second. It doesn't matter whether the page is changing or not.

    Just because a GPU can render graphics more efficiently than a CPU doesn't make it free. Redrawing stuff that's not changing is burning power that wouldn't be burnt if you didn't do that. It sounds like linuxgeex has actually tried it and observed that effect on battery life is significant.
  • samer.forums said:
    nikolajj said:
    samer.forums said:
    Firefox lost its glory days already. it is the most browser that crashes and hangs these days.


    You say that, but I work as a software developer making web sites and web apps and I use Firefox because it is where I find the greatest stability.
    The worst offender is Edge! It hangs at random as well at being slow as IE.


    Nah , Chrome works better for me and crashes less. If you use extensions like I do you will understand what I mean.


    I do use extensions :) I don't really have problems with Chrome, I just like firefox better. The problems are Edge and IE.
  • bit_user said:
    epobirs said:
    For a page like this forum, that doesn't have constant animation or other visual activity,

    But that's not what they said. They said every pixel will be rendered 60 times/second. It doesn't matter whether the page is changing or not.

    Just because a GPU can render graphics more efficiently than a CPU doesn't make it free. Redrawing stuff that's not changing is burning power that wouldn't be burnt if you didn't do that. It sounds like linuxgeex has actually tried it and observed that effect on battery life is significant.


    1) It might only render 60FPS when something is happening. This is quite achievable.
    2) It is not done yet. So testing now might not have much relevance in the end.
  • It might also be worth noting, that no matter what renders det webpage, the GPU still draws 60 frames a second on a 60 hz monitor anyway. To the GPU, this might not really make much of a difference.
  • nikolajj said:
    It might also be worth noting, that no matter what renders det webpage, the GPU still draws 60 frames a second on a 60 hz monitor anyway. To the GPU, this might not really make much of a difference.


    It does make a difference . when the GPU changes the pixel values in the table, it draws more power for this process , unlike when the card simply draws the same pixels from unchanged table stored in memory at 60 hz.
  • samer.forums said:
    nikolajj said:
    It might also be worth noting, that no matter what renders det webpage, the GPU still draws 60 frames a second on a 60 hz monitor anyway. To the GPU, this might not really make much of a difference.


    It does make a difference . when the GPU changes the pixel values in the table, it draws more power for this process , unlike when the card simply draws the same pixels from unchanged table stored in memory at 60 hz.


    Well, that confirms that a static page draws no extra power at 60 FPS.
    And what you describe happens in any case already, no matter the sofware (browser or not).

    So unless you for SOME reason run your monitor at less that 60 hz (why would you?), not much will change except smoothness.
  • nikolajj said:
    1) It might only render 60FPS when something is happening. This is quite achievable.
    2) It is not done yet. So testing now might not have much relevance in the end.

    You're contradicting what they've publicly stated about how it's designed to work.

    ...based on what? Some personal belief that Mozilla can do no wrong?
  • nikolajj said:
    It might also be worth noting, that no matter what renders det webpage, the GPU still draws 60 frames a second on a 60 hz monitor anyway. To the GPU, this might not really make much of a difference.

    No, you clearly don't understand how GPUs work.

    Refreshing the video display simply reads the contents of a frame buffer and sends it to the monitor. Rendering is the process of drawing into that frame buffer.

    Rendering consumes more power than display refresh. In the best case (i.e. where the screen is just a solid color), it's about the same. So, that means if you're redrawing even the simplest content, you should get at least a doubling of the incremental power used for display refresh.
  • nikolajj said:

    The first article is 1 year old. They hadn't implemented it yet. The news in this article we're commenting on is much more up to date.

    And I don't even know what you want us to see in the second one.
  • bit_user said:
    nikolajj said:
    1) It might only render 60FPS when something is happening. This is quite achievable.
    2) It is not done yet. So testing now might not have much relevance in the end.

    You're contradicting what they've publicly stated about how it's designed to work.

    ...based on what? Some personal belief that Mozilla can do no wrong?

    Source? I Can't find any proof of increased power consumption. And if there is any, it is still on a incomplete product. Games in beta runs like shit too.
    The word 'might' means that it is not certain, just a posibility. All that I have agued for is that we don't know yet.
    I have already stated that if power consumption ends up being a problem, I will only use this on my desktop where I don't care.


    bit_user said:
    nikolajj said:
    It might also be worth noting, that no matter what renders det webpage, the GPU still draws 60 frames a second on a 60 hz monitor anyway. To the GPU, this might not really make much of a difference.

    No, you clearly don't understand how GPUs work.

    Refreshing the video display simply reads the contents of a frame buffer and sends it to the monitor. Rendering is the process of drawing into that frame buffer.

    Rendering consumes more power than display refresh. In the best case (i.e. where the screen is just a solid color), it's about the same. So, that means if you're redrawing even the simplest content, you should get at least a doubling of the incremental power used for display refresh.

    Everything you say is true. But you fail to see the whole picture.
    Yes, the GPU will have to do more work, obviously. But the CPU will have to do less. The task is being moved from one place to another. The new place is specialized at this kind of task. If (and ofc only if) the new place is double as efficient as the old place, you can double the framerate and end op with unchanged power consumption. If the new place is more than double af efficient, then yay, power savings.

    And I feel that I have to repeat myself: Maybe power consumption will increase and maybe it will not, I don't know. And what I am trying to say is, the you don't know for sure either.


    bit_user said:
    nikolajj said:

    The first article is 1 year old. They hadn't implemented it yet. The news in this article we're commenting on is much more up to date.

    And I don't even know what you want us to see in the second one.

    One year old or not, it is part of the goal and the team working on it think that they can. If they are right or not, we will know when it is done and refined.
    The news in this article we're commenting on is not addressing power consumption.
    The second one... memory uses power. No biggie on the desktop, but on a phone it is relevant.
  • nikolajj said:
    bit_user said:
    nikolajj said:
    1) It might only render 60FPS when something is happening. This is quite achievable.
    2) It is not done yet. So testing now might not have much relevance in the end.

    You're contradicting what they've publicly stated about how it's designed to work.

    ...based on what? Some personal belief that Mozilla can do no wrong?

    Source? I Can't find any proof of increased power consumption.

    It's axiomatic. GPUs are typically 10x to 100x as efficient as CPUs. If they're literally redrawing the entire window at 60 Hz - even when nothing's changing - then you're probably talking about at least 1000x as many draw operations. That yields a net loss in energy efficiency. And it's not like the CPU is going to be completely idle - it has to orchestrate each of those redraws.

    My original comment couldn't have been clearer. It was a direct reaction to the statement I quoted from the article. It wasn't an attack on Mozilla writ large. If it's implemented exactly like that, my speculation is that it's going to use more power. I base this on a fair amount of experience with graphics & GPU programming.

    Now, because I'm a bit of a graphics geek, I'm actually intrigued to see it in action. Plus, Firefox being my main browser, it's not like I harbor any antipathy towards them. I even wanted to buy a Firefox Phone, before they killed it. So, as I read the article, I was immediately struck with a mixture of fascination and trepidation.

    But, the thing is, you voted down the one person here who said he actually tried it. Why? Is it because he contradicted what you wanted to believe about it and about Mozilla/Firefox?

    nikolajj said:
    And I feel that I have to repeat myself: Maybe power consumption will increase and maybe it will not, I don't know. And what I am trying to say is, the you don't know for sure either.

    What I don't know is if they'll end up going with the approach described in the article. What I do know is if they do exactly that, then it's bad news for battery life and power bills.

    If they end up doing loads of clever optimizations and caching of partial composites and renders, then it might even be a net win. It didn't sound like the direction they're headed, but I actually think that's where they're most likely to end up, sooner or later. Even then, maybe they'll still have to climb down from 60 Hz, when on battery.
  • bit_user said:
    But, the thing is, you voted down the one person here who said he actually tried it. Why?

    Because it assumes something about the end products performance based on unfinished software. You just cannot do that. The downvote helps informs other to not take it as fact.
    That is really my only point in all this. We can't know for sure about battery before it is done. So all in all, we might really just basically agree.
  • nikolajj said:
    bit_user said:
    But, the thing is, you voted down the one person here who said he actually tried it. Why?

    Because it assumes something about the end products performance based on unfinished software. You just cannot do that.

    Depends on what you read into it. If you take it as proof that the end result will have power problems, then that's going too far. But it confirms that the end result might have power problems. On the other hand, if someone tried a prototype and found their battery life went up, well you can pretty safely assume the final release will perform at least that well.

    So, the way I see it is that it validates the concern. And for that, it's a worthwhile contribution and think the down-vote was unjustified. But it's not like there's a strict policy for voting, AFAIK.
  • bit_user said:
    nikolajj said:
    bit_user said:
    But, the thing is, you voted down the one person here who said he actually tried it. Why?

    Because it assumes something about the end products performance based on unfinished software. You just cannot do that.

    Depends on what you read into it. If you take it as proof that the end result will have power problems, then that's going too far. But it confirms that the end result might have power problems. On the other hand, if someone tried a prototype and found their battery life went up, well you can pretty safely assume the final release will perform at least that well.

    So, the way I see it is that it validates the concern. And for that, it's a worthwhile contribution and think the down-vote was unjustified. But it's not like there's a strict policy for voting, AFAIK.

    Are we talking about the same post? "Yes this will be bad for battery life" is not a "Could be", it is a "This is how it is!". Having tried the current software does not make this sure fact.
    If not to use the downvote system to help people avoid false information, what then? (and upvote for relevant information ofc.)
  • Ask a new question

    Read More

    Firefox Software