[...] Multiple processor architectures introduce a new class of programming problem. Writing software to get the best performance from multiple-processor systems is far from straightforward. Issues such as synchronization, load balancing, memory protection and task distribution place new demands on programmers and those building tools that are used by developers.
Chip builders have concentrated on the use of multi threading. Intel, for example, has invested heavily in multi-threading technology with its thread building blocks (TBB
) library extensions to C++.
But the validity of multi threading is under attack. Veteran programmer Knuth said in a recent interview
that multithreading may not be up to the task and could fail. As such, he is "unhappy" with the current trend towards multi-core architectures.
[...]Knuth — the author of the seminal programmers' manual The Art of Computer Programming
and a Turing Award
winner — has to be taken seriously on this. And he is not alone. Sun Microsystems' director of web technologies Tim Bray, one of the team that created XML, has also criticized
multi threading. Bray said that, while he once favored the approach, he had now turned away from it. Elsewhere
the criticism of multi threading is even more direct.