News for hackers. Stuff that matters.
Re:The joy of concurrent logic programming by PaulHoule on Sunday November 07, 2021 @09:48AM (#29139843)
My concern is how you batch things.

If you pass single operations between threads you will run slower, not faster because of the synchronization overhead.

Whenever I parallelize something I build batching in from the beginning. Most other people seem to think it is an optimization you can do later but the way I see if if your goal is to get any speed up at all batching is essential.

Re:The joy of concurrent logic programming by Jtsummers on Sunday November 07, 2021 @01:51PM (#29142277)
> This implementation additionally can distribute pools of parallel processes over native OS level threads, thus taking advantage of multicore architectures. Locking overhead should be small, as data is normally not shared among processes executing on different threads.

From: http://www.call-with-current-continuation.org/fleng/fleng.ht...

It seems the author has taken this into account, it's not a 1:1 mapping of processes to OS threads.

Re:The joy of concurrent logic programming by anonymousDan on Sunday November 07, 2021 @03:23PM (#29143145)
Yeah I agree but as the sibling said if you are not in a distributed setting and have an N:M threading model the overhead can be low enough it's often not such an issue. But otherwise I'm a little unclear whether concurrent logic programming supports e.g. asynchronous comms with pipelined requests. If not I guess to some extent you could do it at the application level?
Re:The joy of concurrent logic programming by Siira on Sunday November 07, 2021 @10:18AM (#29140125)
This is simply not true if the overhead is much smaller than each one operation. But I agree that batching matters.
Re:The joy of concurrent logic programming by PaulHoule on Sunday November 07, 2021 @04:15PM (#29143574)
For my current side project I am making collages out of images I took with my DSLR. I like to use expensive scaling algorithms because I’ll have to look at the result when I am done.

For this the natural ‘batch’ is one image and that justifies the overhead easily.