Limitar FPS com driver da NVIDIA

1. Limitar FPS com driver da NVIDIA

Patrick Costa da Silva
patrickpcs

(usa Nenhuma)

Enviado em 26/09/2015 - 01:11h

Olá senhores, tenho a necessidade de limitar o FPS das minhas aplicações (jogos) openGL.
Sei que alguns jogos permitem isso, entretanto o Left4Dead2 não permite esse tipo de ajuste.
Andei pesquisando e achei diversas maneiras de fazer essa limitação de FPS no driver da Nvidia no windows, entretanto não encontrei nada para linux, nem mesmo no próprio fórum da nvidia e da steam (google também).

Alguém sabe de alguma forma como limitar? tentei habilitar o Vsync diretamente no Nvidia X server settings mas sem sucesso.

Não quero iniciar uma discussão sobre que mais ou menos FPS é melhor, eu quero é limitar para evitar consumo a mais de energia e calor, visto que uso um notebook.

A gpu é uma GT840M.
Driver -version 346.59
_____________________________________________________
The quiter you become, the more you are able to hear.
-----------------------------------------------------



  


2. Re: Limitar FPS com driver da NVIDIA

Eric
Grinder

(usa Slackware)

Enviado em 26/09/2015 - 13:41h


Posso estar falando bobeira, nunca joguei Left 4 Dead, mas jogos da Valve tem costume de ter "console"
No Steam, aonde ficam seus jogos, aperte o botão direito em cima do Left 4 Dead e vai em Propriedades, na aba "General" você verá lá embaixo "Set Launch Options" clique nessa opção. Dentro dessa opção adicione apenas "-console" sem as aspas.

Ok, ae rode o jogo.
Eu não sei qual engine o Left 4 Dead usa, mas geralmente nas opções do jogo tem a tecla que você possa acessar o console. E no console o comando para limitar FPS pode variar, mas você tentar por fps_max xxx com_maxfps xxx cl_maxfps xxx


3. Re: Limitar FPS com driver da NVIDIA

Patrick Costa da Silva
patrickpcs

(usa Nenhuma)

Enviado em 27/09/2015 - 12:36h

To ligado, vlw pela dica. Já tinha feito isso nos outros jogos como o CS:GO por exemplo, no geral quase todos os jogos que usam a "Source Engine" tem essas opções. Mas você acredita que a valve retirou essa opção(fps_max) do left4dead2? Tem muitas reclamações sobre isso no fórum da steam mas até hoje nada de habilitarem. Por isso estava procurando uma forma de fazer isso diretamente no driver T_T.

Além de me dar agonia ver o jogo batendo 150 fps, gastando energia e esquentando muito. Tem alguma proteção nos drivers da Nvidia, que quando a gpu atinge uma temperatura muito alta, ele trava o clock da gpu em 135mhz e não sobe mais, só se rebootar o sistema. Ai o jogo cai pra 15..20 fps, jogabilidade 0.
_____________________________________________________
The quiter you become, the more you are able to hear.
-----------------------------------------------------



4. Re: Limitar FPS com driver da NVIDIA

Eric
Grinder

(usa Slackware)

Enviado em 27/09/2015 - 14:36h

patrickpcs escreveu:

To ligado, vlw pela dica. Já tinha feito isso nos outros jogos como o CS:GO por exemplo, no geral quase todos os jogos que usam a "Source Engine" tem essas opções. Mas você acredita que a valve retirou essa opção(fps_max) do left4dead2? Tem muitas reclamações sobre isso no fórum da steam mas até hoje nada de habilitarem. Por isso estava procurando uma forma de fazer isso diretamente no driver T_T.

Além de me dar agonia ver o jogo batendo 150 fps, gastando energia e esquentando muito. Tem alguma proteção nos drivers da Nvidia, que quando a gpu atinge uma temperatura muito alta, ele trava o clock da gpu em 135mhz e não sobe mais, só se rebootar o sistema. Ai o jogo cai pra 15..20 fps, jogabilidade 0.
_____________________________________________________
The quiter you become, the more you are able to hear.
-----------------------------------------------------


Então pelo o que estou vendo única solução é você limitar a placa a 60fps pelo vsync



5. Re: Limitar FPS com driver da NVIDIA

Patrick Costa da Silva
patrickpcs

(usa Nenhuma)

Enviado em 27/09/2015 - 17:30h

Isso isso isso isso isso isso.....como faz? Diretamente no driver da Nvidia, do jogo não funciona.
Tentei isso aqui mas não deu...
http://i.imgur.com/S0qRLD8.png
_____________________________________________________
The quiter you become, the more you are able to hear.
-----------------------------------------------------



6. Re: Limitar FPS com driver da NVIDIA

Eric
Grinder

(usa Slackware)

Enviado em 27/09/2015 - 20:54h

patrickpcs escreveu:

Isso isso isso isso isso isso.....como faz? Diretamente no driver da Nvidia, do jogo não funciona.
Tentei isso aqui mas não deu...
http://i.imgur.com/S0qRLD8.png
_____________________________________________________
The quiter you become, the more you are able to hear.
-----------------------------------------------------


Teria que dar pelo jogo. Pois todos os jogos hoje oferece "sincronização vertical"


7. Re: Limitar FPS com driver da NVIDIA

Patrick Costa da Silva
patrickpcs

(usa Nenhuma)

Enviado em 28/09/2015 - 03:43h

Então, não ta funcionando pelo jogo. Quero fazer um override diretamente pelo Nvidia X server settings, alguém tem familiaridade com isso?
_____________________________________________________
The quiter you become, the more you are able to hear.
-----------------------------------------------------



8. Re: Limitar FPS com driver da NVIDIA

Eric
Grinder

(usa Slackware)

Enviado em 28/09/2015 - 14:54h

patrickpcs escreveu:

Então, não ta funcionando pelo jogo. Quero fazer um override diretamente pelo Nvidia X server settings, alguém tem familiaridade com isso?
_____________________________________________________
The quiter you become, the more you are able to hear.
-----------------------------------------------------



Cara do nada me veio uma idéia para seu caso.
Vamos diminuir os clocks da sua placa de vídeo, para isso você precisa adicionar o Coolbits.

Com seu editor preferido em modo root, edite o arquivo /etc/X11/xorg.conf
Veja como está o meu
Section "Device"
Identifier "Device0"
Driver "nvidia"
Option "Coolbits" "12"
VendorName "NVIDIA Corporation"
EndSection


Mas o que você realmente precisa?
Você precisa adicionar apenas a linha
Option         "Coolbits" "12" 


Com essa opção aparecerá opções para overclock/underclock no seu Nvidia Settings
http://postimg.org/image/5a2u6r3j9/

Veja essa foto tirada aqui de como fica essa sessão.



9. Re: Limitar FPS com driver da NVIDIA

Patrick Costa da Silva
patrickpcs

(usa Nenhuma)

Enviado em 29/09/2015 - 09:23h

Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection

Section "Device"
Identifier "intel"
Driver "intel"
BusID "PCI:0@0:2:0"
Option "AccelMethod" "SNA"
EndSection

Section "Screen"
Identifier "intel"
Device "intel"
EndSection

Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:4@0:0:0"
Option "ConstrainCursor" "off"
EndSection

Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
EndSection



Deixei desse jeito a seção device da nvidia.
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:4@0:0:0"
Option "ConstrainCursor" "off"
Option "Coolbits" "12"
EndSection


Não apareceu as opções de ajustes de clocks =/... vou rebootar aqui pra ver.

Entretanto, se eu não conseguir limitar o FPS, acho que vai ser o jeito o underclock.
O problema do underclock, é que eu vou reduzir sim o FPS assim e aquecer menos, evitando assim essa "trava" de segurança da GPU de ficar em 135mhz após certa temperatura. Entretanto nos momentos mais tensos do jogo, com muitos objetos na tela, o fps vai cair mais ainda.

Se encontra-se como limitar (que funciona-se), a GPU seria poupada nos momentos tranquilos, e só seria forçada na extrema necessidade, não aquecendo muito.

PS: Aew boa, apareceu os controles após o reboot. Vou tentar chegar num meio termo aqui.
Mas ainda fico no aguardo de alguém que consiga habilitar pelo menos o vsync diretamente no drive.

PS: seção - espaço físico / sessão - espaço temporal.

A seção desse arquivo que contenha a "option".
A sessão de usuário logado no sistema.

A seção de TI da empresa.
A sessão de cinema. :)
_____________________________________________________
The quiter you become, the more you are able to hear.
-----------------------------------------------------



10. Re: Limitar FPS com driver da NVIDIA

Eric
Grinder

(usa Slackware)

Enviado em 29/09/2015 - 13:10h

Vsync pelo painel da Nvidia somente no Windows.
Vsync pelo Linux somente pelo próprio jogo, até aonde eu sei.
Se bem que, dependendo do Ambiente Gráfico que estiver usando da pra inventar alguma moda. Qual está usando?


Mas acho que um underclock resolverá sua situação.


11. Re: Limitar FPS com driver da NVIDIA

