
WebRender is in beta - bpierre
https://mozillagfx.wordpress.com/2018/10/26/webrender-newsletter-27/
======
tamasnet
For anyone (like me) not familar with WebRender, here's a great writeup:
[https://hacks.mozilla.org/2017/10/the-whole-web-at-
maximum-f...](https://hacks.mozilla.org/2017/10/the-whole-web-at-maximum-fps-
how-webrender-gets-rid-of-jank/)

Also a great read for anyone interested in long-form technical articles that
try to serve a wide range of reader types.

~~~
ummonk
I'd be curious how the power usage compares between this GPU rendering and the
old CPU painting / compositing rendering. I'd expect it to save power but
could also see it going the other way, particularly for webpages with minimal
changes from frame to frame.

~~~
pcwalton
At present power usage tends to be worse with WebRender, but I'm working on
that with OS compositing (planeshift), and Glenn is working on that with
picture caching. I expect it to be an overall energy consumption improvement
over the old graphics system once this work is complete, due to reduced
overdraw and better use of OS composition.

------
cztomsik
I've just made very basic integration with node. It's rather PoC, but it
works.

It can currently show a window and render moving rect from vue.js template.
There's still a lot of work to be done, webrender does too little to be just
drop in replacement for electron but it might be worth watching if you're
interested in anything like that (lightweight cross-platform opengl-rendered
gui apps developed in react/vue/angular/...)

[https://github.com/cztomsik/node-webrender](https://github.com/cztomsik/node-
webrender)

~~~
Natela
This is a nice experiment ! There are a few people starting to hack around
with WebRender. There are already Limn, Azul, Stylish, etc...it would be nice
if we joined forces in developing one good UI framework powered by WebRender.

~~~
cztomsik
Thanks for those links, azul is very interesting!

This is my first rust project, so I'm not sure if I would be any help

I also think it's better to have as much GUI part as possible in typescript,
try-and-refine cycle is shorter and imagine how it could be with live/hot-
reload

What I'm trying to do is something like electron but lighter, faster and
memory-savvy. I think it could use azul, so thanks a lot :-)

~~~
Natela
I agree, I think Typescript is a very good pick for UI developpement, it's
easy to use yet you still have types that help with maintainability. I would
definitely be using something like this to develop apps :). However there are
people who prefer other languages so it'd be nice if we could have a WebRender
UI framework on which we could write bindings for any language, similarly to
QT and GTK that have bindings for several languages.

------
Sammi
Most up to date presentation on WebRender I could find:

[https://www.youtube.com/watch?v=hXzLC6ArlgE](https://www.youtube.com/watch?v=hXzLC6ArlgE)

Slides:

[https://github.com/MadRust/talks/blob/master/slides/meetup3_...](https://github.com/MadRust/talks/blob/master/slides/meetup3_mrobinson.pdf)

------
markdog12
> Kats is standing up WebRender in Firefox for Android

I'm guessing "standing" should be "setting"? Anyway, doesn't seem to work just
yet for nightly. I enabled in about:config, but get "unavailable by runtime:
WebRender not ready for use on non-e10s Android". Also, "WEBRENDER_QUALIFIED:
blocked by env: Has battery"

I filtered by e10s and electrolysis in about:config but couldn't find anything

~~~
robin_reala
Standing up here means getting into a working but unfinished state. It’s a
slightly uncommon turn of phrase, but it’s legit English.

~~~
Serow225
To me it's very common in the tech community. Maybe a transfer from the
embedded/sysadmin/DBA side of things, from what I've seen its usage move over
time.

~~~
ergothus
You aren't used to hearing about "standing up" new servers?

~~~
Serow225
I must have written my text poorly, that's what I intended to convey; that in
my experience the term's popularity started in the embedded/sysadmin/dba
communities and then spread to the wider tech communities. Sorry! :)

------
actionscripted
Enabled in FF Nightly 65.0a1 (2018-10-26) (64-bit) and it felt a little
sluggish especially with regards to scrolling. I understand it's in beta but I
guess I was expecting things to "feel" faster. Tried resizing larger
sites/pages and things felt snappy but scrolling felt jumpy and off.

That said, can't wait for this to come out of beta!

~~~
chmln
I've experienced the exact same thing on latest thunderbird betas and
nightlies.

Its a shame that GPU support by Mozilla products is in such abysmal state.
Meanwhile Google has working hardware accelerated video decoding AND decent
GPU support in Chrome.

~~~
kevingadd
Firefox has had hardware video decoding and GPU support for like 15 years?
This is just a new graphics stack.

~~~
gsnedders
It doesn't on Linux (see
[https://bugzilla.mozilla.org/show_bug.cgi?id=1210726](https://bugzilla.mozilla.org/show_bug.cgi?id=1210726)
and
[https://bugzilla.mozilla.org/show_bug.cgi?id=594876](https://bugzilla.mozilla.org/show_bug.cgi?id=594876)).

------
AriaMinaei
Wondering if Pathfinder made it to this release? Perhaps pcwalton could chime
in?

~~~
pcwalton
It's in the codebase as an optional code path for fonts but not enabled. The
graphics team prefers to do a staged rollout where we roll out WebRender first
before enabling Pathfinder. I agree with the caution.

~~~
AriaMinaei
Happy to hear it's in the codebase. It's an exciting project!

------
zlynx
Firefox has become crazy fast lately. Which is great! But on systems like a
Surface tablet it seems to chew through battery much faster than Edge.

It seems to be pages that are actively modifying themselves. If they just sit
there being static the power use isn't a problem.

------
polskibus
Out of curiosity, is WebRender written in Rust?

~~~
proaralyst
Yeah: [https://github.com/servo/webrender](https://github.com/servo/webrender)

~~~
Sammi
[https://github.com/servo/webrender/tree/master/webrender/src](https://github.com/servo/webrender/tree/master/webrender/src)

------
jadbox
For pages like Facebook and Reddit, the performance is great. But Chrome is
almost double the framerate for svg animations (I measured on a Macbook).

~~~
pcwalton
WebRender doesn't accelerate SVG yet. That will be the second stage of the
Pathfinder work. Stay tuned :)

------
aidenn0
So soon even more things won't work right due to buggy GPU drivers on linux?

------
rapsey
Does it work on macOS atm?

~~~
sciurus
Yes, I'm using it in Firefox 65.0a1 on a 15" 2017 MBP running High Sierra.

After setting gfx.webrender.all to true and restarting, check about:support
and you should see "Compositing: WebRender"

Of course you may still hit bugs.

~~~
dochtman
These days I don't see many bugs. I hit a crash this week, but it was fixed
within a day.

------
stcredzero
Is GPU rendering going to open up new security holes? If not, then how do we
know it won't?

~~~
pcwalton
Can you be more specific as to which "security holes" you're thinking of?
You're kind of asking to prove a negative.

~~~
stcredzero
Not at all. I'm asking what the current approach and what the current thinking
is about this topic.

------
ammaskartik
Great work on this!

------
JoshuaAshton
"Bobby fixed a crash" \- A crash relating to _what_? This changelog is awful,
who approved this?

~~~
Manishearth
This isn't a changelog, this is a newsletter for folks wanting to keep up with
development.

