You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
AIE-ML LeNet tutorial: make run_emu hangs at Waiting for dma hls to complete... even with MTMODEL=false #509
make kernels
make graph
make xsa
make application
make package
Then I launched hardware emulation from:
cd build/lenet_x1/hw_emu/package
export MTMODEL=false
./launch_hw_emu.sh
I also noticed the note in the tutorial:
The upgraded AI Engine model can exhibit some issues. As a temporary solution, set mtmodel as false by setenv MTMODEL false command before running hw_emu.
Since I am using bash, I used:
export MTMODEL=false
echo$MTMODEL
and confirmed that it prints:
false
After QEMU boots, I log in to the PetaLinux system, mount the SD card partition, and run the application:
sudo su
mount /dev/mmcblk0p1 /mnt
cd /mnt
./lenet_aie_xrt.elf a.xclbin
The xclbin seems to load successfully, and the AIE graph also seems to start:
Initializing ADF API...
Iteration : 1...
[drm] AIE create successfully finished.
[drm] xclbin ... successfully loaded to slot 0
XAIEFAL: INFO: Resource group Avail is created.
XAIEFAL: INFO: Resource group Static is created.
XAIEFAL: INFO: Resource group Generic is created.
Run Datamover
graph run
graph running...
Waiting for dma hls to complete...
However, the program stays forever at:
Waiting for dma hls to complete...
I left it running overnight for about 10 hours, but it never reached TEST PASSED.
From the host code, it looks like it is stuck at:
auto state = xrtRunWait(dmahls_rhdl);
In dma_hls.cpp, the possible blocking point seems to be:
s = strm_in.read();
So I suspect that dma_hls is waiting for data from the AIE/PL stream path and never receives enough output data.
Activity