
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