View Issue Details

IDProjectCategoryView StatusLast Update
0025692CommunityOCCT:Modeling Algorithmspublic2015-05-14 15:32
ReporterIstvan Csanady Assigned Tobugmaster  
PrioritynormalSeverityintegration request 
Status closedResolutionfixed 
Target Version6.9.0Fixed in Version6.9.0 
Summary0025692: Boolean operations minor improvement
DescriptionI was profiling boolean operations, and I have noticed, that a significant amount of time spent in IntPolyh_Point constructor. This is because IntPolyh_MaillageAffinage::TriContact creates lots of IntPolyh_Point objects. But these object creations can be moved after the 6 lines of 'if' instructions, reducing significantly the time spent in that constructor.
Maybe this is specific only for some shape types, but anyway, this is a reasonable change (and very easy, and also can not cause any bugs).
I have attached the patch file.
Steps To ReproduceN/A
TagsNo tags attached.
Test case numberNot needed

Attached Files

  • patch.diff (1,834 bytes)

Activities

Istvan Csanady

2015-01-08 20:18

developer  

patch.diff (1,834 bytes)

git

2015-01-18 23:21

administrator   ~0036182

Branch CR25692 has been created by abv.

SHA-1: 8bb09f31097ed6ddf935d7bf5a5125af99168a4e


Detailed log of new commits:

abv

2015-01-18 23:25

manager   ~0036183

The proposed change looks reasonable and safe, even if it does not show any change of performance of standard tests (at least, on Win 7 vc10 64-bit), now pushed to branch CR25692

abv

2015-01-18 23:25

manager   ~0036184

No remarks, please test

git

2015-01-22 13:49

administrator   ~0036387

Branch CR25692 has been updated forcibly by apn.

SHA-1: 2b01025a675e45ddd41f6c02cebffa4e9d555df7

apn

2015-01-23 19:33

administrator   ~0036484

Dear BugMaster,
Branch CR25692 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested in Release mode.
SHA-1: 2b01025a675e45ddd41f6c02cebffa4e9d555df7

Number of compiler warnings:

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

products component :
Linux: 11 (11 on master)
Windows: 1 (1 on master)

Regressions/Differences:
No regressions

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 370065012 / 369907280
Total CPU difference: 50068.01000000014 / 46828.580000000045

Testing on Windows:
Total MEMORY difference: 276556988 / 276837572
Total CPU difference: 35692.890625 / 39964.359375

There are not differences in images found by testdiff.

git

2015-03-18 13:35

administrator   ~0038542

Branch CR25692 has been deleted by inv.

SHA-1: 2b01025a675e45ddd41f6c02cebffa4e9d555df7

Related Changesets

occt: master dba608bb

2015-01-08 17:18:00

Istvan Csanady


Committer: bugmaster Details Diff
0025692: Boolean operations minor improvement

Method IntPolyh_MaillageAffinage::TriContact() improved so that local objects for detailed analysis are not created if algorithm exits by simple conditions checked at the beginning.
Affected Issues
0025692
mod - src/IntPolyh/IntPolyh_MaillageAffinage.cxx Diff File

Issue History

Date Modified Username Field Change
2015-01-08 20:18 Istvan Csanady New Issue
2015-01-08 20:18 Istvan Csanady Assigned To => msv
2015-01-08 20:18 Istvan Csanady File Added: patch.diff
2015-01-18 23:21 git Note Added: 0036182
2015-01-18 23:25 abv Note Added: 0036183
2015-01-18 23:25 abv Status new => resolved
2015-01-18 23:25 abv Steps to Reproduce Updated
2015-01-18 23:25 abv Note Added: 0036184
2015-01-18 23:25 abv Assigned To msv => bugmaster
2015-01-18 23:25 abv Status resolved => reviewed
2015-01-22 13:47 apn Test case number => Not needed
2015-01-22 13:47 apn Assigned To bugmaster => apn
2015-01-22 13:49 git Note Added: 0036387
2015-01-23 19:33 apn Note Added: 0036484
2015-01-23 19:34 apn Assigned To apn => bugmaster
2015-01-23 19:34 apn Status reviewed => tested
2015-01-30 14:00 bugmaster Changeset attached => occt master dba608bb
2015-01-30 14:00 bugmaster Status tested => verified
2015-01-30 14:00 bugmaster Resolution open => fixed
2015-03-18 13:35 git Note Added: 0038542
2015-05-14 15:29 aiv Status verified => closed
2015-05-14 15:32 aiv Fixed in Version => 6.9.0