[Haskell-cafe] MVar considered harmful
Joachim Durchholz
jo at durchholz.org
Sun Dec 30 07:22:23 UTC 2018
Am 29.12.18 um 11:43 schrieb Serguey Zefirov:
> MVar and IVar things are from dataflow programming, I believe, from Id90
> programming language (read about it, it's fascinating). They were ued
> there with greate success (linear scaling on CM-5, no less; they had to
> invent throttling to tame huge parallelism available).
So they were forced to go sublinear - that makes the claim pretty shady
IMHO.
Claims of linearly scaling parallelism are usually wrong.
First, there's always coordination overhead. Even if tasks distribute
perfectly, it's there - not much, but if you didn't notice it, either
you didn't scale up far enough to see the effect, or your measurements
are off.
Second, there's always a bottleneck somewhere. E.g. for GPU parallelism,
there's a pretty hard limit on the amount of data you can transfer over
the bus. You *can* work around that by setting up a hierarchical compute
node organization, which was all the rage for a few years, but it never
took off; I guess the constant factors have been too high.
So, forgive me if I am sceptical about that Id90 claim of linear scaling.
Regards,
Jo
More information about the Haskell-Cafe
mailing list