]> OCCT Git - occt-copy.git/commit
0026199: Visualization - use NCollection_IndexedMap instead of NCollection_Sequence...
authordbp <dbp@opencascade.com>
Thu, 21 May 2015 11:30:38 +0000 (14:30 +0300)
committerabv <abv@opencascade.com>
Fri, 21 Aug 2015 07:59:06 +0000 (10:59 +0300)
commitb34ca169359b020b2bc4fa596d5e52973c960f5d
tree3938dd087c346280fcec41c7f9c8961e985a5256
parentc8dad3b06c1bcefcc3ba3483d3afb012251013bc
0026199: Visualization - use NCollection_IndexedMap instead of NCollection_Sequence in OpenGl_BVHClipPrimitiveSet to improve performance

This patch improves performance of OpenGl_BVHClipPrimitiveSet. In particular, on the attached test case for 90 000 spheres the results are the following:

1) Master: vdisplay - 55 sec, 5 FPS, 1.4 GB memory, vclear - 180 sec.
2) Branch: vdisplay - 1.3 sec, 5 FPS, 1.4 GB memory, vclear - 90 sec.

So, the patch improves vdisplay in ~40 times, and vclear in ~2 times without extra memory and with no impact on rendering performance. However, the vclear time is still significant. According to profile results, it is due to Graphic3d_Structure::DisconnectAll method.

Test case for issue CR26199

Fix invalid warnings in 'vdefaults' command.
src/OpenGl/OpenGl_BVHClipPrimitiveSet.cxx
src/OpenGl/OpenGl_BVHClipPrimitiveSet.hxx
src/ViewerTest/ViewerTest_ViewerCommands.cxx
tests/bugs/vis/bug26199 [new file with mode: 0644]