Avaliação do impacto das otimizações no GNOME 46 na eficiência dos emuladores de terminal

Foram publicadas as resultados da verificação da eficácia das otimizações adicionadas à biblioteca VTE (Virtual Terminal library) e incluídas na versão GNOME 46. Durante os testes, a responsividade da interface foi medida em emuladores de terminal como Alacritty, Console (GTK 4), GNOME Terminal (GTK 3 e 4) e VTE Test App (exemplo do repositório VTE), rodando no Fedora 39 com GNOME 45 e no Fedora 40-beta com GNOME 46. O aplicativo Alacritty não utiliza a biblioteca VTE e foi escolhido como padrão, pois, segundo testes anteriores, é um dos emuladores de terminal mais rápidos. Para as medições, foi utilizado um sensor baseado na placa Teensy, que mede o tempo entre a pressão da tecla e a aparição das informações na tela.

A biblioteca VTE fornece um widget GTK pronto, utilizado em vários emuladores de terminal para GNOME, entre os quais estão GNOME Terminal, Console, Black Box, Tilix, Terminator e Ptyxis. Na versão GNOME 46, a VTE teve suas estruturas internas significativamente reformuladas, o que, segundo os desenvolvedores, resultou em um aumento de velocidade nas operações, alcançando até 40% de ganho de desempenho nos testes. Do ponto de vista prático, as otimizações reduziram as latências durante a renderização em configurações com GTK 4. Anteriormente, as latências ao digitar no Console e no GNOME Terminal eram perceptíveis, afastando muitos usuários do uso dos emuladores de terminal padrão para GNOME. Com a utilização da versão VTE 0.76, esse problema foi resolvido.

Os testes independentes realizados confirmaram uma redução significativa nas latências de entrada de dados em aplicativos baseados na VTE, observada não apenas em cenários simples, mas também em situações complexas de uso de terminais. Por exemplo, ao usar o neovim, as latências de entrada dos emuladores de terminal baseados na VTE foram reduzidas ao nível do terminal mais rápido, Alacritty. Em particular, no teste envolvendo a utilização do utilitário "cat", a reação ao pressionar as teclas no Console e no GNOME Terminal caiu de 40 para 12 ms, enquanto no teste de rolagem no neovim — de 45 para 23 ms.

Avaliação do impacto das otimizações no GNOME 46 na eficiência dos emuladores de terminal
Avaliação do impacto das otimizações no GNOME 46 na eficiência dos emuladores de terminal
Avaliação do impacto das otimizações no GNOME 46 na eficiência dos emuladores de terminal

A aceleração do desempenho com a nova versão da biblioteca VTE também foi observada no conjunto de testes vtebench, que mede não apenas a latência de entrada, mas o tempo de leitura a partir do dispositivo PTY e a performance de análise (testes de velocidade de rolagem e movimentação do cursor). Nos testes vtebench, o terminal Alacritty supera o Console e o GNOME Terminal, mas a diferença de desempenho destes últimos já não é tão acentuada como antes. Parte da queda de desempenho do GNOME Terminal é explicada pelos custos adicionais relacionados ao suporte a recursos de acessibilidade.

Avaliação do impacto das otimizações no GNOME 46 na eficiência dos emuladores de terminal


Fonte: opennet.ru
Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster