web-dev-qa-db-fra.com

Pourquoi primusrun est-il plus lent qu'optirun?

Quelqu'un pourrait-il s'il vous plaît expliquer ces résultats? Est-ce que primusrun est trop intelligent pour glxspheres et ne fait tout simplement pas un travail supplémentaire?

...:~$ glxspheres
Polygons in scene: 62464
Visual ID of window: 0xaf
Context is Direct
OpenGL Renderer: Mesa DRI Intel(R) Ivybridge Mobile 
59.811274 frames/sec - 66.749382 Mpixels/sec
59.577921 frames/sec - 66.488960 Mpixels/sec
59.791245 frames/sec - 66.727029 Mpixels/sec
59.723333 frames/sec - 66.651240 Mpixels/sec
...:~$ optirun glxspheres
Polygons in scene: 62464
Visual ID of window: 0x21
Context is Direct
OpenGL Renderer: Quadro K1000M/PCIe/SSE2
190.833067 frames/sec - 212.969703 Mpixels/sec
209.895160 frames/sec - 234.242999 Mpixels/sec
207.980413 frames/sec - 232.106141 Mpixels/sec
...:~$ primusrun glxspheres
Polygons in scene: 62464
Visual ID of window: 0xaf
Context is Direct
OpenGL Renderer: Quadro K1000M/PCIe/SSE2
61.001631 frames/sec - 68.077820 Mpixels/sec
59.677170 frames/sec - 66.599722 Mpixels/sec
59.715808 frames/sec - 66.642842 Mpixels/sec

Ubuntu 12.04 x64, Lenovo W530 avec Intel i7 à 2,8 GHz

9
VF1

De Primus FAQ :

Q: Performance does not exceed 60 fps, I was getting more with optirun/VirtualGL.
A: This is the effect of vblank synchronisation. For benchmarking, you can use 
   vblank_mode=0 primusrun ..., but in practice this will probably only 
   waste power, as your LCD panel does not display more than 60 frames 
   per second anyway.
17
Salem