Além do gerenciador de janelas/compositor de Mutter do GNOME ter visto uma correção importante recentemente reduzindo o atraso de saída sob o X11 para que ele corresponda ao desempenho do Wayland do GNOME, outra correção importante do Mutter também acabou de ser implementada. Portanto, o Mutter do GNOME 3.34 obtém correção importante para evitar engasgos.
A mudança Mutter/Clutter para evitar pular o próximo quadro a ser renderizado chegou. Essa é mais uma grande contribuição do Daniel van Vugt da Canonical como parte de seus aprimoramentos de área de trabalho do GNOME.
Novo algoritmo do Mutter do GNOME 3.34 para evitar engasgos
O código de Daniel contém um algoritmo retrabalhado para evitar quadros ignorados, que foram omitidos silenciosamente para o usuário. Isso ocorre devido ao buffer triplo acidental (fechado pela outra alteração relacionada anteriormente. Portanto, o desempenho do Wayland no GNOME geralmente é bastante rápido e outras características comportamentais do GNOME. Assim, usuários e desenvolvedores não percebiam que quadros estavam sendo ignorados na renderização.
Porém, agora o código retrabalhado está em vigor e é parte do lançamento do desenvolvimento do Mutter 3.33.2 desta semana e o que culminará em fazer parte do lançamento do GNOME 3.34 em setembro. Daniel considerou este como um dos problemas mais determinantes em torno da gagueira no GNOME e deve ajudar na taxa de quadros de suavidade. Ele também está avaliando se esta mudança pode ser portada nos pacotes do Ubuntu para o Mutter nos lançamentos atuais do Ubuntu.
Mutter do GNOME 3.34 reduz a retardo na saída do X11 para coincidir com o desempenho do Wayland
Adicionando à lista de mudanças positivas com o GNOME 3.34, que serão lançadas em setembro deste ano, está diminuindo o possível atraso de saída ao executar o Mutter do GNOME no X11/X.Org.
O GNOME experimentou um maior atraso nas sessões baseadas em X.Org, em vez de Wayland em algumas configurações. Em particular, o maior atraso de saída no X11 pode ser experimentado ao arrastar pelas janelas. Felizmente, a partir do mais recente código de desenvolvimento da série Mutter 3.33, esse atraso foi resolvido.
Daniel van Vugt, da Canonical, que vem trabalhando em algumas melhorias incríveis de usabilidade e desempenho para o GNOME desde que o Ubuntu voltou a ele, é responsável por essa última correção. A correção para endereçar este possível atraso de saída corrige a manipulação do tempo de quadro programado. O comportamento corrigido garante que a fila do buffer não seja sobrecarregada e esteja apenas sendo armazenada em buffer duplo para garantir um atraso menos visível.
A questão é conhecida há sete meses, mas só recentemente foi finalmente incorporada ao Mutter. Assim, deve fazer parte do GNOME 3.34. O desempenho de saída agora deve corresponder em grande parte ao do GNOME em execução na sessão baseada em Wayland.
Já vimos algumas otimizações contínuas de desempenho já neste ciclo. Basta ver a elogiada versão do GNOME 3.32. Portanto, ainda mais otimizações farão parte do GNOME 3.34 para melhor desempenho de desktop Linux. Para isso, o Mutter do GNOME 3.34 obtém correção importante para evitar engasgos.
XWayland recebe um provedor GLX baseado em EGL, ajudando vários jogos no Linux
Uma melhoria notável foi mesclada na árvore Git “xserver” para a eventual versão do X.Org Server 1.21 que irá melhorar o suporte para vários jogos Linux que dependem do XWayland para rodar sob um compositor Wayland.
Adam Jackson, da Red Hat, desenvolveu um provedor GLX com suporte a EGL para o código XWayland do servidor xorg. Adam explicou no commit:
Sem isso, estamos usando driswrast para configurar visuais GLX. Isso é lamentável porque o llvmpipe não expõe várias configurações de múltiplas amostras, portanto vários aplicativos que os esperam falharão. Com isso, apenas consultamos as capacidades do EGL que está apoiando o glamour e refletimos isso para os clientes do GLX. Isso também abre o caminho para o xserver deixar de ser um carregador de driver DRI, o que é legal.
Isso permite que visuais anti-aliasing de múltiplas amostras (MSAA) sejam expostos sob o XWayland e tratem de vários jogos/aplicativos que esperam a capacidade de configurações multi-sample. Entre os jogos conhecidos que esta correções foram mescladas estão Hearts of Iron IV, Stellaris e Europa Universalis IV que até agora tiveram problemas ao tentar rodar sob o XWayland.
Infelizmente, ainda não há um cronograma de lançamento para o X.Org Server 1.21, então pode acabar sendo um tempo antes de ver este provedor GLX em uma versão do servidor X.Org. Na verdade, a menos que o esforço do xorg-server 1.21 comece a ser organizado em breve, provavelmente é improvável que a versão seja incluída nas atualizações de distribuição do Linux no outono, como o Ubuntu 19.10 e o Fedora 31.