Open Ralender opened 2 years ago
I have just tried on my Ubuntu 21.10 laptop:
./reprod
WARNING: XCLBIN used is generated with Vivado version 2022.1.0 where as it is run with the Vivado version 2021.2 which is not compatible. May result to weird behaviour.
INFO: [HW-EMU 07-0] Please refer the path "/tmp/.run/1735899/hw_em/device0/binary_0/behav_waveform/xsim/simulate.log" for more detailed simulation infos, errors and warnings.
INFO: [Common 17-206] Exiting xsim at Tue Apr 12 14:41:47 2022...
SIMULATION EXITED
# around 5 min later:
segmentation fault (core dumped) ./reprod
so I guess there is is a bug.
@Ralender I tried to compile your host code with g++
but it did not work because of lacking
#include <cassert>
#include <cstring>
Can you fix your source code generator? With these lines
g++ -o reprod host.cpp -g -I/opt/xilinx/xrt/include -L/opt/xilinx/xrt/lib -lOpenCL -luuid -lxrt_coreutil
compiles and execution fails the same way:
-<%>- time ./reprod
WARNING: XCLBIN used is generated with Vivado version 2022.1.0 where as it is run with the Vivado version 2021.2 which is not compatible. May result to weird behaviour.
INFO: [HW-EMU 07-0] Please refer the path "/tmp/.run/1736560/hw_em/device0/binary_0/behav_waveform/xsim/simulate.log" for more detailed simulation infos, errors and warnings.
INFO: [Common 17-206] Exiting xsim at Tue Apr 12 14:50:50 2022...
SIMULATION EXITED
[2] 1736560 segmentation fault (core dumped) ./reprod
./reprod 0.56s user 0.09s system 0% cpu 5:00.12 total
Note that I have added a time
command so you can see it fails in exactly 5 minutes! :-)
I am afraid that if this bug is not fixed, hw_emu
will not work with the next Ubuntu LTS. :-(
@stsoe , @keryell : Can we have a CR for this against Vitis_Emulation application with the details on how to setup the "clang" to compile the host and reproduce the issue.
The provided test case is mostly automatically generated from an issue found in our runtime build on top of XRT.
steps to reproduce:
here is the host.cpp and the device.xclbin. reprod.zip
the test is a simple vector add. here is the host side also contained in reprod.zip: