Application Acceleration With FPGAs
Programmable Acceleration Cards (PACs), DCP, FPGA AI Suite, Software Stack, and Reference Designs
477 Discussions

Is it possible to use the emulator for SVM (shared virtual memory) using OpenCL FPGA SDK?

TRahm3
Beginner
1,028 Views

I downloaded and ran the vector_add example available from the design examples page for the Intel OpenCL FPGA SDK (link to example: https://www.intel.com/content/www/us/en/programmable/support/support-resources/design-examples/design-software/opencl/vector-addition.html).

 

One of the things mentioned in the README.html file attached in the tar ball for this example mentions about the use of SVM, but even when I set USE_SVM_API =1 (view the processor definitions in the readme file) the emulator still only executes the parts of the example host code where its #if USE_SVM_API ==0.

 

Is it possible to use the shared virtual memory for emulation purposes?

 

0 Kudos
2 Replies
Fawaz_Al-Jubori
Employee
709 Views

Hello,

I will check with our internal team regarding this SVM and let you know the feedback soon,

 

Thanks

0 Kudos
Fawaz_Al-Jubori
Employee
709 Views

Hello,

USE_SVM_API is a flag for the host that makes the OpenCL SVM alloc/free calls available (when equal to 1) at compile time inside the scoped_ptrs.h utilities file. When running the host binary in fast emulation with the flag enabled, these OpenCL SVM APIs should work. The OpenCL SVM APIs will only work for hardware runs if the board has a BSP that supports SVM (Shared Virtual Memory). If the flag is not 1 or not defined, then the OpenCL SVM API calls won’t be compiled in and only host side memory allocation can be used. if the flag is 0, then it’s still possible to have functioning host code assuming SVM isn’t needed.

 

Thanks

0 Kudos
Reply