MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0024208Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2013-09-27 15:052018-06-14 09:36
Reporterifv 
Assigned Toapn 
PrioritynormalSeverityminor 
StatusclosedResolutionfixed 
PlatformAOSLOS VersionL
Product Version 
Target Version[OCCT] 6.7.1Fixed in Version[OCCT] 6.7.1 
Summary0024208: Optimization of the edge-edge and edge-face intersection algorithms
DescriptionOptimization of the algorithm for calculation of edge-edge and edge-face common parts (classes IntTools_BeanBeanIntersector, IntTools_BeanFaceIntersector);
see http://dev.opencascade.org/index.php?q=home/projects/modeling [^] for details
Additional information
and documentation updates
New Edge/Edge intersection algorithm (based on the intersection between edges bounding boxes).
TagsNo tags attached.
Test case numberNot needed
Attached Filesdoc file icon New_EdgeEdge_vs_Old.doc (45,568 bytes) 2014-02-28 11:05
doc file icon HYDRO_test_cases.doc (45,568 bytes) 2014-02-28 11:05

- Relationships
related to 0029769verifiedabv Community Foundation Classes - Uninitialized data with BSplCLib_Cache, BSplSLib_Cache 

-  Notes
(0027709)
emv (developer)
2014-01-31 09:08

Git branch CR24208 is ready to be reviewed.
(0027718)
ifv (developer)
2014-01-31 11:48

Ok
(0027724)
mkv (tester)
2014-02-03 10:47

Dear BugMaster,

Branch CR24208 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
SHA-1: d064a155ea25ddf56a30188f26bd0314d08b3505

Number of compiler warnings:

occt component :
Linux: 45 (44 on master)
Windows: 1 (1 on master)

New additional warning on Linux platform:
IntTools_EdgeEdge.cxx:870, GNU C Compiler 4 (gcc), Priority: Normal
suggest parentheses around ‘&&’ within ‘||’

products component :
Linux: 12 (12 on master)
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 370655752 / 372411404
Total CPU difference: 43789.78000000015 / 43919.8800000002

Testing on Windows:
Total MEMORY difference: 418587056 / 409807300
Total CPU difference: 35830.734375 / 35405.234375

There are not differences in images found by testdiff.
http://occt-tests/CR24208-master-occt/Debian60-64/diff-Debian60-64.html [^]
http://occt-tests/CR24208-master-occt/Windows-32-VC9/diff-Windows-32-VC9.html [^]
IMAGE boolean boptuc_2d O1: O1.png differs
IMAGE boolean boptuc_2d O5: O5.png differs
IMAGE boolean boptuc_2d P4: P4.png differs
IMAGE boolean boptuc_2d O9: O9.png differs
IMAGE boolean bcut_2d Q7: Q7.png differs
IMAGE boolean bcut_2d S5: S5.png differs
IMAGE boolean bcut_2d P9: P9.png differs
IMAGE boolean bcut_2d Q8: Q8.png differs
IMAGE boolean bcut_2d R6: R6.png differs
IMAGE boolean bcut_2d P8: P8.png differs
IMAGE boolean bcut_2d R7: R7.png differs
IMAGE boolean bcut_2d S6: S6.png differs
IMAGE boolean bfuse_2d C1: C1.png differs
IMAGE boolean bfuse_2d B6: B6.png differs
IMAGE boolean bfuse_2d C5: C5.png differs
IMAGE boolean bfuse_2d C9: C9.png differs
IMAGE boolean bopcut_2d C8: C8.png differs
IMAGE boolean bopcut_2d D3: D3.png differs
IMAGE boolean bopcut_2d C4: C4.png differs
IMAGE boolean bopcut_2d B9: B9.png differs
IMAGE boolean bopfuse_2d C1: C1.png differs
IMAGE boolean bopfuse_2d B6: B6.png differs
IMAGE boolean bopfuse_2d C5: C5.png differs
IMAGE boolean bopfuse_2d C9: C9.png differs
(0027729)
emv (developer)
2014-02-03 12:35

The warning has been removed. The differences in images are OK (not regressions). Please test again.
(0027736)
abv (manager)
2014-02-03 15:37

Eugene, as soon as the subject of this change is optimization, please provide results of performance measurements confirming improved performance of the algorithms.
(0027751)
mkv (tester)
2014-02-04 16:09

Dear BugMaster,

Branch CR24208 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
SHA-1: 9da772cf4c9b3db7d35b95929cb5ce625cc20c42

Number of compiler warnings:

occt component :
Linux: 44 (44 on master)
Windows: 1 (1 on master)

products component :
Linux: 12 (12 on master)
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 370842804 / 372384644
Total CPU difference: 41843.92000000001 / 43917.86000000019

