Mozilla ended 2017 with a bang by retooling its Firefox browser with a focus on speed with the release of Firefox 57. Now called Firefox Quantum (it is okay to still refer to it as simply Firefox), Mozilla's browser is noticeably faster than previous versions—over twice as fast, according to Mozilla. It is a solid foundation to build upon, and Mozilla is doing that, with Firefox 58 bringing even more improvements to browser space.
If you are a Firefox user, you can initiate an update to the latest release by clicking on the three horizontal lines in the upper-right corner, clicking on Help, and selecting About Firefox. Or you can download Firefox from Mozilla's website. Either way, Firefox 58 is available now to all users, and it brings further optimizations to the Firefox Quantum experience.
One of the optimizations that Firefox 58 introduces is called Off-Main-Thread Painting (OMTP). To understand what this does, let's have a look at how Firefox renders a webpage with OMTP:
- Making a Display List: Here we collect the visible elements on the page and create high-level primitives to encapsulate rendering each one. These primitives are called “display items.”
- Assigning Layers: Here we try to group display items together into “layers”, based on how they are scrolled or animated. There are different types of layers. Display items will usually be grouped into “Painted” layers, which have a texture (or bitmap) that is updated when items are added, removed, or changed.
- Rasterization: This is where each display item is asked to render itself into its assigned layer. For example, a “table” item might issue a series of API calls to draw borders and lines.
- Compositing: Finally, the layers are composited into a single final image, which is then sent to the monitor. This step uses Direct3D or OpenGL when available
"Even after work on WebRender is complete and enabled in Firefox, there are many situations where hardware acceleration is not available or drivers have bugs that could (ahem) render WebRender unavailable. OMTP will provide a significantly better experience than the current rendering process," Mozilla explains.
Firefox also contains various security fixes and contains additional developer tools to help coders better monitor performance and collect related metrics.