Gnome 3.34 fikset forskjellige ytelsesfeil som påvirker Ubuntu 19.04

nisse3.34

For noen dager siden ble det gjort et innlegg på Ubuntu-forumet, som hanKanoniske utviklere har lagt merke til at skrivebordsmiljøet "Gnome shell" i Ubuntu versjon 19.04, som er basert på Gnome 3.32, det var merkbart tregere enn andre skrivebordsmiljøer.

Opprinnelig ble det antatt at årsaken var bruken av JavaScript, men det viste seg at JavaScript bare var ti prosent av koden i kombinasjonen av Gnome Shell sammen med Mutter-vindusbehandleren, og at dette faktisk ikke var ansvarlig for den observerte tregheten.

Den neste antagelsen var at programvaren overbelastet CPU eller grafikkort. Men målinger viste at dette ikke var tilfelle. Det som kom fram i stedet var at prosessorene ble tvunget til å sitte inaktiv for lenge.

Det viktige å merke seg her er at det meste av kildekoden er i Mutter-prosjektet, ikke Gnome Shell. Så samlet sett er bare omtrent 10% av Gnome Shell skrevet i JavaScript når du vurderer Mutter, og rundt 90% er skrevet i C.

Derfor, utviklere var i stand til å fokusere forskningen på timing, referert til i artikkelen som "sanntid." Fordi Gnome og Mutter behandler en hendelsessløyfe Glib hver i en enkelt tråd, de er utsatt for forsinkelser.

Enhver lengre forsinkelse kan føre til at en av rammene hoppes over som utgjør bildet på skjermen. Dette manifesterer seg i en merkbar forsinkelse for brukeren på skjermen.

Ved å måle de forskjellige forsinkelsene fant utviklerne ikke mindre enn et halvt dusin Gnome-bugs løst i Gnome 3.34.

Den første feilen førte til at en ramme hoppet over fordi etter en rammeprogrammeringsforsinkelse med noen få millisekunder ble tiden som rammen måtte gjenoppbygges feil beregnet.

Men å rette på denne feilen, som ikke alltid skjedde, gjorde presentasjonen mye jevnere.

For det andre, lUtviklerne fant at nesten alle rammene var forsinket på X.org fordi bordberegningen ble satt for tidlig. Ved en bildefrekvens på 60 Hz ble skjermen forsinket med 16 ms.

I dette tilfellet er Wayland ikke berørt. En annen feil gjelder bare Wayland. Problemet var at i Mutter ble hastigheten for visning av musepekeren satt til 60Hz. Dette kan føre til problemer med opptil 100% CPU-bruk hvis oppdateringsfrekvensen var forskjellig.

Også Mutter hadde et annet problem som bare har blitt løst så langt. Som et resultat ble alle inngangshendelser forsinket til neste ramme, det vil si opptil 16 ms ved 60 Hz.

En annen forsinkelse ble forårsaket av reparasjoner for Nvidias proprietære drivere på X.org, som ikke lenger er nødvendig nå.

Og et annet problem ble også fremhevet, bestemmer hva som påvirker musepekeren, der OpenGL-samtaler ble foretatt, dette påvirker ekstremt og forårsaker ekstra ventetider på grunn av den nødvendige synkroniseringen mellom CPU og GPU.

Som et resultat Gnome 3.34 er betydelig raskere. Ya minst to andre problemer er kjent som ennå ikke er løst.

  1. Når du bruker flere skjermer, forårsaker krasj på Wayland-bakenden betydelige forsinkelser. Dette bør løses i henhold til utviklerne på Gnome 3.36 og dermed også Ubuntu 20.04.
  2. Det andre problemet er at ikke alle forsinkelsene på Mutter er løst ennå. Artikkelen avsluttes med tips om hvilke feil du skal unngå ved feilsøking og perspektiv på hva du skal gjøre videre.

Optimalisering Gnome bør være for Ubuntu 20. 04 i en rekke forbedringer Hva skal de fokusere på? på moderne og rask maskinvare. De gjenværende problemene som påvirker eldre og langsommere datamaskiner, må løses og løses i Ubuntu 20.10.

Hvis du vil vite mer om publikasjonen, du kan sjekke følgende lenke. 


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.