glxgears SLOWER with nvidia vector card when full-screen

Hi everyone !

something weird happens on my PC:

when I enlarge th glxgears window (full screen) my nvidia card results in a slower frame rate than the humble internal
intel graphics controller:

This is what I got:

mimis@goldberg:~/learning/aster/contact/cnt1$ inxi -G
Graphics:  Card-1: Intel 3rd Gen Core processor Graphics Controller 
           Card-2: NVIDIA Device 1212 
           X.Org: 1.13.2 drivers: intel (unloaded: fbdev,vesa) Resolution: 1920x1080@60.0hz 
           GLX Renderer: Mesa DRI Intel Ivybridge Mobile GLX Version: 3.0 Mesa 9.0.2
mimis@goldberg:~/learning/aster/contact/cnt1$ optirun inxi -G
Graphics:  Card-1: Intel 3rd Gen Core processor Graphics Controller                                                                                                  
           Card-2: NVIDIA Device 1212                                                                                                                                
           X.Org: 1.13.2 drivers: intel (unloaded: fbdev,vesa) Resolution: 1920x1080@60.0hz                                                                          
           GLX Renderer: GeForce GTX 675M/PCIe/SSE2 GLX Version: 4.4.0 NVIDIA 334.21

and this what I get when I run glxgears fullscreen (optirun glxgears produces a visibly shacking result):

mimis@goldberg:~/learning/aster/contact/cnt1$ glxgears
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
303 frames in 5.0 seconds = 60.490 FPS
300 frames in 5.0 seconds = 59.982 FPS
300 frames in 5.0 seconds = 59.994 FPS
300 frames in 5.0 seconds = 59.985 FPS
300 frames in 5.0 seconds = 59.989 FPS
mimis@goldberg:~/learning/aster/contact/cnt1$ optirun glxgears
2199 frames in 5.0 seconds = 436.606 FPS
172 frames in 5.0 seconds = 34.220 FPS
181 frames in 5.0 seconds = 36.168 FPS
 

why is this happening? where should I start looking?

best regards to everyone

m

hi m,

observation

glxgears measures the frames it can draw in the window it occupies,
hence the smaller the window the higher the output figure,
the larger the window the small the figure.

the figure produced should be inversely proportional to the pixels
it has to update

have fun

Well can have many causes I don’t have a hybrid graphics machine and my old 6800+ NVIDIA card is dated
This is with sync to vertical off


gogalthorp@linux1:~> glxgears
12874 frames in 5.0 seconds = 2574.723 FPS
13048 frames in 5.0 seconds = 2609.283 FPS
11636 frames in 5.0 seconds = 2327.125 FPS
7532 frames in 5.0 seconds = 1505.424 FPS
2221 frames in 5.0 seconds = 443.999 FPS
2100 frames in 5.0 seconds = 419.674 FPS
1957 frames in 5.0 seconds = 391.276 FPS
1977 frames in 5.0 seconds = 395.392 FPS



This is with sync to vertical on


gogalthorp@linux1:~> glxgears
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
301 frames in 5.0 seconds = 60.097 FPS
300 frames in 5.0 seconds = 59.899 FPS
300 frames in 5.0 seconds = 59.903 FPS
300 frames in 5.0 seconds = 59.846 FPS
300 frames in 5.0 seconds = 59.902 FPS
300 frames in 5.0 seconds = 59.953 FPS
300 frames in 5.0 seconds = 59.887 FPS


You can see where I switched to full screen in the no sync to vert example. You can’t in the sync to vert example

You can switch the settings in the nvidia-settings program

Don’t know how to switch settings for the Intel. Sure you can someplace :wink:

Also in a hybrid system the rendering is actually done by the Intel It is what makes Intel+NVIDIA such an odd bastardized system