by dar » Fri Mar 14, 2014 4:00 pm
If there is an SDK that already supports Epiphany I am not aware of it. We are working on something that would support OpenMP for the co-processor and allow explicit distributed memory management using support that already exists for malloc'ing device-shareable memory in the APIs provided in the COPRTHR SDK. It would be easy to implement automatic host-device data copy instrumentation but this will only work for toy use cases. Most applications will quickly require more control anyway. See for example the Intel pragma offload API for MIC, which quickly requires qualifying empty scopes to force data transfers for efficiency. There is an experimental feature of Parallella that would make automatic memory management more efficient, but its experimental at the moment. It relates to whether Parallella is an SMP platform or not - the issue is complicated, it does not have a clear answer at the moment.