I am writing a program for eigenvalue decomposition of a matrix. For this case I am dividing the work to the 16 epiphany cores using eSDK. But by algorithm involves the data transfer between the cores. I am first running a device program say "epipany_task1" only on the diagonal cores of the epiphany module. The program returns four float values each from one core. Now I need to send these float values to other non diagonal cores to be inputted for another function say "epiphany_task2" which runs on the non diagonal cores after "wpiphany_task1" has finished running on all four diagonal cores.Each non diagonal core gets two float values, one from the row diagonal core and other from column diagonal core.Is there an external memory accessible to the epiphany cores from where I can write these float values and later read them. Or can I read the float values to host processor and then write them to the non diagonal cores in the host code?
Thanks in advance!