Does anyone know how general-purpose the cores are on this and other parallel architectures? As I recall, the first video cards couldn't do things like branching, so it wasn't possible to program loops or flow control. I'm concerned that if these new processors can only run niche frameworks like OpenCL or CUDA that it will create friction slowing the adoption of concurrent programming in languages like MATLAB/Octave/Erlang/Elixer/Julia/Go etc.
There seems to be an opening in the market for truly general purpose processors having say > 16 or 32 cores. So it would be nice to have a curated list somewhere of multipurpose chips.
Processors like these do not even run OpenCL or CUDA, they execute computational graphs devoid of conventional control flow.
The Adapteva Epiphany or the Rex Neo is probably closer to what you're looking for. However, once you ask for anything that handles control flow well, you pretty much end back up at the general purpose CPU, which is highly inefficient for a reason. For example, even your GPU today will become very inefficient with control flow due to branch divergence.
> I'm concerned that if these new processors can only run niche frameworks like OpenCL or CUDA that it will create friction slowing the adoption of concurrent programming in languages like MATLAB/Octave/Erlang/Elixer/Julia/Go etc.
Quoted for irony of including MATLAB in a comment hoping for more open availability.
In the newer C++ iterations (starting with C++17) there are parallel versions of nomral algorithms that accept an argument of type "ExecutionPolicy". These are supposed to be supplied by the platform, but hardware vendors could supply them as well.
The execution policies that are provided with the stand will supprt launching normal OS thread on CPUs, but others could do all kinds of crazy things. They could perform the required operations on CPUs, GPU, Cuda, OpenCL or potentially on crazy hardware like this, where it makes sense to do so.
There seems to be an opening in the market for truly general purpose processors having say > 16 or 32 cores. So it would be nice to have a curated list somewhere of multipurpose chips.