by piotr5 » Mon Mar 16, 2015 8:00 am
well, parallella is an fpga-board! as of yet it is unknown what could be done with the epiphany chip, so it's good that additional possibility exists. but imho your problem stems from the opposite direction: as of yet there exists no true context building lib which automatically alters your sources to fit the underlying architecture -- those programs aren't smart enough as of yet. as I understood fpga is a logic-tree architecture, programs there are composed of parallell commands transforming multiple inputs into a single output. ordinary computers, including parallella, use a von-neumann sequential execution machine, none of the commands really are supposed to be executed in parallell. gpu programming means you write a single sequential program and run the same program on many cores. of course it's possible to port automatically between these 3 systems, but there will always be big differences in the speed and memory situation. you write a program that's optimal on one system and the automatic transformation will produce something that's extremely slow or extremely ressource-hungry on another. you'd need an ai that understands the gist of what you're trying to do and rewrites it for another system. I doubt opencl was designed with that purpose in mind...
anyway, as was said, opencl for parallella isn't ready yet, it isn't in the list of supported hardware for opencl. guess the low-level stuff need to be added in pal before any work on that can start...