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?
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.