I am trying to do object tracking in Realtime using an FPGA-based frame grabber and a gpu.
Bitflow, my frame-grabber manufacturer, supplies sample code demonstrating how to reduce latency by using DirectGMA to stream images directly from their frame grabber to an AMD GPU. They state that, for this to work, I'd need a FirePro gpu supporting DirectGMA, plus assorted drivers and sdks. So I bought a W4300, installed all the right software, and compiled and ran the sample code.
It failed while calling the extension loaded with the tag "clEnqueueMakeBuffersResidentAMD" with return code -5: CL_OUT_OF_RESOURCES
Before I bore you with a code snippet, let me ask:
Are directGMA and SDI-link two different things?
My W4300 supports directGMA, but not, I think, SDI-link.
Bitflow's sample code is known to work on a W8100, which supports both directGMA and SDI-link.
A (very) few sites on the web suggest that directGMA is for GPU-to-GPU transfers only, while SDI-link is for FPGA-to-GPU transfers, which is what I'm trying to do.
If this is the case, then I bought the wrong card!!
Can someone clear this up for me?
DirectGMA does support peer to peer communication between GPU and FPGA. Please find the below article for more information.
Also, you may refer the below document which describes AMD FirePro SDI-link and it's relation with DirectGMA.
Regarding the product compatibility, I would suggest you to check with Bitflow for more information.
P.S. You've been whitelisted.