Re: Allen Bauer interview in Bitwise



who will get there first ? the hardware or software guys ?

Apart from simple, brute-force loops with no dependencies, I don't see where the hardware guys will get improvements... parallelism often involve some design-level analysis to cut dependencies you would "naturally" write into the code, but that don't logically have any reason to be implemented as dependencies (not simple, implicit dependency can wreck the whole effort just as efficiently as an explicit dependency, you have pay attention not just to the code but also to the data structures...).
This is an area where languages and class libraries could certainly be improved, current ones certainly make it way too simple to introduce dependencies all over the place. Ideally, it should be *hard* to introduce anti-multithreading dependencies.

That said, simple, brute-force loops are the easiest for a compiler to detect and parallelize too, and they're also prime candidates for execution on specialized coprocessors, ala Cell's SIMD cores (another thing investigated by AMD/Intel).

So many solutions to solving the simple brute-force loops.... The problem IMO is going to be with the rest of the code - ie. *most* of the code ;)

Eric
.