MantisBT - Open CASCADE
View Issue Details
0022146Open CASCADE[OCCT] OCCT:Foundation Classespublic2010-12-14 13:482019-09-06 06:45
pdn 
abv 
normalfeature 
closedopen 
All
 
[OCCT] 6.9.0[OCCT] 6.9.0 
0022146: Foundation Classes - Integration of OCC in-house parallelization tool
Integration of MP (Multy Process) data and process into OSD. Detailed
documentation is given in hxx
No tags attached.
related to 0026365assigned kgv Open CASCADE Optimization of work of OSD_Parallel class members for GeomLib_CheckCurveOnSurface 
related to 0029935closed bugmaster Open CASCADE Foundation Classes - introduce OSD_ThreadPool class defining a thread pool 
related to 0024826closed bugmaster Community Wrapping of parallelisation algorithms 
zip OCC22146_v1_pdn.zip (10,453) 2010-12-14 11:49
https://tracker.dev.opencascade.org/
zip OSD_MProcess_new.zip (9,592) 2014-08-05 12:26
https://tracker.dev.opencascade.org/
Issue History
2010-12-14 13:49pdnCC => msv, agv, abv
2010-12-14 14:33bugmasterStatusnew => closed
2010-12-14 14:33bugmasterResolution@0@ => unable to reproduce
2011-08-02 11:31bugmasterCategoryOCCT:MOA => OCCT:Modeling Algorithms
2014-08-05 12:25abvNote Added: 0030571
2014-08-05 12:25abvAssigned Tobugmaster => azn
2014-08-05 12:25abvStatusclosed => assigned
2014-08-05 12:26abvFile Added: OSD_MProcess_new.zip
2014-08-05 12:26abvFixed in VersionEMPTY =>
2014-08-05 12:26abvTarget Version => 6.8.0
2014-08-05 12:26abvDescription Updatedbug_revision_view_page.php?rev_id=7794#r7794
2014-08-05 12:27abvNote Added: 0030572
2014-08-05 12:27abvRelationship addedrelated to 0025115
2014-08-05 12:28abvRelationship addedrelated to 0024826
2014-08-05 19:29abvSeveritytrivial => feature
2014-08-05 19:29abvResolutionunable to reproduce => open
2014-08-19 10:51aznAssigned Toazn => abv
2014-08-19 10:51aznNote Added: 0030870
2014-08-21 12:43abvAssigned Toabv => azn
2014-08-21 12:54abvNote Added: 0030992
2014-10-29 13:46abvTarget Version6.8.0 => 7.1.0
2016-01-08 01:27abvAssigned Toazn => abv
2016-10-28 16:28msvTarget Version7.1.0 => 7.2.0
2016-11-01 06:25abvNote Added: 0059665
2017-07-20 12:37kgvRelationship addedrelated to 0026365
2017-07-21 10:35msvTarget Version7.2.0 => 7.3.0
2017-12-05 17:09msvTarget Version7.3.0 => 7.4.0
2018-07-07 02:34kgvRelationship addedrelated to 0029935
2019-08-12 19:00msvTarget Version7.4.0 => 7.5.0*
2019-09-04 12:14kgvCategoryOCCT:Modeling Algorithms => OCCT:Foundation Classes
2019-09-04 12:14kgvSummaryIntegration of OCC in-house parallelization tool => Foundation Classes - Integration of OCC in-house parallelization tool
2019-09-04 12:17kgvNote Added: 0086727
2019-09-04 12:17kgvStatusassigned => feedback
2019-09-06 06:45abvNote Added: 0086825
2019-09-06 06:45abvStatusfeedback => closed
2019-09-06 06:45abvFixed in Version => 6.9.0
2019-09-06 06:45abvTarget Version7.5.0* => 6.9.0

Notes
(0030571)
abv   
2014-08-05 12:25   
It seems there is still a demand for hawing own paralleling tool, to be used if TBB is not wanted
(0030572)
abv   
2014-08-05 12:27   
OSD_MProcess_new.zip contains most up-to-date version of in-house tool
(0030870)
azn   
2014-08-19 10:51   
Please review the initial integration of parallelization wrapping. Brunch CR24826.
(0030992)
abv   
2014-08-21 12:54   
As we discussed, apart of a number of syntax / coding remarks, there are a few major issues with proposed implementation:

- it allocates (dynamically) an object for each element of the sequence of objects to be processed, this might be too expensive

- there seem to be no actual difference between ForEach and For, perhaps single For will be sufficient

- it is not clear how this will work if some cycle executed in parallel starts another (nested) parallel cycle. Current implementation will obviously start new N threads each time, this can be not optimal. Perhaps we should have N threads permanently allocated (as TBB likely does) and organize their work so as to avoid contention in case of nested calls.
(0059665)
abv   
2016-11-01 06:25   
The tool is implemented in 0024826 (class OSD_Parallel), but remarks above seems to be still relevant.
(0086727)
kgv   
2019-09-04 12:17   
Do we still need this bug opened?
(0086825)
abv   
2019-09-06 06:45   
Last remark in 0022146:0030992 has been addressed by creation of thread pools in 0029935. Other issues will addressed when they become relevant.