STEAM GROUP
Linux Nvidia Optimus Users LinuxOptimus
STEAM GROUP
Linux Nvidia Optimus Users LinuxOptimus
9
IN-GAME
67
ONLINE
Founded
19 November, 2012
All Discussions > Tips and Tricks > Topic Details
Bubba 30 Dec, 2012 @ 3:41am
Squeeze Some Moar FPS's @ Higher Settings!!!
So I've been messing with the conf files for Bumblebee and Primurun lately. So far I've been able to increas my FPS's, while increasing my AA settings, and reducing my screen tearing. Here's what I've been messing with hopefully you guys may beable to duplicate some of my results.

First off I went in and messed with compression of the images from the DGPU (Descrete GPU, Nvidia) to the IGPU (Integrated GPU). The images on our screens is drawn by creating the image on the dgpu, compressing it, then sending it throught the cpu to be uncompressed and then on to the igpu, where it then reaches our screen. What I did was mess with was the compression between the dgpu and the proccessor. (Note: This may not help everyone, I have a good gpu, but a better cpu that can unfold the compression without compremising performance)

In /etc/bumblebee/bumblebee.conf on line 25 it starts to talk about "The method used for VirtualGL to transport frames between X servers." then it list the possible values. After much in game testing with Linux native games (TF2), games in wine (CS:GO), and just running glxspheres I was able to determine that "yuv" gave me .3-10FPS better performance over the stock setting of "proxy". Again depending on your setup this may not help, or another setting may be better

The second thing that I did was change the buffering of Primus. I was reading through the threads on Github, and the developer recomended some one change this setting due to running into droped frames in games ran in wine. Aparently primus does so little buffering that it just sends the frames as soon as they are "ready" but wine takes that extra nano second to draw things sometimes which can lead to this. But this also has an adverse affect on FXAA and MSAA settings sine the dgpu cant take the extra time to draw that extra detail.

What I did was go into /usr/bin/primusrun and on line 5 change the "# export PRIMUS_SYNC=" from ${PRIMUS_SYNC:-0} to ${PRIMUS_SYNC:-1}. This waits that extra nano second to sync everything then send it on its way.

I was already running TF2 at the max settings, but I did see some extra FPS's in that game. But in CS:GO I was able to change the FXAA and the MSAA settings from none to max, with out loosing any FPS's. And of course gained quite a few when I didn't (from 30 to 50). This also reduced a good chunk of my screen tearing in all games. NOTE: I didn't change the setting to 2, which fully syncs the frames, I found that in my in game testing this lagged the game a few frames behind what my mouse was doing.

Lets see what you guys think.
Here's a bit about my setup:
Nvidia GT 650M
Intel i7 3615QM w/ Intel HD 4000
8 GB DDR3 RAM
All Discussions > Tips and Tricks > Topic Details