Gnome 3.34 fixade olika prestandabuggar som påverkar Ubuntu 19.04

tomte3.34

För några dagar sedan var det klart ett inlägg på Ubuntu-forumet, som hanKanoniska utvecklare har noterat att skrivbordsmiljön "Gnome skal" i Ubuntu version 19.04, som är baserad på Gnome 3.32, det var märkbart långsammare än andra skrivbordsmiljöer.

Ursprungligen antogs att anledningen var användningen av JavaScript, men det visade sig att JavaScript bara var tio procent av koden i kombinationen av Gnome Shell tillsammans med Mutter-fönsterhanteraren och att detta inte faktiskt var ansvarigt för den observerade långsamheten.

Nästa antagande var att programvaran överbelastade CPU eller grafikkort. Men mätningar visade att så inte var fallet. Det som framkom istället var att processorerna tvingades sitta lediga för länge.

Det viktiga att notera här är att det mesta av källkoden finns i Mutter-projektet, inte Gnome-skalet. Så totalt sett är bara cirka 10% av Gnome-skalet skrivet i JavaScript när man tänker på Mutter, och cirka 90% är skrivet i C.

Därför, utvecklare kunde fokusera sin forskning på timing, i artikeln kallas "realtid." Eftersom Gnome och Mutter bearbetar en händelsesslinga Glibra var och en i en enda tråd, de är utsatta för förseningar.

Längre förseningar kan medföra att en av ramarna hoppas över som bildar bilden på monitorn. Detta manifesterar sig i en märkbar fördröjning för användaren på skärmen.

Genom att mäta de olika fördröjningarna hittade utvecklarna inte mindre än ett halvt dussin Gnome-buggar fixade i Gnome 3.34.

Det första felet ledde till att en bild hoppades över eftersom efter en programmeringsfördröjning med några millisekunder beräknades den tid som ramen måste byggas om felaktigt.

Men att korrigera detta fel, som inte alltid inträffade, gjorde presentationen mycket smidigare.

För det andra, lUtvecklarna fann att nästan alla ramar var försenade på X.org eftersom bordsberäkningen sattes för tidigt. Med en bildfrekvens på 60 Hz fördröjdes skärmen med 16 ms.

I det här fallet påverkas inte Wayland. Ett annat misstag gäller bara Wayland. Problemet var att i Mutter var hastigheten för att visa muspekaren inställd på 60Hz. Detta kan orsaka problem med upp till 100% CPU-användning om uppdateringsfrekvensen var annorlunda.

också Mutter hade ett annat problem som hittills bara delvis har lösts. Som ett resultat försenades alla ingångshändelser till nästa bild, det vill säga upp till 16 ms vid 60 Hz.

En annan fördröjning orsakades av korrigeringar för Nvidias egna drivrutiner på X.org, som inte längre behövs nu.

Och ett annat problem lyfts också fram, avgör vad som påverkar muspekaren, där OpenGL-samtal gjordes, detta påverkar extremt och orsakar ytterligare väntetider på grund av den nödvändiga synkroniseringen mellan CPU och GPU.

Som ett resultat Gnome 3.34 är betydligt snabbare. Ya minst två andra problem är kända som ännu inte har lösts.

  1. När du använder flera bildskärmar orsakar kraschar på Wayland-backend betydande förseningar. Detta bör åtgärdas enligt utvecklarna på Gnome 3.36 och därmed även Ubuntu 20.04.
  2. Det andra problemet är att inte alla förseningar på Mutter är lösta än. Artikeln avslutas med tips om vilka misstag man ska undvika vid felsökning och perspektiv på vad man ska göra nästa.

Optimerande Gnome bör vara för Ubuntu 20. 04 i ett antal förbättringar Vad ska de fokusera på? på modern och snabb hårdvara. De återstående problemen som påverkar äldre och långsammare datorer måste hanteras och lösas i Ubuntu 20.10.

Om du vill veta mer om publikationen, Du kan kontrollera följande länk. 


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.