Performance Articles
-
Smoother scrolling in Firefox 46 with APZ
Have you ever been on Facebook or Twitter, merrily scrolling down the page, when all of a sudden, the browser appears to freeze? For several long seconds it just hangs there, and you’re not sure if it’s going to crash or not. Then, finally, something gives way, and the page jumps to catch up to […]
-
Bringing the Power of SIMD.js to gl-matrix
Background: SIMD.js Single-Instruction-Multiple-Data (SIMD) is a technique used in modern processors to exploit data level parallelism. SIMD introduces wide vectors that can hold multiple data elements. Once loaded, all of the vector’s elements can be processed simultaneously using one vector operation. This brings the advantages of better performance and energy efficiency. The parallelism offered by […]
-
Compacting Garbage Collection in SpiderMonkey
Overview Compacting is a new feature of our garbage collector, released in Firefox 38, that allows us to reduce external fragmentation in the JavaScript heap. The aim is to use less memory in general and to be able to recover from more out-of-memory situations. So far, we have only implemented compacting for JavaScript objects, which […]
-
How fast are web workers?
The next version of Firefox OS, the mobile operating system, will unleash the power of devices by taking full advantage of their multi-core processors. Classically, JavaScript has been executed on a single thread, but web workers offer a way to execute code in parallel. Doing so frees the browser of anything that may get in […]
-
Performance Testing Firefox OS With Raptor
When we talk about performance for the Web, a number of familiar questions may come to mind: Why does this page take so long to load? How can I optimize my JavaScript to be faster? If I make some changes to this code, will that make this app slower? I’ve been working on making these […]
-
New Performance Tools in Firefox Developer Edition 40
Today Mozilla is pleased to announce the availability of Firefox Developer Edition 40 (DE 40) featuring all-new performance tools! In this post we will cover some of DE 40’s new developer tools, fixes, and improvements made to existing tools. In addition, a couple of videos showcase some of these features. Note: Many of the new […]
-
Let’s get charged: Updates to the Battery Status API
Web APIs provide a way for Open Web Apps to access device hardware, data and sensors through JavaScript, and open the doors to a number of possibilities especially for mobile devices, TVs, interactive kiosks, and Internet of Things (IoT) applications. Knowing the battery status of a device can be useful in a number of situations […]
-
Firefox OS, Animations & the Dark Cubic-Bezier of the Soul
I’ve been using Firefox OS daily for a couple of years now (wow, time flies!). While performance has steadily improved with efforts like Project Silk, I’ve often noticed delays in the user interface. I assumed the delays were because the hardware was well below the “flagship” hardware I’ve become accustomed to with Android and iOS devices. Last […]
-
Optimising SVG images
SVG is a vector image format based on XML. It has great advantages, most notably it is lightweight. Since SVG is a text format, it can be viewed and modified using a simple text editor, and applying GZIP compression produces excellent results. It’s critical for a website to provide assets that are as lightweight as […]
-
Project Silk
Editor’s Note: An earlier version of this post appeared on Mason Chang’s personal blog. For the past few months, I’ve been working on Project Silk which improves smoothness across the browser. Very much like Project Butter for Android, part of it is finally live on Firefox OS. Silk does three things: Align Painting with hardware […]