Sophämtning förbättringar i Firefox förbättra minne

0
246

Mozilla införde sophämtning i Firefox 38 som förbättrar minnet hantering av webbläsaren som en del av organisationens pågående arbetet för att föra minne av webbläsaren ner och optimera den så bra som möjligt för alla användningsfall.

Komprimering är en funktion av sophämtare som för närvarande endast stöd för JavaScript-objekt. Det föll minne på ett test — de ledande utvecklarna egen – med 50 flikar öppna med ca 2%. Även om det kanske inte ser mycket ut för världen, som den tappade användning på systemet med ca 30 Megabyte bara till 1300 Megabyte totalt, det är bara första steget med andra att följa som kommer att få ner minne vidare.

Så hur gör komprimeringen fungerar i Firefox?

JavaScript-Heap använder arenor, 4K block av minne som består av celler som har fasta storlekar. Varje arena innehåller celler av samma slag och storlek, och kan endast frigöras om det inte finns någon levande celler i det längre.

Problem med minnet uppstår när många arenor med några levande celler var finns utrymmet inte lämnas ut till minne i detta fall, Samtidigt som “död” cell utrymme kan användas av samma slag, att de inte kan användas av olika slag.

Mozilla ‘ s algoritm fungerar genom att flytta levande celler mellan arenor för att minska antalet arenor som används av Högen. Det fungerar genom att välja lämpliga celler, flytta dem och uppdatera alla tips för att se till att inga objekt eller data som går förlorade i processen.

Urvalsprocessen listar alla arenor med levande celler i fallande ordning och delar den på hälften för att flytta celler av arenor med få cellerna att släppa dem till minnet efteråt.

Det är intressant att notera att komprimering utlöser endast på tre specifika händelser som för närvarande:

  1. När Firefox kör slut på minne.
  2. När operativsystemet skickar ett “memory tryck” – händelse.
  3. När användaren har varit inaktiv en viss tid (för närvarande cirka 20 sekunder)

Kontrollera hur mycket minne som gratis celler använda

firefox heap

Du kan kontrollera hur mycket minne som cellerna använder i Firefox.

  1. Skriv about:memory i webbläsarens adressfält och tryck på enter.
  2. Sök efter js-main-runtime-gc-heap-engagerad
  3. Hitta gc-saker i sitt träd.

Ytterligare information om processen finns tillgängliga på Mozilla Hacka.

Avslutande Ord

Det är en obalans som för närvarande är i den rapportering som täcker Firefox och Mozilla. Har borttagningar och tillägg få massor av publicitet, vanligtvis genom Firefox-användare är emot förändring, medan core förbättringar som dessa, som är mestadels under huven, få lite att ingen publicitet alls.

Mozilla kunde göra ett bättre jobb på att främja de under huven förbättringar som dessa är funktioner som är-oftast – välkommen av alla användare av webbläsaren.

Nu läser: Som Firefox funktioner skulle du vilja se bort, och som polerad?