Wish: multithreading for join

 From:  Michael Gibson
2977.2 In reply to 2977.1 
Hi Micha,

> It could be nice if all cores of a quadcore could be used.

That would definitely be nice but unfortunately I don't really have much hope of being able to achieve that in the foreseeable future.

Currently the joining is done by a mechanism in the geometry library and it would require some heavy modifications to make it multi-threaded.

It's a fairly difficult area to break into separate work items, because the way Join works involves making modifications to the object's edge structures during the join process.

Anything that involves making making changes to a common structure is difficult to manage with multiple threads.

I guess ideally the way it would work would be to do one complete pass that only did an analysis of what needed to be changed, and not actually make any changes until a later pass. That would make it more feasible to multi-thread the analysis pass. It's not currently set up like that though.


> Also a progress bar would be nice.

Unfortunately even this part is not really set up in the library currently.


- Michael