Patrick Costa da Silva
patrickpcs

(usa Nenhuma)

Enviado em 30/09/2015 - 12:17h

Estou usando o gnome 3.

Bem, estou tendo dificuldades nos ajustes dos clocks, eu insiro um valor qualquer (sempre para baixo...underclock né) mas sempre que dou enter no valor de clock da memória o note trava.
Estou procurando mais documentações a respeito dessas opções do coolbits, para que cada valor altera alguns controles relacionados a ajustes manuais da GPU.

Estou recebendo uma atualização agora para o driver 346.96, estou um pouco atarefado mas vou continuar tentando e dando feedbacks ;)

Obrigado pelo apoio constante cara :)

http://i.imgur.com/Yad2idu.jpg
Se eu setar qualquer valor no clock da memória trava....e mesmo após setar algo no clock da GPU e ajuste não é efetuado =/

EDIT: NOOOSSS, agora que entendi como funciona esse troço... tem que informar o quanto quero que seja reduzido, e não o valor que eu quero que fique. -.-'''' "q buro" XD


EDIT: É, o máximo que deu para reduzir. Vou procurar o google, mas por acaso vc sabe se tem como reduzir valores maiores que esses pré definidos pelo Nvidia Settings? Esse underclock foi pouco, reduziu apenas 10 fps.... 160 para 150 =/
http://i.imgur.com/jISvvT6.png

EDIT: com o comando nvidia-settings fiz uma query para saber os valores das configurações...encontrei algumas interessantes na "GPUperfModes"
patrick@X550LN:~$ nvidia-settings -q GPUperfmodes

Attribute 'GPUPerfModes' (X550LN:0.0): perf=0, nvclock=135, nvclockmin=135, nvclockmax=405, nvclockeditable=0, memclock=405, memclockmin=405, memclockmax=405, memclockeditable=0, memTransferRate=810,
memTransferRatemin=810, memTransferRatemax=810, memTransferRateeditable=0 ; perf=1, nvclock=135, nvclockmin=135, nvclockmax=989, nvclockeditable=0, memclock=800, memclockmin=800, memclockmax=800,
memclockeditable=0, memTransferRate=1600, memTransferRatemin=1600, memTransferRatemax=1600, memTransferRateeditable=0 ; perf=2, nvclock=135, nvclockmin=135, nvclockmax=989, nvclockeditable=1, memclock=800,
memclockmin=800, memclockmax=800, memclockeditable=1, memTransferRate=1600, memTransferRatemin=1600, memTransferRatemax=1600, memTransferRateeditable=1
Attribute 'GPUPerfModes' (X550LN:0[gpu:0]): perf=0, nvclock=135, nvclockmin=135, nvclockmax=405, nvclockeditable=0, memclock=405, memclockmin=405, memclockmax=405, memclockeditable=0, memTransferRate=810,
memTransferRatemin=810, memTransferRatemax=810, memTransferRateeditable=0 ; perf=1, nvclock=135, nvclockmin=135, nvclockmax=989, nvclockeditable=0, memclock=800, memclockmin=800, memclockmax=800,
memclockeditable=0, memTransferRate=1600, memTransferRatemin=1600, memTransferRatemax=1600, memTransferRateeditable=0 ; perf=2, nvclock=135, nvclockmin=135, nvclockmax=989, nvclockeditable=1, memclock=800,
memclockmin=800, memclockmax=800, memclockeditable=1, memTransferRate=1600, memTransferRatemin=1600, memTransferRatemax=1600, memTransferRateeditable=1

patrick@X550LN:~$


Será que usando a opção -a consigo aumentar esse range de ajuste dos clocks?


To fugindo um pouco do assunto do post até, mas caso não encontremos alguma maneira de um vsync ou limitar o fps a 60 mesmo...vai ser o jeito.
_____________________________________________________
The quiter you become, the more you are able to hear.
-----------------------------------------------------



12. Re: Limitar FPS com driver da NVIDIA

Eric
Grinder

(usa Slackware)

Enviado em 30/09/2015 - 13:24h

hehe
Bom, você já conseguiu reduzir os clocks bom sinal, pena que não resolveu.

Na verdade esse jogo ta me parecendo CPU Bound ou seja, dependente de processador, tanto que você pode reduzir a VGA que o desempenho ainda continua alto pra caramba, mas isso é características dos jogos da Valve, sempre ser CPU Bound.

Já que você está no gnome3, por curiosidade, vem com Gnome Classic imbutido? Se vier, altere para Gnome Classic e tente usar o vsync do do jogo novamente.



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts