Gnome 3.34 heeft verschillende prestatiebugs opgelost die van invloed waren op Ubuntu 19.04

kabouter3.34

Een paar dagen geleden was het klaar een bericht op het Ubuntu-forum, welke hijCanonieke ontwikkelaars hebben opgemerkt dat de desktopomgeving "Kabouterschelp" in Ubuntu-versie 19.04, die is gebaseerd op Gnome 3.32, het was merkbaar langzamer dan andere desktopomgevingen.

Aanvankelijk werd aangenomen dat de reden het gebruik van JavaScript was, maar het bleek dat JavaScript slechts tien procent van de code was in de combinatie van de Gnome Shell samen met de Mutter windowmanager en dat dit eigenlijk niet verantwoordelijk was voor de waargenomen traagheid.

De volgende veronderstelling was dat de software de CPU of grafische kaart overbelaste. Maar metingen lieten zien dat dit niet het geval was. Wat in plaats daarvan naar voren kwam, was dat de processors te lang inactief moesten blijven.

Het belangrijkste om hier op te merken is dat de meeste broncode in het Mutter-project zit, niet in de Gnome Shell. Dus over het algemeen is slechts ongeveer 10% van de Gnome Shell geschreven in JavaScript als je Mutter beschouwt, en ongeveer 90% is geschreven in C.

Daarom ontwikkelaars konden hun onderzoek richten op timing, waarnaar in het artikel wordt verwezen als "realtime". Omdat Gnome en Mutter een gebeurtenislus verwerken Glib elk in een enkele draad, ze zijn vatbaar voor vertragingen.

Bij een langere vertraging kan een van de frames worden overgeslagen waaruit het beeld op de monitor bestaat. Dit uit zich in een merkbare vertraging voor de gebruiker op de monitor.

Door de verschillende vertragingen te meten, vonden de ontwikkelaars niet minder dan een half dozijn Gnome-bugs die waren opgelost in Gnome 3.34.

De eerste fout leidde tot het overslaan van een frame omdat na een frameprogrammeervertraging van enkele milliseconden de tijd dat het frame opnieuw moest worden opgebouwd, onjuist werd berekend.

Maar het corrigeren van deze fout, die niet altijd voorkwam, maakte de presentatie veel soepeler.

Ten tweede, lDe ontwikkelaars ontdekten dat bijna alle frames vertraagd waren op X.org omdat de tafelberekening te vroeg was ingesteld. Bij een framesnelheid van 60 Hz werd het scherm met 16 ms vertraagd.

In dit geval wordt Wayland niet beïnvloed​ Een andere fout betreft alleen Wayland. Het probleem was dat in Mutter de snelheid voor het weergeven van de muisaanwijzer was ingesteld op 60 Hz, wat problemen kon veroorzaken tot 100% CPU-gebruik als de verversingssnelheid anders was.

ook Mutter had nog een probleem dat tot nu toe slechts gedeeltelijk is opgelost. Als resultaat werden alle invoergebeurtenissen vertraagd naar het volgende frame, dat wil zeggen tot 16 ms bij 60 Hz.

Een andere vertraging werd veroorzaakt door fixes voor de eigen stuurprogramma's van Nvidia op X.org, die nu niet langer nodig zijn.

En een ander probleem werd ook benadrukt, bepaalt wat de muisaanwijzer beïnvloedt, waarin OpenGL-oproepen werden gedaan, dit heeft een extreem effect en veroorzaakt extra wachttijden vanwege de noodzakelijke synchronisatie tussen de CPU en de GPU.

Als gevolg hiervan Gnome 3.34 is aanzienlijk sneller. Ya er zijn ten minste twee andere problemen bekend die nog niet zijn opgelost.

  1. Bij gebruik van meerdere monitoren veroorzaken crashes op de Wayland-backend aanzienlijke vertragingen. Dit moet worden opgelost volgens de ontwikkelaars op Gnome 3.36 en dus ook op Ubuntu 20.04.
  2. Het tweede probleem is dat nog niet alle vertragingen bij Mutter zijn opgelost. Het artikel sluit af met tips over welke fouten u moet vermijden bij het oplossen van problemen en wat u vervolgens kunt doen.

Optimaliseren Gnome zou voor Ubuntu 20. 04 in een aantal verbeteringen moeten zijn Waar moeten ze op focussen? op moderne en snelle hardware. De resterende problemen met oudere en langzamere computers moeten worden aangepakt en opgelost in Ubuntu 20.10.

Als je meer wilt weten over de publicatie, u kunt de volgende link bekijken. 


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.