This is very interesting stuff. I'd love for these kind of chips to be sold in a form of a coprocessor cards for PCs for example. For some type of servers and other uses it'd be a blessing.
But as another poster said, the difficulty with those kinds of architecture is the memory hierarchy: you don't want all the cores to access the DDR directly, as that would be a massive bottleneck. And this becomes a larger issue as you increase the number of cores.
Readily available in The Cloud(TM) and everything.
Either way still not close to 1000 independent cores.
if(blockIdx.x == 0) doThing1(); else if(blockIdx.x == 1) doThing2(); ...
etc., and the doThings could run at the same time, even on the same SM. Not super practical but it's allowed.