Dar uma turbinada no Ubuntu e derivados com Mesa Driver para Intel e AMD

Essa matéria é especifica para quem use placas de vídeo Intel ou AMD e quer dar uma turbinada no desempenho do seu Ubuntu, confira.








Placa de vídeo Intel e AMD



Hoje em dia a grande maioria dos computadores e notebooks tem placas de vídeo Intel ou AMD.

A vantagens dessas placas é que elas tem um ótimo suporte aos drivers abertos o Mesa Driver, dispensando assim a utilização de qualquer drivers proprietários.






A Nvidia também tem planos para disponibilizar drivers abertos, isso vocẽ pode conferir aqui.


Driver Mesa



Mesa, também chamado Mesa3D e The Mesa 3D Graphics Library, é um driver de dispositivo de código aberto e implementação de software do OpenGL, Vulkan e de outras especificações. Wikipédia







Mesa 3D no Ubuntu



O driver Mesa 3D já vem instalado no Ubuntu por default, mas para cada versão do Ubuntu temos versões diferentes do Mesa.

Confira no exemplo abaixo.




Note que quanto mais antiga é a versão do Ubuntu mais antigo é o Mesa 3d, no caso de drivers é sempre bom ter as suas ultimas versões para ter as ultimas implementações de melhorias.


Identificando o driver Mesa instalado



Para identificar o driver Mesa de o comando abaixo no terminal.


glxinfo | grep version





Entenda o comando.

Na linha abaixo temos duas informações.

Versão do Mesa = 20.0.0

Versão do OpenGL = 2.0 ( Essa é a versão máxima suportada pelo chip gráfico )


OpenGL ES profile version string: OpenGL ES 2.0 Mesa 20.0.0


OBS: No meu caso é o Mesa 20.0.0 pelo fato de eu estar usando o Ubuntu 20.04 em desenvolvimento, para as demais versões do Ubuntu o Mesa maximo é o 19.x.x.

Instalando o Mesa 3D mais atual



Para termos as ultimas versões do Mesa 3D precisamos adicionar uma PPA ao sistema de pacotes, não se preocupe a PPA que iremos usar não compromete o seu sistema operacional.

Essa PPA apenas distribui drivers Mesa e alguns complementos a ele e mais nenhuma pacote.




Adicionar a PPA Ubuntu-X.


Para adicionar a PPA de o comando abaixo no terminal.


sudo add-apt-repository ppa:ubuntu-x-swat/updates 

Atualize a lista de pacotes.


sudo apt-get update

Instale a ultima versão do Mesa 3D atualizando o seu sistema operacional Ubuntu.

sudo apt full-upgrade

Confira novamente a versão do driver.

glxinfo | grep version


Melhorar o desempenho



Para dar uma boa melhorada no desempenho, vocẽ pode desativar a "Sincronização com atualização vertical"


A sincronização com a atualização vertical pode evitar o "rasgo" visual com movimentos rápidos. Ao mesmo tempo, limita a taxa de quadros a (uma fração) da taxa de atualização vertical.

Os aplicativos podem definir um "intervalo de troca", o que significa que as trocas de buffer não ocorrem antes de n espaços em branco verticais após a troca anterior. Com essa opção, você pode desativar os intervalos de troca, escolher um intervalo de troca padrão de 0 ou 1 ou forçar o aplicativo a sempre aguardar um espaço em branco vertical em cada troca de buffer:

0 = nunca, FPS rulez!

1 = preferência de aplicativo, intervalo padrão 0

2 = preferência de aplicativo, intervalo padrão 1

3 = Preferência de aplicativo, sempre sincronizar com atualização

Fonte


Confira na imagem abaixo o aplicativo glxgears sincronização vertical ativa com FPS abaixo dos 60





Agora com a sincronização vertical desativada, FPS acima dos 800




Drirc



Aqui iremos usar o .drirc que é destinado a configuração do driver de vídeo Mesa, entenda a sintaxe da configuração.


<driconf>
<device screen="0" driver="dri2"> Driver a ser configurado.
<application name="all"> Aplicativo a ser afetado, adicione um APP ou all para todos.
<option name="vblank_mode" value="0"/> Opção a ser usada.
</application>
</device>
</driconf>


Aplicar na interface inteira



Ao aplicar na interface inteira você pode perder em reprodução de vídeo, o tearing em vídeos fica mais acentuado.

Para aplicar de o comando abaixo para criar o arquivo oculto .drirc na sua home.


nano .drirc


Cole as linhas em vermelho abaixo.


<driconf>
<device screen="0" driver="dri2">
<application name="all">
<option name="vblank_mode" value="0"/>
</application>
</device>
</driconf>


Deve ficar assim.





Salve teclando Ctrl + x tecle s e tecle Enter para fechar.

Reinicie o computador.


Confira no vídeo abaixo se apresenta tearing ( cerrilhamento na imagem ), caso positivo experimente a dis seguinte.





Aplicar para programas específicos



Essa eu considero a melhor opção, você pode usar ela para melhorar o desempenho de games e aplicativos que precisem de um desempenho maior da VGA.

No exemplo irei aplicar apenas ao glxgears para fazer a demonstração do ganho de FPS.

Você pode especificar qualquer outro programa o glxgears é apenas um exemplo.

nano .drirc

Cole as linhas em vermelho abaixo, altere all para o nome do programa que deseja afetar.



<driconf>
<device screen="0" driver="dri2">
<application name="glxgears">
<option name="vblank_mode" value="0"/>
</application>
</device>
</driconf>


Deve ficar assim.






Salve teclando Ctrl + x tecle s e tecle Enter para fechar.

Reinicie o computador.


Faça novamente o teste de tearing e não deve mais ter o problema.



Comentários

  1. Uma dúvida, Ubuntu 20.04.1, terei melhor desempenho com esses drivers do que com o driver proprietário da AMD para a minha placa de vídeo?

    ResponderExcluir

Postar um comentário

olá, seja bem vindo ao Linux Dicas e suporte !!

Você precisa ver isso

Todos os arquivos do blog

Mostrar mais