一直用 optirun 都比直接跑帧数多,网上说有个垂直的开启了,会限制。我设置为 0 启动,结果很诧异。感觉折腾双显卡白折腾了,intel 的就足够我挥霍的了。nvdia 的还是让他睡觉省电吧。
设置为 0 的 optirun 结果
dushibaiyu@dushibaiyu:~> vblank_mode=0 opritun glxspheres
If 'opritun' is not a typo you can use command-not-found to lookup the package that contains it, like this:
cnf opritun
dushibaiyu@dushibaiyu:~> vblank_mode=0 oprtirun glxspheres
If 'oprtirun' is not a typo you can use command-not-found to lookup the package that contains it, like this:
cnf oprtirun
dushibaiyu@dushibaiyu:~> vblank_mode=0 optirun glxspheres
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
Visual ID of window: 0x20
Context is Direct
OpenGL Renderer: GeForce 940M/PCIe/SSE2
129.442706 frames/sec - 144.458059 Mpixels/sec
130.035592 frames/sec - 145.119721 Mpixels/sec
130.966152 frames/sec - 146.158226 Mpixels/sec
130.473979 frames/sec - 145.608960 Mpixels/sec
130.902299 frames/sec - 146.086965 Mpixels/sec
130.869670 frames/sec - 146.050552 Mpixels/sec
不设置的结果,对于 optirun 没啥区别:
dushibaiyu@dushibaiyu:~> optirun glxspheres
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
Visual ID of window: 0x20
Context is Direct
OpenGL Renderer: GeForce 940M/PCIe/SSE2
125.496948 frames/sec - 140.054594 Mpixels/sec
126.587835 frames/sec - 141.272023 Mpixels/sec
126.954855 frames/sec - 141.681618 Mpixels/sec
127.989015 frames/sec - 142.835740 Mpixels/sec
127.947272 frames/sec - 142.789156 Mpixels/sec
128.185123 frames/sec - 143.054597 Mpixels/sec
128.447036 frames/sec - 143.346892 Mpixels/sec
128.131564 frames/sec - 142.994826 Mpixels/sec
primusrun 设置后的结果,几乎就和 optirun 差不多了:
dushibaiyu@dushibaiyu:~> vblank_mode=0 primusrun glxspheres
ATTENTION: default value of option vblank_mode overridden by environment.
ATTENTION: default value of option vblank_mode overridden by environment.
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
ATTENTION: default value of option vblank_mode overridden by environment.
ATTENTION: default value of option vblank_mode overridden by environment.
Visual ID of window: 0xb3
Context is Direct
OpenGL Renderer: GeForce 940M/PCIe/SSE2
ATTENTION: default value of option vblank_mode overridden by environment.
ATTENTION: default value of option vblank_mode overridden by environment.
176.803440 frames/sec - 197.312638 Mpixels/sec
176.424224 frames/sec - 196.889434 Mpixels/sec
176.240721 frames/sec - 196.684645 Mpixels/sec
177.102877 frames/sec - 197.646811 Mpixels/sec
177.246194 frames/sec - 197.806752 Mpixels/sec
177.676338 frames/sec - 198.286793 Mpixels/sec
如果不设置就和 intel 的不设置一样,都是压到 60 执行:
dushibaiyu@dushibaiyu:~> primusrun glxspheres
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
Visual ID of window: 0xb3
Context is Direct
OpenGL Renderer: GeForce 940M/PCIe/SSE2
62.170228 frames/sec - 69.381975 Mpixels/sec
60.016050 frames/sec - 66.977912 Mpixels/sec
60.010373 frames/sec - 66.971576 Mpixels/sec
60.016554 frames/sec - 66.978474 Mpixels/sec
让我震惊的是这个设置后的 intel 集显的威力,i7-4710MQ 的 CPU
dushibaiyu@dushibaiyu:~> vblank_mode=0 glxspheres
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
ATTENTION: default value of option vblank_mode overridden by environment.
ATTENTION: default value of option vblank_mode overridden by environment.
Visual ID of window: 0xb3
Context is Direct
OpenGL Renderer: Mesa DRI Intel(R) Haswell Mobile
315.125130 frames/sec - 351.679646 Mpixels/sec
236.575616 frames/sec - 264.018388 Mpixels/sec
237.338023 frames/sec - 264.869234 Mpixels/sec
238.901035 frames/sec - 266.613555 Mpixels/sec
239.224917 frames/sec - 266.975007 Mpixels/sec
如果不设置,还是被压到 60:
dushibaiyu@dushibaiyu:~> glxspheres
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
Visual ID of window: 0xb3
Context is Direct
OpenGL Renderer: Mesa DRI Intel(R) Haswell Mobile
61.216860 frames/sec - 68.318015 Mpixels/sec
60.008762 frames/sec - 66.969779 Mpixels/sec
59.999539 frames/sec - 66.959486 Mpixels/sec
60.009649 frames/sec - 66.970768 Mpixels/sec
60.021941 frames/sec - 66.984487 Mpixels/sec
59.961530 frames/sec - 66.917067 Mpixels/sec
60.080968 frames/sec - 67.050360 Mpixels/sec
59.880526 frames/sec - 66.826667 Mpixels/sec
60.149619 frames/sec - 67.126975 Mpixels/sec
60.003065 frames/sec - 66.963421 Mpixels/sec
59.955430 frames/sec - 66.910260 Mpixels/sec
60.018279 frames/sec - 66.980399 Mpixels/sec
59.996915 frames/sec - 66.956557 Mpixels/sec
60.072583 frames/sec - 67.041003 Mpixels/sec
在 intel 里面能达到 230+,而 nvdia 最多也不到 180。