Hello John.


On 10/07/2016 06:54 PM, John Paulson wrote:
Hi Enea and Roberto,

Thank you very much for all of the work you have done on threading with PPL. I have a couple of questions about the current status of the thread safety. A project I am currently working on needs to have multiple threads working simultaneously on distinct PPL objects. Is that possible with the new thread safe version?

Yes, it is possible.

If the PPL objects are distinct, so that there is no concurrent access to the *same* object, then things should not be difficult (e.g., no need at all for synchronization). You can have a look to the ppl_lcdd and ppl_lpsol demos or to the recently added tests in tests/Polyhedron/threadsafe*.cc


I made an implementation of my current project where I fork processes instead of using multiple threads. However, if I fork and have two processes manipulating distinct PPL objects, I do not get a speedup by a factor of two like I would expect. Is there anyway to get that type of speedup?

If you use many process, then the PPL should be working fine "as is" (i.e., with thread-safety off).
As for the missing speedup, I doubt it has something to do with the library:
there should be something else going on, but I have no information to guess what it could be.

Cheers,
Enea.



Best,
John C. Paulson


_______________________________________________
PPL-devel mailing list
PPL-devel@cs.unipr.it
http://www.cs.unipr.it/mailman/listinfo/ppl-devel