DiscussionsIssue archiveOCCT:Foundation Classes

Archived issue #0022146

Foundation Classes - Integration of OCC in-house parallelization tool

Open CASCADEOCCT:Foundation Classesclosed7 public notes

Search issues

Description

Integration of MP (Multy Process) data and process into OSD. Detailed
documentation is given in hxx

Public activity

7 archived notes

Participants are labeled by their role within this record.

01Commenter 1
It seems there is still a demand for hawing own paralleling tool, to be used if TBB is not wanted
02Commenter 2
Attachment 2 (ZIP) contains most up-to-date version of in-house tool
03Commenter 3
Please review the initial integration of parallelization wrapping. Brunch CR24826.
04Commenter 4
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.
05Commenter 5
The tool is implemented in #0024826 (class OSD_Parallel), but remarks above seems to be still relevant.
06Commenter 2
Do we still need this bug opened?
07Commenter 7
Last remark in #0022146 has been addressed by creation of thread pools in #0029935. Other issues will addressed when they become relevant.

Related records