View Issue Details

IDProjectCategoryView StatusLast Update
0029346Open CASCADEOCCT:Visualizationpublic2020-06-02 17:01
Reporterkgv Assigned Tobugmaster  
PrioritynormalSeverityfeature 
Status closedResolutionfixed 
Target Version7.3.0Fixed in Version7.3.0 
Summary0029346: Visualization, TKOpenGl - collect frame statistics
DescriptionFor performance analysis it is desired having some tools collecting statistics internally in TKOpenGl.
Although many measurements can be done using external tools or at application level, having statistics in terms of OCCT structures might be more useful for analysis.
Steps To Reproduce
source $env(CSF_OCCTSamplesPath)/tcl/spheres.tcl
vrenderparams -perfcounters extra
TagsNo tags attached.
Test case numberNot required

Attached Files

  • occt_stats3.png (175,100 bytes)

Relationships

parent of 0029365 closedbugmaster Open CASCADE Visualization, TKOpenGl - do not include hidden structures to Rendered within frame statistics 
parent of 0030135 closedapn Open CASCADE Visualization, TKOpenGl - frame statistics do not include information about instanced structures 
parent of 0031394 closedbugmaster Open CASCADE Visualization, TKOpenGl - define OpenGl_Element::EstimatedDataSize() interface 
parent of 0031588 closedbugmaster Open CASCADE Visualization, TKOpenGl - display immediate updates in brackets within frame stats 
related to 0029366 closedbugmaster Open CASCADE Visualization, OpenGl_Text - artifacts when using Aspect_TODT_SHADOW/Aspect_TODT_DEKALE at different zoom level 

Activities

git

2017-11-28 01:48

administrator   ~0072509

Branch CR29346 has been created by kgv.

SHA-1: 0b15d5897b333623244ad8b4f7fac83e9e1a6dfd


Detailed log of new commits:

Author: kgv
Date: Mon Nov 27 23:07:31 2017 +0300

    0029346: Visualization, TKOpenGl - collect frame statistics
    
    Graphic3d_RenderingParams::ToShowStats - new option displaying rendering statistics.
    
    OpenGl_FrameStats - new class for accumulating frame statistics.
    OpenGl_Context::FrameStats() provides an access to the frame stats
    used for currently rendered context.
    OpenGl_View::Redraw() and OpenGl_View::RedrawImmediate()
    resets counters within OpenGl_Context::FrameStats().
    
    OSD_Chronometer - added methods UserTimeCPU() and SystemTimeCPU(),
    more straightforward getters for chronometer values.
    OSD_Timer constructor now takes theThisThreadOnly argument passed to OSD_Chronometer.
    
    Aspect_TODT_SHADOW - added new text style to Aspect_TypeOfDisplayText enumeration,
    so that OpenGl_Text will draw a tiny shadow at right-bottom corner
    (less distinctly than Aspect_TODT_DEKALE).

git

2017-11-28 01:52

administrator   ~0072510

Branch CR29346 has been updated forcibly by kgv.

SHA-1: d93c5594af25bbc815f074d98edc70b5ef2e3480

git

2017-11-28 14:14

administrator   ~0072533

Branch CR29346 has been updated forcibly by kgv.

SHA-1: 1fa65cbc991f201f94bb01d7baa29f5b30cf65e4

git

2017-11-28 14:22

administrator   ~0072534

Branch CR29346 has been updated forcibly by kgv.

SHA-1: 6243b090c4bfb15b2c34f6890233b5b4b9e67ddb

git

2017-11-28 14:44

administrator   ~0072536

Branch CR29346_1 has been created by kgv.

SHA-1: e067144826cf24ba5bd19f808db5ce6603fa6d72


Detailed log of new commits:

Author: kgv
Date: Fri Nov 24 18:43:01 2017 +0300

    0029346: Visualization, TKOpenGl - collect frame statistics
    
    Graphic3d_RenderingParams::ToShowStats - new option displaying rendering statistics.
    
    OpenGl_FrameStats - new class for accumulating frame statistics.
    OpenGl_Context::FrameStats() provides an access to the frame stats
    used for currently rendered context.
    OpenGl_View::Redraw() and OpenGl_View::RedrawImmediate()
    resets counters within OpenGl_Context::FrameStats().
    
    OpenGl_Layer::UpdateCulling() - simplified resetting of culling state for cullable structures.

git

2017-11-28 14:45

administrator   ~0072537

Branch CR29346 has been updated forcibly by kgv.

SHA-1: 8700231947bf6541e84ea7aa7825e352d88ad4e9

kgv

2017-11-28 14:52

developer   ~0072538

Last edited: 2017-11-29 14:58

Patch is ready for review (in branch CR29346_2).

http://jenkins-test-10.nnov.opencascade.com/view/CR29346_2-CR29346_2-KGV/

git

2017-11-28 15:49

administrator   ~0072541

Branch CR29346_1 has been updated forcibly by kgv.

SHA-1: 167d4d17c7daad31f97cab67aad781319012b566

git

2017-11-28 16:39

administrator   ~0072545

Branch CR29346_1 has been updated forcibly by kgv.

SHA-1: b828eddbde02a614b3a3e74a876d6bffdb48e500

git

2017-11-28 21:17

administrator   ~0072548

Branch CR29346 has been updated forcibly by kgv.

SHA-1: 571cd114c764da75fe1be2b61ed34a8af520dbe9

git

2017-11-28 21:18

administrator   ~0072549

Branch CR29346_2 has been created by kgv.

SHA-1: 848cae7a803fdcfa87223c4ab21fe165c740924c


Detailed log of new commits:

Author: kgv
Date: Fri Nov 24 18:43:01 2017 +0300

    0029346: Visualization, TKOpenGl - collect frame statistics
    
    Graphic3d_RenderingParams::ToShowStats - new option displaying rendering statistics.
    
    OpenGl_FrameStats - new class for accumulating frame statistics.
    OpenGl_Context::FrameStats() provides an access to the frame stats
    used for currently rendered context.
    OpenGl_View::Redraw() and OpenGl_View::RedrawImmediate()
    resets counters within OpenGl_Context::FrameStats().
    
    OpenGl_Layer::UpdateCulling() - simplified resetting of culling state for cullable structures.

git

2017-11-28 21:43

administrator   ~0072550

Branch CR29346 has been updated forcibly by kgv.

SHA-1: 121efc07343cd8b3c12fff2d2f10b5f194959485

git

2017-11-28 21:53

administrator   ~0072554

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: 1fcad76764d802b9e00876046973ab8fea26ddd1

git

2017-11-28 23:57

administrator   ~0072555

Branch CR29346 has been updated forcibly by kgv.

SHA-1: 3f42219c7e617e4545882773007a73567cdfec82

git

2017-11-28 23:58

administrator   ~0072556

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: a2f822f8debe753d77c1e0d101f85a2610586b66

git

2017-11-29 01:37

administrator   ~0072558

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: 751b7f9ef2dbf180990201203f5a54f0aaf44bb1

git

2017-11-29 08:41

administrator   ~0072559

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: c767770151db6b60a44a0089afe2565bb7756429

git

2017-11-29 08:47

administrator   ~0072560

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: a9d34c3602a691d38c989e0f7a8e7fe4806411ee

git

2017-11-29 11:17

administrator   ~0072564

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: b2ec6cadd935f3ce7fa6a07d2e54f2acf30dd977

git

2017-11-29 11:33

administrator   ~0072565

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: 0aa394375aab4ee9714cc4af58ad3b61c0bb5317

git

2017-11-29 11:40

administrator   ~0072566

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: 0cdbaf9139eb3c0ac13f0d54035cde9fc03cddbc

git

2017-11-29 11:59

administrator   ~0072567

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: 84f29cad43dceb7349dbbe8870ca3e3ddba69b87

git

2017-11-29 12:01

administrator   ~0072568

Branch CR29346_2 has been updated forcibly by kgv.

SHA-1: d380d37e5630176a6285983f4225cd1b00d72a04

git

2017-11-29 12:08

administrator   ~0072570

Branch CR29346 has been updated forcibly by kgv.

SHA-1: 279e52ac538ea3b3661d2433506e5c2b3ef0ee58

kgv

2017-11-29 12:18

developer  

occt_stats3.png (175,100 bytes)

san

2017-12-01 15:16

developer   ~0072654

Branch CR29346_2 in occt and occt-products reviewed without remarks, ready for testing.

bugmaster

2017-12-01 15:26

administrator   ~0072657

Combination -
OCCT branch : CR29346_2 SHA - a9d34c3602a691d38c989e0f7a8e7fe4806411ee
Products branch : CR29346_2 SHA - c711e3ae5e778220a36c88e4f9dd10b8fe50a7ed
was compiled on Linux, MacOS and Windows platforms and tested on optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian70-64:
OCCT
Total CPU difference: 19954.75000000054 / 19837.270000000357 [+0.59%]
Products
Total CPU difference: 8024.5000000000755 / 8039.350000000084 [-0.18%]
Windows-64-VC10:
OCCT
Total CPU difference: 17995.854157298607 / 17832.614710898575 [+0.92%]
Products
Total CPU difference: 8054.362830199943 / 8019.621407499985 [+0.43%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

git

2017-12-07 21:08

administrator   ~0072826

Branch CR29346 has been deleted by kgv.

SHA-1: 279e52ac538ea3b3661d2433506e5c2b3ef0ee58

git

2017-12-07 21:08

administrator   ~0072827

Branch CR29346_1 has been deleted by kgv.

SHA-1: b828eddbde02a614b3a3e74a876d6bffdb48e500

git

2017-12-07 21:08

administrator   ~0072828

Branch CR29346_2 has been deleted by kgv.

SHA-1: d380d37e5630176a6285983f4225cd1b00d72a04

Related Changesets

occt: master 15669413

2017-11-24 15:43:01

kgv


Committer: bugmaster Details Diff
0029346: Visualization, TKOpenGl - collect frame statistics

Graphic3d_RenderingParams::ToShowStats - new option displaying rendering statistics.

OpenGl_FrameStats - new class for accumulating frame statistics.
OpenGl_Context::FrameStats() provides an access to the frame stats
used for currently rendered context.
OpenGl_View::Redraw() and OpenGl_View::RedrawImmediate()
resets counters within OpenGl_Context::FrameStats().

OpenGl_Layer::UpdateCulling() - simplified resetting of culling state for cullable structures.
Affected Issues
0029346
mod - samples/tcl/spheres.tcl Diff File
mod - src/Graphic3d/Graphic3d_RenderingParams.hxx Diff File
mod - src/OpenGl/FILES Diff File
mod - src/OpenGl/OpenGl_BVHClipPrimitiveSet.hxx Diff File
mod - src/OpenGl/OpenGl_BVHClipPrimitiveTrsfPersSet.hxx Diff File
mod - src/OpenGl/OpenGl_CappingPlaneResource.hxx Diff File
mod - src/OpenGl/OpenGl_Context.cxx Diff File
mod - src/OpenGl/OpenGl_Context.hxx Diff File
mod - src/OpenGl/OpenGl_Font.cxx Diff File
mod - src/OpenGl/OpenGl_Font.hxx Diff File
mod - src/OpenGl/OpenGl_FrameBuffer.cxx Diff File
mod - src/OpenGl/OpenGl_FrameBuffer.hxx Diff File
add - src/OpenGl/OpenGl_FrameStats.cxx Diff File
add - src/OpenGl/OpenGl_FrameStats.hxx Diff File
add - src/OpenGl/OpenGl_FrameStatsPrs.cxx Diff File
add - src/OpenGl/OpenGl_FrameStatsPrs.hxx Diff File
mod - src/OpenGl/OpenGl_Layer.cxx Diff File
mod - src/OpenGl/OpenGl_Layer.hxx Diff File
mod - src/OpenGl/OpenGl_LineAttributes.hxx Diff File
mod - src/OpenGl/OpenGl_PrimitiveArray.cxx Diff File
mod - src/OpenGl/OpenGl_PrimitiveArray.hxx Diff File
mod - src/OpenGl/OpenGl_Resource.hxx Diff File
mod - src/OpenGl/OpenGl_Sampler.hxx Diff File
mod - src/OpenGl/OpenGl_ShaderObject.hxx Diff File
mod - src/OpenGl/OpenGl_ShaderProgram.hxx Diff File
mod - src/OpenGl/OpenGl_Structure.hxx Diff File
mod - src/OpenGl/OpenGl_Text.hxx Diff File
mod - src/OpenGl/OpenGl_Texture.cxx Diff File
mod - src/OpenGl/OpenGl_Texture.hxx Diff File
mod - src/OpenGl/OpenGl_VertexBuffer.hxx Diff File
mod - src/OpenGl/OpenGl_View.cxx Diff File
mod - src/OpenGl/OpenGl_View.hxx Diff File
mod - src/OpenGl/OpenGl_View_Redraw.cxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File
mod - tests/bugs/vis/bug24307_1 Diff File
mod - tests/bugs/vis/bug24307_2 Diff File

Issue History

Date Modified Username Field Change
2017-11-27 16:30 kgv New Issue
2017-11-27 16:30 kgv Assigned To => kgv
2017-11-27 20:26 kgv File Added: occt_stats.png
2017-11-28 01:48 git Note Added: 0072509
2017-11-28 01:52 git Note Added: 0072510
2017-11-28 14:14 git Note Added: 0072533
2017-11-28 14:17 kgv File Added: occt_stats2.png
2017-11-28 14:19 kgv Steps to Reproduce Updated
2017-11-28 14:22 git Note Added: 0072534
2017-11-28 14:44 git Note Added: 0072536
2017-11-28 14:45 git Note Added: 0072537
2017-11-28 14:52 kgv Note Added: 0072538
2017-11-28 14:52 kgv Assigned To kgv => san
2017-11-28 14:52 kgv Status new => resolved
2017-11-28 15:49 git Note Added: 0072541
2017-11-28 16:39 git Note Added: 0072545
2017-11-28 18:28 kgv Note Edited: 0072538
2017-11-28 21:17 git Note Added: 0072548
2017-11-28 21:18 git Note Added: 0072549
2017-11-28 21:43 git Note Added: 0072550
2017-11-28 21:53 git Note Added: 0072554
2017-11-28 23:57 git Note Added: 0072555
2017-11-28 23:58 git Note Added: 0072556
2017-11-29 01:37 git Note Added: 0072558
2017-11-29 08:41 git Note Added: 0072559
2017-11-29 08:47 git Note Added: 0072560
2017-11-29 11:17 git Note Added: 0072564
2017-11-29 11:33 git Note Added: 0072565
2017-11-29 11:40 git Note Added: 0072566
2017-11-29 11:59 git Note Added: 0072567
2017-11-29 12:01 git Note Added: 0072568
2017-11-29 12:08 git Note Added: 0072570
2017-11-29 12:18 kgv File Added: occt_stats3.png
2017-11-29 12:19 kgv File Deleted: occt_stats2.png
2017-11-29 12:20 kgv File Deleted: occt_stats.png
2017-11-29 14:58 kgv Note Edited: 0072538
2017-12-01 15:16 san Note Added: 0072654
2017-12-01 15:16 san Assigned To san => bugmaster
2017-12-01 15:16 san Status resolved => reviewed
2017-12-01 15:26 bugmaster Note Added: 0072657
2017-12-01 15:26 bugmaster Status reviewed => tested
2017-12-01 15:27 bugmaster Test case number => Not required
2017-12-02 16:59 bugmaster Changeset attached => occt master 15669413
2017-12-02 16:59 bugmaster Status tested => verified
2017-12-02 16:59 bugmaster Resolution open => fixed
2017-12-04 11:35 bugmaster Project Internal => Open CASCADE
2017-12-04 15:13 kgv Relationship added parent of 0029365
2017-12-04 15:26 kgv Relationship added related to 0029366
2017-12-07 21:08 git Note Added: 0072826
2017-12-07 21:08 git Note Added: 0072827
2017-12-07 21:08 git Note Added: 0072828
2018-02-20 12:58 aiv Target Version 7.4.0 => 7.3.0
2018-06-29 21:15 aiv Fixed in Version => 7.3.0
2018-06-29 21:19 aiv Status verified => closed
2018-09-12 14:55 kgv Relationship added parent of 0030135
2020-02-25 15:01 kgv Relationship added parent of 0031394
2020-06-02 17:01 kgv Relationship added parent of 0031588