<div dir="ltr"><div><br></div>Found the culprit for my performance woes. The nvidia driver's GLX module for Xorg was likely overwritten by an update to xorg. This caused the GLX module initialisation to fail and the following lines to appear in the log file.<br><div><br>[   873.392] (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X<br>[   873.392] (EE) NVIDIA(0):     log file that the GLX module has been loaded in your X<br>[   873.392] (EE) NVIDIA(0):     server, and that the module is the NVIDIA GLX module.  If<br>[   873.392] (EE) NVIDIA(0):     you continue to encounter problems, Please try<br>[   873.392] (EE) NVIDIA(0):     reinstalling the NVIDIA driver.<br><br>[   874.171] (II) AIGLX: Screen 0 is not DRI2 capable<br>[   874.171] (EE) AIGLX: reverting to software rendering<br>[   874.177] (II) AIGLX: Loaded and initialized swrast<br>[   874.177] (II) GLX: Initialized DRISWRAST GL provider for screen 0<br><br>The OpenGL system therefore reverted to software rasterization.<br><br></div><div>What I do not understand is why the command "glxinfo" kept showing NVIDIA Corporation as vendor for OpenGL in this case.<br><br></div><div>After reinstalling the nVidia driver, my draw times for the terrain tile are in the range of 0.2 ms. Yay. In your face, Intel.<br></div><div><br></div><div>Christian<br><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-09-17 16:05 GMT+02:00 Christian Buchner <span dir="ltr"><<a href="mailto:christian.buchner@gmail.com" target="_blank">christian.buchner@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Hi all,<br><br></div>I am loading a single osg::TerrainTile into my scenegraph, as a child of an osg::Terrain. Into this tile goes a height field and one image layer.<br><br>I have got around 80k vertices and 157k triangles in a single drawable that is marked as a "fast" drawable in the OSG stats handler (shown by using the s hotkey)<br><br></div><div>While this application runs butter smooth on Intel integrated graphics (60 FPS), I am experiencing somewhat of a mystery slowdown on nVidia GTX 970 and an nVidia GT 750M.<br></div><div><br>5 FPS and draw times of 170ms upwards on the 750M for example.<br>This is on Ubuntu 12.4 with nVidia driver 331.113<br><br></div><div>10 FPS and draw times of 78ms upwards on the GTX 970M.<br></div><div>This is on Ubuntu 12.4 with nVidia driver 346.46<br><br></div><div>The geometry created by src/osgTerrain/GeometryTechnique disables display lists and uses vertex buffer objects. It's referencing a vertex buffer using a single osg::DrawElementsUInt(GL_TRIANGLES).<br><br></div><div>The slowdown is a mystery. Any ideas what might be going on here? Why would the nVidia driver be hitting such a slow code path? In terms of geometry complexity, 80k vertices and 157k triangles is a joke even for today's entry level GPUs.<br><br></div><div>Let me know if you need some code for repro'ing.<span class="HOEnZb"><font color="#888888"><br></font></span></div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Christian<br><br></div><div><br></div><div><br></div><div><br></div></font></span></div>
</blockquote></div><br></div>