<div dir="ltr"><div dir="ltr">Hello all,<div><br></div><div>I'm running into a strange performance drop issue when using dynamic VBOs that change frequently. I am measuring performance using framerate with vsync turned off. I know that framerate isn't always the best performance measurement, but my example is simple enough and the performance drop is significant and repeatable, so I feel comfortable using framerate. </div><div><br></div><div>The issue: Suppose I have a Geometry that will hold lots of points (e.g. 100k or more). If I choose to pre-define all points in its vertex array, then a certain framerate is achieved. However, if I choose to add a batch of points during each update traversal, up to the same total number of points, then after all points have been added the framerate is much lower than in the pre-defined model. Note that "much lower" means over 30% lower.<br></div><div><br></div><div>Note that in both cases, the same number of points are being drawn, and the Geometry and its vertex array are created once and modified (I'm not creating new Geometry objects at every update). All that changes is whether I added the points all at once before rendering or a few at a time while rendering.</div><div><br></div><div>I wrote a small standalone osg example (attached). Compile, run, and show stats using:</div><div>> .\osgdynamicvbotest.exe --numPoints 100000 --batchSize 100000</div><div>   * If batchSize = 100000 (same as numPoints) then you'll see the case where all points are pre-defined.</div><div>   * As you reduce batchSize (e.g. 100), it will take longer to add the total number of points, but after all points have been added and the framerate stabilizes, you'll see it is much lower than the pre-defined case above.</div><div><br></div><div>My question is, why is this happening? Is it related to intermediate VBOs being kept in memory and slowing down the GPU? All the other forum posts I see on the topic are either about VBOs not displaying properly (not the case here) or about memory usage (not the case here). </div><div> <br></div><div>Any thoughts on what's going on here would be very much appreciated.</div><div><br></div><div>Thank you!</div><div>Ravi</div></div></div>