On Fri, 10 Nov 2006, Mike Stump wrote:
On Nov 10, 2006, at 12:46 PM, H. J. Lu wrote:
Will use C++ help or hurt compiler parallelism? Does it really matter?
I'm not an expert, but, in the simple world I want, I want it to not matter
in the least. For the people writing most code in the compiler, I want clear
simple rules for them to follow.
Good luck.
As I understand it, GCC's old manual memory manager was dumped in favour of
garbage collection because it was too error-prone. I suspect there will be
similar correctness issues with threads -- they're hard to get right, and
GCC is big, complex, and worked on by lots of people.
For example, google uses mapreduce http://labs.google.com/papers/
mapreduce.html as a primitive, and there are a few experts that manage that
code, and everyone else just mindlessly uses it. The rules are explained to
them, and they just follow the rules and it just works. No locking, no
atomic, no volatile, no cleaver lock free code, no algorithmic changes (other
than decomposing into isolated composable parts) . I'd like something
similar for us.
I'd be really impressed if someone could work out such a system that works
for a program such as GCC.
Nick