MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0023069Open CASCADE[OCCT] OCCT:Visualizationpublic2012-04-04 17:532012-10-02 14:58
Reporterkgv 
Assigned Tokgv 
PrioritynormalSeverityminor 
StatusclosedResolutionfixed 
PlatformAOSLOS VersionL
Product Version[OCCT] 6.5.3 
Target Version[OCCT] 6.5.3Fixed in Version[OCCT] 6.5.3 
Summary0023069: OpenGL state extraction for GL_RENDER_MODE significantly impact performance
DescriptionCurrently GL_RENDER_MODE checked in TKOpenGl routines (text rendering, primitive arrays rendering, markers rendering) to perform special code for gl2ps export.

This is determined that these OpenGL state extractions per rendered object significantly impact overall rendering performance - make it more CPU-bound.

Because gl2ps export is still desired this is suggested to cache GL_RENDER_MODE state at frame redrawing beginning.
Steps To ReproduceTo reproduce problem this is required to render number of simple objects to reach CPU performance limit on current station.

Commenting out 'glGetIntegerv (GL_RENDER_MODE, &renderMode);' calls reduce CPU usage.

On tested platform (Windows 7, GeForce GT240) CPU-limit reached within 1k boxes:

pload VISUALIZATION
pload MODELING
vinit
for {set anInter 1} {$anInter <= 1000} {incr anInter} {box b${anInter} [expr $anInter * 20] 0 0 10 20 30; vdisplay b${anInter}; }
vfit
vfps

Notice that this script requires vfps command introduced by #23065.
The actual results are current OCCT version:
FPS: 40.961348099055449
CPU: 26.988172999999982 msec

Commented GL_RENDER_MODE calls:
FPS: 59.906130822034626
CPU: 17.472111999999989 msec
TagsNo tags attached.
Test case numberchl 934 Y9
Attached Files? file icon Y9 (1,855 bytes) 2012-04-09 15:57

- Relationships
related to 0023457closedkgv Community Slow text rendering 

-  Notes
(0020288)
kgv (developer)
2012-04-06 12:33

Patch is ready for review in branch CR23069.

Please notice that text rendering functionality leaved untouched due to different design (should be fixed within text rendering total reworking).
(0020295)
san (developer)
2012-04-06 17:07

CR23069 reviewed without remarks, ready for testing.
(0020310)
mkv (tester)
2012-04-09 15:59

Dear BugMaster,
Workbench KAS:dev:mkv-23069-occt was created from git branch CR23069
(and mkv-23069-products from svn trunk) and compiled on Linux platform.

Test case for this bug is chl/934/Y9. It is OK.

There are not regressions in mkv-23069-products regarding to KAS:dev:products-20120330-opt

See results in /QADisk/occttests/results/KAS/dev/mkv-23069-products_06042012/lin
See reference results in /QADisk/occttests/results/KAS/dev/products-20120330-opt_30032012/lin
See test cases in /QADisk/occttests/tests/ED
N.B. In order to launch testing case you can make use the following instructions
http://doc/doku.php?id=occt:certification [^]

- Related Changesets
occt: master 664cae74
Timestamp: 2012-04-12 08:25:07
Author: kgv
Details ] Diff ]
0023069: Cache GL_FEEDBACK mode per frame in TKOpenGl calls
mod - src/OpenGl/OpenGl_Context.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_Context.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_Marker.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_MarkerSet.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_PrimitiveArray.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_Workspace_4.cxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2012-04-04 17:53 kgv New Issue
2012-04-04 17:53 kgv Assigned To => san
2012-04-06 12:31 kgv Assigned To san => kgv
2012-04-06 12:33 kgv Note Added: 0020288
2012-04-06 12:33 kgv Assigned To kgv => san
2012-04-06 12:33 kgv Status new => resolved
2012-04-06 17:07 san Note Added: 0020295
2012-04-06 17:07 san Assigned To san => bugmaster
2012-04-06 17:07 san Status resolved => reviewed
2012-04-06 17:54 mkv Assigned To bugmaster => mkv
2012-04-09 15:57 mkv File Added: Y9
2012-04-09 15:59 mkv Note Added: 0020310
2012-04-09 16:00 mkv Test case number => chl 934 Y9
2012-04-09 16:00 mkv Assigned To mkv => bugmaster
2012-04-09 16:00 mkv Status reviewed => tested
2012-04-11 09:43 abv Target Version 6.5.4 => 6.5.3
2012-04-13 11:32 kgv Changeset attached => occt master 664cae74
2012-04-13 11:33 kgv Assigned To bugmaster => kgv
2012-04-13 11:33 kgv Status tested => verified
2012-04-13 11:33 kgv Resolution open => fixed
2012-10-02 14:58 Pawel Relationship added related to 0023457


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker