MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0027895Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2016-09-22 16:002016-12-09 16:40
Reporternbv 
Assigned Toapn 
PrioritylowSeverityfeature 
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version[OCCT] 7.0.0 
Target Version[OCCT] 7.1.0Fixed in Version[OCCT] 7.1.0 
Summary0027895: Correction in the constructor Extrema_ExtElC::Extrema_ExtElC (const gp_Lin&,const gp_Lin&,const Standard_Real)
DescriptionComputation of Line-Line extrema is quite simply algorithm. However, it is implemented in OCCT with complicated code.

More over, existing algorithm is not symmetrical (parameter on the second line is computed through the parameter on the first one).
Steps To ReproduceNew test case is not required.
TagsNo tags attached.
Test case numberNot needed
Attached Files? file icon script.tcl (346 bytes) 2016-09-29 13:43

- Relationships
parent of 0027896closedapn Prm-Prm intersection algo returns wrong result if it is called with start intersection point, which lies in the domain boundary 

-  Notes
(0058032)
git (administrator)
2016-09-22 16:47

Branch CR27895 has been created by nbv.

SHA-1: 89edad2fcacb5f93921c541305c9a52d22306b1f


Detailed log of new commits:

Author: nbv
Date: Thu Sep 22 16:46:12 2016 +0300

    0027895: Constructor Extrema_ExtElC::Extrema_ExtElC (const gp_Lin&,const gp_Lin&,const Standard_Real) should be optimized
    
    Computation algorithm is made more simple.
(0058038)
git (administrator)
2016-09-22 17:49

Branch CR27895 has been updated forcibly by nbv.

SHA-1: b48b6252519d2c41cbf96f527fe3d2e4b5fe559a
(0058242)
git (administrator)
2016-09-28 12:54

Branch CR27895 has been updated forcibly by nbv.

SHA-1: 1e6ffda6e5e68ccce8e380b6fc8de1a6b7a6478c
(0058244)
nbv (developer)
2016-09-28 13:01

Dear Mikhail (MSV),

Please review CR27895 (for OCCT) and CR27895_prod (for OCCT-products) branches.

Ask to pay attention to the fact that they are rebased on the fix for issue 0023178. Therefor, there is no point in integrating (and testing) the current fix before the fix for issue 0023178.
(0058263)
nbv (developer)
2016-09-28 15:04

I observed on this fix the same problem in the test "cr/standard/E1" as on the fix for issue 0023178. Corrected in CR23178_prod test script solves both problems.

In order to avoid conflicts while merging branches CR27895_prod and CR23178_prod, I have rebased CR27895_prod on CR23178_prod and CR27895 on CR23178_13.

In fact, fixes 0027895 and 0023178 are independent.
(0058265)
msv (developer)
2016-09-28 15:12

Reviewed.
(0058272)
abv (manager)
2016-09-28 16:19

Nikolay, when you write "should be optimized", you must have some use cases where this optimization will improve performance. Please provide such case and results of your measurements on how much performance has increased.
(0058298)
mkv (tester)
2016-09-29 11:53
edited on: 2016-09-29 12:02

