Community
cancel
Showing results for 
Search instead for 
Did you mean: 
WWP00
Beginner
397 Views

What is the most effective way to copy subsets of arrays between local and global memory?

For example, suppose we have a local memory array:

 

float local[10];

 

And a much larger, global memory array. Would we copy like:

 

int memStart = 50;

for (int i = 0; i < 10; ++i)

         local[i] = globalMem[memStart + i];

 

Or should we use #pragma unroll for this copy, to avoid making the loop take one clock cycle per copy? Or is there some other recommended way to move array data between local and global memory?

Tags (1)
0 Kudos
3 Replies
KennyT_Intel
Moderator
103 Views

Hi, You may found information here: https://stackoverflow.com/questions/20616844/how-to-transfer-array-data-in-vhdl I would suggest you post it to there as it involve IEEE std. Thanks
WWP00
Beginner
103 Views

Sorry, I meant in Intel's OpenCL for FPGAs, not in RTL.

KennyT_Intel
Moderator
103 Views

You can refer to https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/opencl-sdk/archives/aocl... page 1-47.

Transferring Loop-Carried Dependency to Local Memory 

 

For more queries, can you put this to the correct category fall under open cl? https://forums.intel.com/s/topic/0TO0P0000001AUUWA2/intel-high-level-design

 

Thanks

Reply