What performance improvements has Firefox been working on in the last six months?

Mozilla, the developer of Firefox, has released a report on 'What performance improvements have been made in the last 6 months?' In addition to significantly reducing the time between clicking the Firefox desktop icon and displaying the browser, processing has been done to clarify the notification that the web page is slowing down the browser. ..

Performance in progress – Mozilla Performance


◆ About starting Firefox
First of all, in Mozilla, 'When starting Firefox on Windows, Firefox does not seem to be responding even if you click the icon, and repeatedly clicking many times eventually launches a large number of browsers' problem It is said that it corresponds to. To solve this problem, Mozilla engineers Doug Thayer and Emma Malysz used the 'skeleton UI'.

In the first place, it takes a long time to start Firefox because a lot of processing is required to start Firefox. Mozilla uses the figure below to show that 'launcher process', 'loading XUL.dll', 'loading profile, starting JS engine', etc. are performed before the browser is displayed.

You need to load the profile and start the JS engine to determine the size and position of the window. It also takes a long time to load XUL.dll from the disc, but if your computer is slow, this loading time will be long.

By using the skeleton UI, the timing at which the browser is displayed is changed while the processing itself performed by Firefox remains the same. This will bring up the browser immediately after clicking, indicating that 'Firefox is responsive'.

In the following movie, you can see how Firefox (left) and Firefox (right) that adopted the skeleton UI start up. The final time the content is displayed on the browser is the same, but you can see that the time between clicking and displaying the browser has been significantly reduced. This prevents you from misunderstanding that 'Firefox is not responding' and clicking the icon many times.

Firefox Skeleton UI Demo --YouTube

The skeleton UI will be available in Firefox 92 Beta.

◆ Notification that 'web page is slowing down the browser'
Also, in the past, when opening a page with a script that works beyond a certain time threshold in Firefox, it was displayed as 'Web page is slowing down the browser'.

However, there were complaints that it was unclear which page the notification was open to on the browser and what steps to take next. So Doug Thayer and Emma Malysz included the title of the page that caused the display in the notification, and made the choice button only 'Stop' so that the user wouldn't get lost.

With this change, the user can quickly press the 'Stop' button, and it seems that the situation where the user suspends the process and is sent multiple notifications has decreased. In fact, since it was implemented, the number of notifications sent has decreased by 50%.

◆ Security
In May 2021, Mozilla announced a feature called 'Fission' to address the 'Specter' and 'Meltdown' vulnerabilities hidden in the hardware level of CPUs on the market.

'Site quarantine' function appeared in Firefox, as a fundamental measure against 'Specter' and 'Meltdown' --GIGAZINE

With conventional browsers that do not use Fission, when a user visits a harmful website, there is a risk that login information such as a bank different from that website will also be extracted. However, Fission treats each website individually, preventing attackers from accessing information on websites other than the harmful website.

In addition, Fission processes sites in individual processes, so 'opening a heavy site does not make other pages less responsive' 'even if one tab crashes, pages being processed by other processes' Is not affected. ”“ Because multiple processes are used to load the site, work is distributed to more CPU cores and hardware performance can be used more efficiently. ” I am.

Mozilla continues to improve Fission, and it is said that the process switching process related to NSS library initialization and HTTP Accept has been improved on multiple pages on Windows. The time required to switch processes used to be 20 to 40 milliseconds, but it has been reduced to 6 to 8 milliseconds.

In addition, it has been reported that Firefox 89 has enabled an API called 'Performance Event Timing API ' that provides insight into the latency of specific events.

in Software, Posted by darkhorse_log