Dear BugMaster,
Branch CR27895 from occt git-repository (and CR27895_prod from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
SHA-1: 1e6ffda6e5e68ccce8e380b6fc8de1a6b7a6478c
SHA-1: 9021b0ebe0f0b276f12cedb45b2995fd979a5911

Number of compiler warnings:

occt component :
Linux: 0 (0 on master)
Windows: 0 (0 on master)
MacOS : 0 (0 on master)

products component :
Linux: 64 (64 on master)
Windows: 0 (0 on master)
MacOS : 1138

Regressions/Differences/Improvements:
No regressions/differences

Testing cases:
Not needed

Testing on Linux:
occt component :
Total MEMORY difference: 90524877 / 90243551 [+0.31%]
Total CPU difference: 19378.479999999894 / 19251.849999999875 [+0.66%]
products component :
Total MEMORY difference: 29941609 / 29971522 [-0.10%]
Total CPU difference: 5159.0399999999745 / 5131.389999999977 [+0.54%]

Testing on Windows:
occt component :
Total MEMORY difference: 57223969 / 57221541 [+0.00%]
Total CPU difference: 17973.639614898573 / 18310.78897609872 [-1.84%]
products component :
Total MEMORY difference: 21276094 / 21235672 [+0.19%]
Total CPU difference: 4952.54814689996 / 4988.631178199945 [-0.72%]

There are following differences in images found by testdiff.
http://occt-tests/CR27895-CR27895_prod-OCCT/Debian70-64/diff-Debian70-64.html [^]
http://occt-tests/CR27895-CR27895_prod-OCCT/Windows-64-VC10/diff-Windows-64-VC10-image.html [^]
IMAGE boolean bopfuse_simple ZF1: ZF1.png differs
IMAGE boolean bopfuse_simple ZE7: ZE7.png differs
IMAGE boolean bopfuse_simple ZE8: ZE8.png differs
IMAGE boolean bopcut_simple ZF1: ZF1.png differs
IMAGE boolean bopcut_simple ZE7: ZE7.png differs
IMAGE boolean bopcut_simple ZE8: ZE8.png differs
IMAGE bugs modalg_5 bug25292_11: bug25292_11.png differs
IMAGE bugs modalg_5 bug25292_12: bug25292_12.png differs
IMAGE bugs modalg_6 bug27766: bug27766.png differs
IMAGE bugs modalg_6 bug27310_2: bug27310_2.png differs
 These differences are validate (see message ~0058087)

(0058299)
mkv (tester)
2016-09-29 11:54

Dear BugMaster,
Branch CR27895 from occt git-repository and CR27895_prod from products git-repository are TESTED.
(0058315)
nbv (developer)
2016-09-29 13:42

Dear Andrei (ABV),

My answer to the message 0027895:0058272 is

Result output from the attached file "script.tcl":


------------------------------------------
        MASTER:
Elapsed time: 0 Hours 2 Minutes 24.7006926716 Seconds
CPU user time: 144.484375 seconds
CPU system time: 0 seconds

Allocated memory = 294912
------------------------------------------

        FIX:
Elapsed time: 0 Hours 2 Minutes 22.3999226241 Seconds
CPU user time: 142.328125 seconds
CPU system time: 0 seconds

Allocated memory = 0
-------------------------------------------

CONCLUSION:

The FIX uses less allocated memory. Performance output seems to be fluctuation (we do not win in performance indeed).
(0059457)
git (administrator)
2016-10-28 21:42

Branch CR27895 has been deleted by kgv.

SHA-1: 1e6ffda6e5e68ccce8e380b6fc8de1a6b7a6478c

- Related Changesets
occt: master 4e283d33
Timestamp: 2016-09-22 13:46:12
Author: nbv
Committer: apn
Details ] Diff ]
0027895: Correction in the constructor Extrema_ExtElC::Extrema_ExtElC (const gp_Lin&,const gp_Lin&,const Standard_Real)

Computation algorithm is made more simple.
Adjusting some test cases according to their new behavior.
mod - src/Extrema/Extrema_ExtElC.cxx Diff ] File ]
mod - tests/bugs/modalg_5/bug25319_1 Diff ] File ]
mod - tests/bugs/modalg_5/bug25319_2 Diff ] File ]

- Issue History
Date Modified Username Field Change
2016-09-22 16:00 nbv New Issue
2016-09-22 16:00 nbv Assigned To => msv
2016-09-22 16:12 nbv Description Updated View Revisions
2016-09-22 16:14 msv Priority normal => low
2016-09-22 16:14 msv Status new => assigned
2016-09-22 16:14 msv Product Version Unscheduled => 7.0.0
2016-09-22 16:43 nbv Relationship added parent of 0027896
2016-09-22 16:47 git Note Added: 0058032
2016-09-22 17:49 git Note Added: 0058038
2016-09-28 12:54 git Note Added: 0058242
2016-09-28 13:01 nbv Note Added: 0058244
2016-09-28 13:01 nbv Status assigned => resolved
2016-09-28 15:04 nbv Note Added: 0058263
2016-09-28 15:12 msv Note Added: 0058265
2016-09-28 15:12 msv Assigned To msv => bugmaster
2016-09-28 15:12 msv Status resolved => reviewed
2016-09-28 15:26 mkv Assigned To bugmaster => mkv
2016-09-28 16:19 abv Note Added: 0058272
2016-09-28 17:35 nbv Summary Constructor Extrema_ExtElC::Extrema_ExtElC (const gp_Lin&,const gp_Lin&,const Standard_Real) should be optimized => Correction in the constructor Extrema_ExtElC::Extrema_ExtElC (const gp_Lin&,const gp_Lin&,const Standard_Real)
2016-09-28 17:35 nbv Description Updated View Revisions
2016-09-29 11:53 mkv Note Added: 0058298
2016-09-29 11:54 mkv Note Added: 0058299
2016-09-29 11:54 mkv Assigned To mkv => bugmaster
2016-09-29 11:54 mkv Status reviewed => tested
2016-09-29 11:56 mkv Note Edited: 0058298 View Revisions
2016-09-29 12:02 mkv Note Edited: 0058298 View Revisions
2016-09-29 13:42 nbv Note Added: 0058315
2016-09-29 13:43 nbv File Added: script.tcl
2016-10-03 15:16 mkv Test case number => Not needed
2016-10-07 16:09 apn Changeset attached => occt master 4e283d33
2016-10-07 16:09 apn Assigned To bugmaster => apn
2016-10-07 16:09 apn Status tested => verified
2016-10-07 16:09 apn Resolution open => fixed
2016-10-28 21:42 git Note Added: 0059457
2016-12-09 16:28 user533 Status verified => closed
2016-12-09 16:40 user533 Fixed in Version => 7.1.0


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker