zzzhhh
Newbie level 5
I'm trying to follow vadd example in Vitis Getting Started Tutorial on hardware (link).
The OS is Ubuntu 22.04.2 and Xilinx Vitis software (XRT, deployment and development platform) version 2022.2 is downloaded from the official product webpage (link). To the best of my knowledge, I think my installation is correct. Below are the results of command "sudo /opt/xilinx/xrt/bin/xbmgmt examine":
System Configuration
OS Name : Linux
Release : 5.15.0-73-generic
Version : #80-Ubuntu SMP Mon May 15 15:18:26 UTC 2023
Machine : x86_64
CPU Cores : 64
Memory : 192038 MB
Distribution : Ubuntu 22.04.2 LTS
GLIBC : 2.35
Model : PowerEdge R740xd
XRT
Version : 2.14.354
Branch : 2022.2
Hash : 43926231f7183688add2dccfd391b36a1f000bea
Hash Date : 2022-10-08 09:49:53
XOCL : 2.14.354, 43926231f7183688add2dccfd391b36a1f000bea
XCLMGMT : 2.14.354, 43926231f7183688add2dccfd391b36a1f000bea
Devices present
BDF : Shell Platform UUID Device ID Device Ready*
---------------------------------------------------------------------------------------------------------------------------
[0000:3b:00.0] : xilinx_u280_gen3x16_xdma_base_1 283BAB8F-654D-8674-968F-4DA57F7FA5D7
The tutorial is for Alveo U250 card, but I tried my best to adapt it to Alveo U280 card. The configuration file u280.cfg located in the same directory as source file host.cpp is
platform=xilinx_u280_gen3x16_xdma_1_202211_1
debug=1
save-temps=1
[connectivity]
nk=vadd:1:vadd_1
sp=vadd_1.in1:HBM[0]
sp=vadd_1.in2:HBM[0]
sp=vadd_1.out:HBM[0]
The vadd example works fine under software and hardware emulations, but it crashes on real hardware. The building process outputs no error. After hours of building, I run .app.exe.app.exe and got the following output with errors:
argc = 1
argv[0] = ./app.exe
Open the device0
terminate called after throwing an instance of 'std::runtime_error'
what(): Unexected error creating shim library name
Aborted (core dumped)
Because "Open the device0" is printed out at line 29 but "Load the xclbin ..." is not printed at line 31 of host.cpp, the problem should be at line 30:
auto device = xrt::device(device_index);
But I don't know what causes the issue at this line, while it runs well under software and hardware emulation. I tried my best to double check the steps of the tutorial and confirmed that I am doing everything I know of correctly. Can you please help me fix this issue? Thanks a lot.
The OS is Ubuntu 22.04.2 and Xilinx Vitis software (XRT, deployment and development platform) version 2022.2 is downloaded from the official product webpage (link). To the best of my knowledge, I think my installation is correct. Below are the results of command "sudo /opt/xilinx/xrt/bin/xbmgmt examine":
System Configuration
OS Name : Linux
Release : 5.15.0-73-generic
Version : #80-Ubuntu SMP Mon May 15 15:18:26 UTC 2023
Machine : x86_64
CPU Cores : 64
Memory : 192038 MB
Distribution : Ubuntu 22.04.2 LTS
GLIBC : 2.35
Model : PowerEdge R740xd
XRT
Version : 2.14.354
Branch : 2022.2
Hash : 43926231f7183688add2dccfd391b36a1f000bea
Hash Date : 2022-10-08 09:49:53
XOCL : 2.14.354, 43926231f7183688add2dccfd391b36a1f000bea
XCLMGMT : 2.14.354, 43926231f7183688add2dccfd391b36a1f000bea
Devices present
BDF : Shell Platform UUID Device ID Device Ready*
---------------------------------------------------------------------------------------------------------------------------
[0000:3b:00.0] : xilinx_u280_gen3x16_xdma_base_1 283BAB8F-654D-8674-968F-4DA57F7FA5D7
The tutorial is for Alveo U250 card, but I tried my best to adapt it to Alveo U280 card. The configuration file u280.cfg located in the same directory as source file host.cpp is
platform=xilinx_u280_gen3x16_xdma_1_202211_1
debug=1
save-temps=1
[connectivity]
nk=vadd:1:vadd_1
sp=vadd_1.in1:HBM[0]
sp=vadd_1.in2:HBM[0]
sp=vadd_1.out:HBM[0]
The vadd example works fine under software and hardware emulations, but it crashes on real hardware. The building process outputs no error. After hours of building, I run .app.exe.app.exe and got the following output with errors:
argc = 1
argv[0] = ./app.exe
Open the device0
terminate called after throwing an instance of 'std::runtime_error'
what(): Unexected error creating shim library name
Aborted (core dumped)
Because "Open the device0" is printed out at line 29 but "Load the xclbin ..." is not printed at line 31 of host.cpp, the problem should be at line 30:
auto device = xrt::device(device_index);
But I don't know what causes the issue at this line, while it runs well under software and hardware emulation. I tried my best to double check the steps of the tutorial and confirmed that I am doing everything I know of correctly. Can you please help me fix this issue? Thanks a lot.