Hi,
I wish to output the GPU generated frames to a remote FPGA memory via PCIe instead of display port output.
I saw there is a GPUdirect mechanism but couldn’t find any guides walkthorugh regarding this subject.
Where can I find some getting started help?
Is it possible to redirect only part of the gpu generated frames? I mean that some of them will output to the display port and others to the FPGA memory
Who controls the transfers? the CPU/GPU/FPGA? I mean who tells the GPU to redirect its output and to where
Hi,
Would like to get more information about the setup. Do yo connect our GPU card to PICe x8 slot on Orin developer kit and would like to transfer the frame data to Orin SoC system? Please also share which GPU card you are using.
Hi,
The GPU is the one inside the AGX Orin SoM.
I wish to connect the AGX SoM (currently devkit) to an external FPGA and redirect the AGX GPU’s frames into the FPGA memory instead of output them outside via display port.
Currently they are not connected but they will. I try to learn how to achieve my goal before connecting them physically.
From your questions I learn that the FPGA should use a x8 slot to connect to the SoM (I think less lanes will work as well but only slower) and is there importance who is the root complex and who is the end point?
That’s the goal - to redirect the SoM GPU’s frames into the FPGA memory
Is it possible to redirect only part of the gpu generated frames? I mean that some of them will output to the display port and others to the FPGA memory
Suppose yes, you can control the pointer to pass to the FPGA.
Please note that to allow RDMA, the buffer needs to be allocated with cudaHostAlloc.
Thank you for your answer.
I apologise, but I’m not familiar with the GUI drawing process.
Where can I find the code which draws the GUI and check if it uses cudaHostAlloc?
Only the opposite is supported.
RDMA needs the buffer to be allocated with cudaHostAlloc.
So the problem will be if you can render a GUI with a preallocated cudaHostAlloc buffer.
Based on this, please check which library or application will be used for GUI in your use case.
Maybe you know to direct me to which kernel module responsible for drawing the GUI by sending tasks to the GPU and redirect the output to display port? (then ill be able to view the GPU code)