Jess Holle: It would be nice if they could just replace the parallel engine with another, more efficient engine in the future. It is not going to happen.
If they had chosen a general-purpose decomposing engine or just a high-performance thread container (something like .Net 4) then it might be possible. They chose a recursive decomposing framework and now they’re stuck with it. Serial bulk operations require recursion in order to build the streams. No other way is efficient. The lambda team is having stack overflow problems, but these are somewhat easy to fix since everything is done in one thread. Parallel bulk operations are being done in a similar fashion since that is the engine they have. All the code is for recursively walking down the leaves of a structured tree. It’s actually harder to do it this way rather than using a scatter-gather technique as I pointed out with the CountedCompleter paragraphs. The stack overflow problems are not that easy to fix since the work spreads among threads. The solutions, so far, are horrendously complex – no surprise here – and will probably get worse since emulated scatter-gather is against the grain of recursive decomposition. If they ever want to replace the fork/join framework with a non-recursive, general-purpose engine then they will have to refactor all the code that uses the recursion technique. It’s not like putting a Chevy engine in a Ford. It will be a monster undertaking. ed On Tue, Feb 26, 2013 at 1:42 PM, Edward Harned <[email protected]> wrote: > Have you looked at the code? Try it and see.The article suggests you look > before buying. > > ed > > > On Tue, Feb 26, 2013 at 1:21 PM, Cédric Beust ♔ <[email protected]> wrote: > >> That was my thought too after a cursory read. I mean, "Calamity", "There >> hasn’t been an uglier pile of spaghetti code since the 1960’s"... >> >> Come on, now. That's not exactly a tone conducive to serious discussion. >> >> -- >> Cédric >> >> >> -- >> Cédric >> >> >> >> On Tue, Feb 26, 2013 at 10:15 AM, Ricky Clarkson < >> [email protected]> wrote: >> >>> This guy is always on this. If he's right and his competing work is so >>> good, why have I never come across anyone other than him saying so or using >>> it? That's not proof that he's wrong, but the constant negativity and lack >>> of other references makes me loathe to even consider his arguments. >>> >>> On Tue, Feb 26, 2013 at 3:00 PM, Cédric Beust ♔ <[email protected]>wrote: >>> >>>> >>>> On Tue, Feb 26, 2013 at 9:32 AM, Casper Bang <[email protected]>wrote: >>>> >>>>> Very interesting article. While I can't claim to understand it all in >>>>> detail, I am not too surprised (this is Java after all). How can one >>>>> expect >>>>> a coherent, simple and pragmatic parallel programming model, by a CS >>>>> professor isolated at his university?! >>>> >>>> >>>> That's a bit of a cheap shot to both Brian and Doug. >>>> >>>> I have a better idea: how about submitting this article to a place >>>> where it can be discussed among experts, such as the lambda-dev >>>> mailing-list? Then we can see the real merits of both sides. >>>> >>>> -- >>>> Cédric >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Java Posse" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> To post to this group, send email to [email protected]. >>>> Visit this group at http://groups.google.com/group/javaposse?hl=en. >>>> For more options, visit https://groups.google.com/groups/opt_out. >>>> >>>> >>>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Java Posse" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To post to this group, send email to [email protected]. >>> Visit this group at http://groups.google.com/group/javaposse?hl=en. >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >>> >>> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Java Posse" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/javaposse?hl=en. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> > > -- You received this message because you are subscribed to the Google Groups "Java Posse" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/javaposse?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
