3 ms·
It looks like the speed gains are rather small and optimizations complex to debug even for small programs. And the "implicit parallelism" is really an explicit
by amix 17y ago
It looks like the speed gains are rather small and optimizations complex to debug even for small programs. And the "implicit parallelism" is really an explicit one since you have to annotate/hint what could be run in parallel.
- dons 17y ago> speed gains are rather small How did you get that impression? Depending on the problem, there are programs in that talk that scale linearly with the available cores. Secondly, there are two forms of implicit parallelism presented: * "semi implicit parallelism", via annotations. no locks, synchronization or communication required * "data parallelism", a subset of the language that can be auto-parallelized. Or did I misunderstand you?
- amix 17y agoSlide 34 where you find out that the improvement was only a little better. 03.hs is a fairly simple program and I would guess that one would run into a lot of these problems developing "real programs". I would prefer if the compiler / runtime system were smart enough to figure out where parallelism could be applied - - and I would had guessed that this would be a lot easier in Haskell since there are no side effects. Are there anyone playing with the idea of JIT parallelism (i.e. apply parallelism while the program is running)?