Menu

sábado, 13 de abril de 2019

Desativar Sincronização com atualização vertical em VGA Intel e AMD no GNU/Linux

Confira nessa matéria como dar uma melhorada na aceleração gráfica do seu GNU/Linux.









Sincronização com atualização vertical (intervalos de troca)


Nome: vblank_mode

Drivers: radeon, Intel

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


Padrão do sistema


Por padrão o a sincronização é sempre ativa, isso acaba reduzindo drasticamente o desempenho de aplicativos que usam aceleração gráfica, um exemplo é o teste de FPS com o glxgears onde por padrão fica na faixa do 60 FPS.






Ao definir o valor para 0 o resultado é bem diferente na casa do 6000 FPS.






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.

Para remover use o comando.

rm .drirc

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.


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.


Teste


Antes da alteração.









Após a alteração.







Caso não tenha gostado do resultado, use o comando abaixo para remover o arquivo de configuração e reinicie o computador.

rm .drirc


Eu estou te ajudando? Faça uma doação!!













2 comentários:

  1. Eu só não entendi as partes que você fala que é melhor pra tal coisa, o código é sempre o mesmo e o arquivo que vamos cola o código também.

    ResponderExcluir
    Respostas
    1. Foi mau, esqueci de add o programa no lugar do all, agora ficou claro. VLW por alertar ;)

      Excluir