All Multicore Related Articles
The Big Daddy of All Thread Monkeys: Intel
One would think that, with all the money Intel has been spending in researching new programming tools to tackle the BIG problem of parallel programming, it would occur to at least one clever PhD at Intel’s multicore research labs that, maybe, just maybe, threads are not the answer to parallel computing. I mean, how long have those big-brained guys and gals been playing with threads anyway? Decades? Well, let us not hold our breath. Multithreading is to Intel what blood is to a vampire. It can't live without it. Intel’s customers have invested billions of dollars over the years writing trillions of lines of code to run on Intel’s multithreading processors. Intel cannot possibly abandon its customer base and introduce a new CPU that is not compatible with all that legacy code. At least, this is Intel’s thinking: whatever you do, don't touch those threads. This reality has colored Intel's perception to the point where it has boxed itself into a corner and there is no way out. Like it or lump it, Intel is the big daddy of all thread monkeys. Well, that is too bad, in my opinion, because, unless Intel finds an effective cure for its vampire lust, nothing will remain of its entire castle in the air, not a thread (pun intended). The computer revolution waits for nobody, not even Goliaths like Intel.
We Must Kill the Beast
There is only one way to solve the BIG problem, and that is to kill the Beast. By this I mean that we must eliminate threads from programming altogether. But it goes deeper than that. Threads are direct descendents of the algorithmic software model, an ancient paradigm that saw its first use in computing when Lady Ada wrote a table of instructions for Babbage’s analytical engine. There is no need to deny it, threads are algorithms. What is wrong with the algorithm, you ask? Well, in my opinion, the algorithm IS the BIG problem. It has been the BIG problem from the start, long before parallel computers and multicore CPUs became all the rage. I will even claim that, with the exception of the Von Neumann bottleneck, the algorithmic software model is the cause of every ill that ails the computer industry, from unreliability to low productivity. Yes, it is an old and nasty Beast but, unfortunately, one with a huge army of dedicated followers who will fight teeth and nails to save it from extinction. It makes no difference, though. Sooner or later, we must kill the Beast.
Killing the Beast is one thing. Finding a successor to the Beast is another. The Anti-Beast must be the opposite of the Beast. Here is a partial list of the characteristics of both for comparison:
Additionally, the Anti-Beast must support fine-grain parallelism and asynchronous messaging. For more information on the Anti-Beast, see Project COSA.
PS. Sorry, Intel. If you can't kill the Beast, someone else will. For your sake, let us hope it's not AMD. :-) Easy now, that was just a joke. AMD is a big-time thread monkey, too. It's like they say, monkey see, monkey do.