cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
sl82976818
Adventurer
Adventurer
496 Views
Registered: ‎01-03-2019

Why ap_done asserted but clFinish() didn't unlock

Hi,

I have a RTL kernel implemented on a U50dd.

I think when the kernel execution finishs it will assert ap_done, then in the host side the clFinish() API will unlock the program.

But in this case, I can see in XVC debug that ap_done is asserted, but clFinish() didn't unlock, The host program will be blocked there.

Can you please tell me what is happened?

screenshot.png

0 Kudos
2 Replies
hongh
Moderator
Moderator
381 Views
Registered: ‎11-04-2010

Please use Vitis debugger to get the visibility from the host application into the XRT library.

Refer to UG1393 and read "Xilinx Runtime Library GDB Extensions".

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
sl82976818
Adventurer
Adventurer
349 Views
Registered: ‎01-03-2019

Hi @hongh ,

In GDB I can see the program stops at clFinish() without error.

In xbutil query I can see the CUs have stalled at (START) status.

After some more testing, I feel like if some AXI connections to HBM running together, this issue will happen. If only one AXI connection to HBM at a moment, this will not happen. But I'm not sure.

And after a xbutil reset, If sometimes the kernel started, I mean did't stall at clFinish, It will always work. sometimes it will stall after xbutil reset.

The firewall didn't trip accoding to xbutil query.

Is there some risk about mutiply connection to HBM? If yes how can I debug it?

 

 

0 Kudos