Testing on Windows:
Total MEMORY difference: 418900628 / 409793128
Total CPU difference: 33854.1875 / 35404.484375

There are not differences in images found by testdiff.
(0028069)
emv (developer)
2014-02-28 11:09

I have attached two documents containing performance measurements between two Edge/Edge intersection algorithms on the different sets of tests:
New_EdgeEdge_vs_Old.doc - on the OCCT test cases;
HYDRO_test_cases.doc - on the HYDRO test cases (see issue 0024673).
(0028076)
abv (manager)
2014-02-28 14:50

Eugene, thank you for the report! Please explain what times have been measured: of the whole test or of intersection (or whole BOP) algorithm only?
(0028077)
emv (developer)
2014-02-28 15:03
edited on: 2014-02-28 15:03

The documents contain the time measurements of the whole test cases.


- Related Changesets
occt: master ec0cdc0e
Timestamp: 2014-02-06 07:07:02
Author: emv
Committer: apn
Details ] Diff ]
0024208: Optimization of the edge-edge and edge-face intersection algorithms

New Edge/Edge intersection algorithm (based on the intersection between edges bounding boxes).
Small correction.
mod - src/BOPAlgo/BOPAlgo_ArgumentAnalyzer.cxx Diff ] File ]
mod - src/BOPAlgo/BOPAlgo_PaveFiller_3.cxx Diff ] File ]
mod - src/BOPAlgo/BOPAlgo_PaveFiller_6.cxx Diff ] File ]
rm - src/IntTools/FILES Diff ] File ]
mod - src/IntTools/IntTools.cdl Diff ] File ]
rm - src/IntTools/IntTools_BeanBeanIntersector.cdl Diff ] File ]
rm - src/IntTools/IntTools_BeanBeanIntersector.cxx Diff ] File ]
rm - src/IntTools/IntTools_BeanBeanIntersector.lxx Diff ] File ]
mod - src/IntTools/IntTools_EdgeEdge.cdl Diff ] File ]
mod - src/IntTools/IntTools_EdgeEdge.cxx Diff ] File ]
add - src/IntTools/IntTools_EdgeEdge.lxx Diff ] File ]
rm - src/IntTools/IntTools_EdgeEdge_1.cxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2013-09-27 15:05 ifv New Issue
2013-09-27 15:05 ifv Assigned To => ifv
2013-09-27 15:32 ifv Assigned To ifv => emv
2014-01-31 09:08 emv Note Added: 0027709
2014-01-31 09:08 emv Assigned To emv => ifv
2014-01-31 09:08 emv Status new => resolved
2014-01-31 09:08 emv Additional Information Updated View Revisions
2014-01-31 11:48 ifv Note Added: 0027718
2014-01-31 11:48 ifv Status resolved => reviewed
2014-01-31 11:56 mkv Assigned To ifv => mkv
2014-02-03 10:47 mkv Note Added: 0027724
2014-02-03 10:49 mkv Test case number => Not needed
2014-02-03 10:49 mkv Assigned To mkv => emv
2014-02-03 10:49 mkv Status reviewed => assigned
2014-02-03 12:35 emv Note Added: 0027729
2014-02-03 12:35 emv Assigned To emv => mkv
2014-02-03 12:35 emv Status assigned => resolved
2014-02-03 12:35 emv Status resolved => reviewed
2014-02-03 15:37 abv Note Added: 0027736
2014-02-04 16:09 mkv Note Added: 0027751
2014-02-04 16:09 mkv Status reviewed => tested
2014-02-04 19:04 mkv Assigned To mkv => bugmaster
2014-02-05 12:53 abv Target Version => 6.7.1
2014-02-06 15:37 san Relationship added related to 0024581
2014-02-10 12:41 apn Changeset attached => occt master ec0cdc0e
2014-02-10 12:41 apn Assigned To bugmaster => apn
2014-02-10 12:41 apn Status tested => verified
2014-02-10 12:41 apn Resolution open => fixed
2014-02-28 10:32 emv Relationship added related to 0024673
2014-02-28 11:05 emv File Added: New_EdgeEdge_vs_Old.doc
2014-02-28 11:05 emv File Added: HYDRO_test_cases.doc
2014-02-28 11:09 emv Note Added: 0028069
2014-02-28 14:50 abv Note Added: 0028076
2014-02-28 15:03 emv Note Added: 0028077
2014-02-28 15:03 emv Note Edited: 0028077 View Revisions
2014-05-05 13:34 aiv Status verified => closed
2014-05-05 13:38 aiv Fixed in Version => 6.7.1
2018-06-14 09:36 abv Relationship added related to 0029769


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker