cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

mriera
Journeyman III

DirectGMA Documentation

Hello guys, I have been tasked to create an FPGA-based PCIe card that will leverage DirectGMA with a FirePro in the same PCIe network (similar to AJA, Bluefish,...etc). I have looked around, but I am having difficulty finding documentation on how to develop the code to transmit information from the GPU to another device on the PCIe network. I am also having trouble finding the board specific compatibility specifications. Are there any forms of indepth documentation on how I can access the GPU physical memory from a peripheral device? and how to issue PCIe TLP writes to the peripheral? How does DirectGMA handle the address translation from a virtual memory to GPU physical memory perspective?

Thank you for any help you can offer

Regards!

0 Likes
4 Replies
chm
Staff
Staff

Hi,

the basic idea of DirectGMA is to expose a portion of the GPU memory and to make it accessible to any device on the bus. Vice versa devices that support DirectGMA need to expose a portion of their visible memory as well and allow the GPU to write into this memory. On the application level we provide API support in OpenGL, OpenCL and DX. The API will allow you to query the physical addresses of the so called bus_addressable_memory buffers on the GPU. Those addresses can be passed to the driver of the FPGA and the FPGA can then dma into the GPU memory.

Do you want to use DirectGMA with OpenGL, OpenCL or DX?

To share detailed information on the driver requirements we need to get a NDA.signed. If it is ok for you I will contact you outside the forum and put you in contact with our partner manager to work on the NDA.

Chris


0 Likes


Hi Chris,

I'm also looking for DirectGMA documentation for OpenCL.  Any chance you can get me in contact with the relevant parties?

Thanks,
Sean

0 Likes

Hi Sean,

I attached you the OpenCL extension specification for DirectGMA and some sample code that shows how to use the extension. The sample does a GPU to GPU copy using DirectGMA. To run it you will need to have 2 FirePro GPUs installed an enable DirectGMA on both of them.

Best regards

Chris

0 Likes
jennifermeria
Journeyman III

Great Discussion

0 Likes