Mark H Weaver <m...@netris.org> skribis: > l...@gnu.org (Ludovic Courtès) writes: > >> Mark H Weaver <m...@netris.org> skribis: >> >>> It only makes sense to use 'par-map' when the procedure is fairly >>> expensive to compute. >> >> Indeed. >> >>> There is inevitably a lot of overhead in creating and joining the >>> threads. >> >> We use a thread pool, so there’s no such cost. > > Sorry, I was using the term 'threads' not in the sense of OS-level > threads, but in a more general sense. I should have been more clear. > > What I meant is that from the user's perspective, threads are being > created and joined, and even if you build those using a pool of OS-level > threads, this inevitably involves thread synchronization, which is very > expensive on modern architectures. So I maintain that there _is_ such a > cost, and it can't be avoided.
Ah yes, OK. > The point I was really trying to make here, in the simplest possible > terms, is that it will *never* make sense to replace all uses of 'map' > with 'par-map' wherever it is safe to do so. Indeed! Ludo’.