It's fun to play with. The challenges are pretty much what people have been saying: To get to these core counts in the little space they have had to sacrifice cache size and memory size and single thread speed, even with a very clean and simple instruction set, and we are in general not good about taking advantage of high core counts other than in the GPU sense.
The Epiphany in variations with enough cores has the potential to beat GPUs for workloads with many independent instruction streams, but it'd gets crushed by GPUs of similar size for workloads that can be easily vectorised, and would crushed by any modern CPU for workloads that require high single core performance because of data dependencies, no matter the core count, exactly because most of the complexity it sacrifices cost single core performance.
The problem is that we don't really know how much space that leaves (the Parallella was designed largely as a development platform to let people experiment with an Epiphany CPU). Adapteva has focused on the low power usage of their CPU, and that may very well be a good idea.
Though it is an awesome architecture and I recommend anyone to check it out.
GPUs have only something like 1-32 independent very wide MIMD/SIMD units with a lot of hardware threads.
Not sure about Nvidia 1080, but at least 980 has 32 SMM units, each roughly as defined above.
1024 independent cores... that'd be crazy. Surely they would not be cache coherent but only able to talk to immediate neighbors.
It'd be understatement to say that programming that kind of CPU would be challenging...
I would say I'm describing something halfway between a CPU and a GPU. It's not just an ALU, it's a complete microprocessor, with pipelining, caches, etc. The main difference is that the instruction set is optimized, backward compatibility is no longer a requirement, and redundancy of the architecture is eliminated.