I’m trying to run the Yolov2 demo on a AWS F1 instance (FPGA DEV AMI version 1.4.0), but get the following error when running ./run.sh aws e2e.
INFO: Entering XYOLO WITH
Finished batch 1
[XBLAS] # kernels: 1
[0]user:0xf010:0x1d51:[???:??:0]
xclProbe found 1 FPGA slots with xocl driver running
Linux:3.10.0-862.9.1.el7.x86_64:#1 SMP Mon Jul 16 16:29:36 UTC 2018:x86_64
Distribution: CentOS Linux release 7.5.1804 (Core)
GLIBC: 2.17
XILINX_OPENCL="/home/centos/ml-suite/overlaybins/aws"
LD_LIBRARY_PATH="/home/centos/ml-suite/overlaybins/aws/runtime/lib/x86_64/:/home/centos/ml-suite/xfdnn/rt/xdnn_cpp/build/lib:/home/centos/ml-suite/xfdnn/rt/lib:/home/centos/ml-suite/ext/boost/lib:/home/centos/ml-suite/ext/zmq/libs:/home/centos/ml-suite/apps/yolo"
WARNING: AwsXcl - Cannot open userPF: /dev/dri/renderD0
WARNING: AwsXcl isGood: invalid user handle.
WARNING: xclOpen Handle check failed
[0]user:0xf010:0x1d51:[???:??:0]
device[0].user_instance : 0
WARNING: AwsXcl - Cannot open userPF: /dev/dri/renderD0
WARNING: AwsXcl isGood: invalid user handle.
ERROR: xclOpen Handle check failed
ERROR: Failed to find an OpenCL platform
I see that this issue is similar to https://github.com/Xilinx/ml-suite/issues/20. The solution mentioned therein is to ensure that sdaccel_setup.sh is sourced successfully. In my case the following are the last few output lines when sdaccel_setup.sh is sourced:
Despite this, I keep getting the error mentioned above. I also see that the sdaccel_setup.sh script sets XILINX_OPENCL to /opt/Xilinx/SDx/2017.4.rte.dyn, However, on the ml-suite README.md, it is recommended to run the script ml-suite/overlaybins/setup.sh, which sets the same variable back to /home/centos/ml-suite/overlaybins/aws. Could this be a potential mismatch issue, that is leading to the error?
Any pointers on how to resolve this error would be appreciated.
I’m trying to run the Yolov2 demo on a AWS F1 instance (FPGA DEV AMI version 1.4.0), but get the following error when running ./run.sh aws e2e.
INFO: Entering XYOLO WITH Finished batch 1 [XBLAS] # kernels: 1 [0]user:0xf010:0x1d51:[???:??:0] xclProbe found 1 FPGA slots with xocl driver running Linux:3.10.0-862.9.1.el7.x86_64:#1 SMP Mon Jul 16 16:29:36 UTC 2018:x86_64 Distribution: CentOS Linux release 7.5.1804 (Core) GLIBC: 2.17 XILINX_OPENCL="/home/centos/ml-suite/overlaybins/aws" LD_LIBRARY_PATH="/home/centos/ml-suite/overlaybins/aws/runtime/lib/x86_64/:/home/centos/ml-suite/xfdnn/rt/xdnn_cpp/build/lib:/home/centos/ml-suite/xfdnn/rt/lib:/home/centos/ml-suite/ext/boost/lib:/home/centos/ml-suite/ext/zmq/libs:/home/centos/ml-suite/apps/yolo" WARNING: AwsXcl - Cannot open userPF: /dev/dri/renderD0 WARNING: AwsXcl isGood: invalid user handle. WARNING: xclOpen Handle check failed [0]user:0xf010:0x1d51:[???:??:0] device[0].user_instance : 0 WARNING: AwsXcl - Cannot open userPF: /dev/dri/renderD0 WARNING: AwsXcl isGood: invalid user handle. ERROR: xclOpen Handle check failed ERROR: Failed to find an OpenCL platform
I see that this issue is similar to https://github.com/Xilinx/ml-suite/issues/20. The solution mentioned therein is to ensure that sdaccel_setup.sh is sourced successfully. In my case the following are the last few output lines when sdaccel_setup.sh is sourced:
echo "XOCL_DIR: /home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl" XOCL_DIR: /home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl make -C /lib/modules/3.10.0-862.9.1.el7.x86_64/build M=/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl modules make[2]: Entering directory
/usr/src/kernels/3.10.0-862.9.1.el7.x86_64' Building modules, stage 2. MODPOST 1 modules make[2]: Leaving directory
/usr/src/kernels/3.10.0-862.9.1.el7.x86_64' make[1]: Leaving directory/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl' INFO: Installing SDAccel runtime SDK_DIR = /home/centos/aws-fpga/sdk SDACCEL_DIR = /home/centos/aws-fpga/SDAccel XILINX_SDX = /opt/Xilinx/SDx/2017.4.op INSTALL_ROOT=/opt/Xilinx/SDx/2017.4.rte.dyn DSA=xilinx_aws-vu9p-f1_dynamic_5_0 make -C /home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl install make[1]: Entering directory
/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl' echo "include: -I/home/centos/aws-fpga/SDAccel/userspace/include -I/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl -I/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl/../xdma/" include: -I/home/centos/aws-fpga/SDAccel/userspace/include -I/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl -I/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl/../xdma/ echo "sdaccel_dir: /home/centos/aws-fpga/SDAccel" sdaccel_dir: /home/centos/aws-fpga/SDAccel echo "ROOT: " ROOT: echo "XOCL_DIR: /home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl" XOCL_DIR: /home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl make -C /lib/modules/3.10.0-862.9.1.el7.x86_64/build M=/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl modules make[2]: Entering directory/usr/src/kernels/3.10.0-862.9.1.el7.x86_64' Building modules, stage 2. MODPOST 1 modules make[2]: Leaving directory
/usr/src/kernels/3.10.0-862.9.1.el7.x86_64' make -C /lib/modules/3.10.0-862.9.1.el7.x86_64/build M=/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl modules_install make[2]: Entering directory/usr/src/kernels/3.10.0-862.9.1.el7.x86_64' INSTALL /home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl/xocl.ko Can't read private key DEPMOD 3.10.0-862.9.1.el7.x86_64 make[2]: Leaving directory
/usr/src/kernels/3.10.0-862.9.1.el7.x86_64' depmod -a install -m 644 10-xocl.rules /etc/udev/rules.d rmmod -s xocl || true rmmod -s xdma || true rmmod -s edma_drv || true modprobe xocl make[1]: Leaving directory `/home/centos/aws-fpga/sdk/linux_kernel_drivers/xocl' install -d /opt/Xilinx/SDx/2017.4.rte.dyn/runtime/platforms/xilinx_aws-vu9p-f1_dynamic_5_0/driver install -d /opt/Xilinx/SDx/2017.4.rte.dyn/runtime/bin install -d /opt/Xilinx/SDx/2017.4.rte.dyn/runtime/lib/x86_64 install -m 755 /home/centos/aws-fpga/SDAccel/userspace/src2/libxrt-aws.so /opt/Xilinx/SDx/2017.4.rte.dyn/runtime/platforms/xilinx_aws-vu9p-f1_dynamic_5_0/driver install -m 755 /home/centos/aws-fpga/SDAccel/tools/awssak2/xbsak /opt/Xilinx/SDx/2017.4.rte.dyn/runtime/bin install -m 755 /opt/Xilinx/SDx/2017.4.op/runtime/bin/xclbincat /opt/Xilinx/SDx/2017.4.rte.dyn/runtime/bin install -m 755 /opt/Xilinx/SDx/2017.4.op/runtime/bin/xclbinsplit /opt/Xilinx/SDx/2017.4.rte.dyn/runtime/bin install -m 755 /home/centos/aws-fpga/SDAccel/aws_platform/xilinx_aws-vu9p-f1_dynamic_5_0/sw/lib/x86_64/libxilinxopencl.so /opt/Xilinx/SDx/2017.4.rte.dyn/runtime/lib/x86_64 install -m 755 /opt/Xilinx/SDx/2017.4.op/lib/lnx64.o/Default/libstdc++.so* /opt/Xilinx/SDx/2017.4.rte.dyn/runtime/lib/x86_64 Generating SDAccel F1 runtime environment setup script, /opt/Xilinx/SDx/2017.4.rte.dyn/setup.sh for bash Generating SDAccel F1 runtime environment setup script, /opt/Xilinx/SDx/2017.4.rte.dyn/setup.csh for (t)csh XILINX_OPENCL=/opt/Xilinx/SDx/2017.4.rte.dyn INFO: SDAccel runtime installed INFO: SDAccel Setup PASSEDDespite this, I keep getting the error mentioned above. I also see that the sdaccel_setup.sh script sets XILINX_OPENCL to /opt/Xilinx/SDx/2017.4.rte.dyn, However, on the ml-suite README.md, it is recommended to run the script ml-suite/overlaybins/setup.sh, which sets the same variable back to /home/centos/ml-suite/overlaybins/aws. Could this be a potential mismatch issue, that is leading to the error?
Any pointers on how to resolve this error would be appreciated.
Thanks, Shiril