|
|
|
|
|
by unblough
971 days ago
|
|
> Is parallel programming hard? Without any further details or specifics, yes it is. It is far harder to conceptualize code instructions executing simultaneously, than one-at-a-time in a sequential order. If I program (map inc [0 1 2 3]) is it really any more difficult to conceptualize the (inc ) function performing on each element sequentially than in parallel? I think the difficulty of parallel programming is less innate and more two fold: 1) languages often default to sequential so to do async requires introducing additional primitives to the programmer 2) knowing when to effectively use parallel programming When I have a list or stream that I know has independent elements that require wholly independent calculations then parallel programming is straightforward Where people get hung up is trying to shoe horn async where it is either unnecessary (performance is equal or worse than sequential) or introduces breaking behavior (the computations are in fact interdependent). |
|
(Fun fact: I once had someone call HR on me because they didn't know embarrassingly parallel was a technical term, and they thought I was belittling them)