Cannot run vector-add on FPGA in Devcloud jupyterLab
Hi,
I am trying to run vector-add on FPGA but failed. Here are steps I followed. Any help would be appreciate!
1: go to https://jupyter.oneapi.devcloud.intel.com/user
I assume jupyterlab include these two toolkits. Please correct me if I am wrong. Do I need to install Intel FPGA Add-On for oneAPI Base Toolkit in jupyterLab to run vector-add on FPGA?
Intel® oneAPI Base Toolkit (Base Kit), specifically the Intel® oneAPI DPC++/C++ Compiler.
Intel® FPGA Add-On for oneAPI Base Toolkit.
2: cd /home/u206702/oneAPI-samples/DirectProgramming/C++SYCL/DenseLinearAlgebra/vector-add
3: mkdir build
cd build
cmake ..
-- The CXX compiler identification is Clang 17.0.0
-- Check for working CXX compiler: /glob/development-tools/versions/oneapi/2023.2.0.1/oneapi/compiler/2023.2.1/linux/bin/icpx
-- Check for working CXX compiler: /glob/development-tools/versions/oneapi/2023.2.0.1/oneapi/compiler/2023.2.1/linux/bin/icpx -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- FPGA_DEVICE was not specified.
Configuring the design to target the default FPGA family (Intel Agilex® 7).
Please refer to the README for information on board selection.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/u206702/tmp/oneAPI-samples/DirectProgramming/C++SYCL/DenseLinearAlgebra/vector-add/build
4: make fpga_emu
Scanning dependencies of target vector-add-buffers.fpga_emu
[ 50%] Building CXX object src/CMakeFiles/vector-add-buffers.fpga_emu.dir/vector-add-buffers.cpp.o
[100%] Linking CXX executable ../vector-add-buffers.fpga_emu
[100%] Built target vector-add-buffers.fpga_emu
Scanning dependencies of target fpga_emu
[100%] Built target fpga_emu
5: ./vector-add-buffers.fpga_emu
Running on device: Intel(R) FPGA Emulation Device
Vector size: 10000
[0]: 0 + 0 = 0
[1]: 1 + 1 = 2
[2]: 2 + 2 = 4
...
[9999]: 9999 + 9999 = 19998
Vector add successfully completed on device.
6: make fpga
Scanning dependencies of target vector-add-buffers.fpga
[ 50%] Building CXX object src/CMakeFiles/vector-add-buffers.fpga.dir/vector-add-buffers.cpp.o
[100%] Linking CXX executable ../vector-add-buffers.fpga
aoc: Compiling for FPGA. This process may take several hours to complete. Prior to performing this compile, be sure to check the reports to ensure the design will meet your performance targets. If the reports indicate performance targets are not being met, code edits may be required. Please refer to the oneAPI FPGA Optimization Guide for information on performance tuning applications for FPGAs.
Error: qsys script failed! See vector-add-buffers.fpga.prj/quartus_sh_compile.log for details.
llvm-foreach:
icpx: error: fpga compiler command failed with exit code 1 (use -v to see invocation)
make[3]: *** [src/CMakeFiles/vector-add-buffers.fpga.dir/build.make:84: vector-add-buffers.fpga] Error 1
make[2]: *** [CMakeFiles/Makefile2:130: src/CMakeFiles/vector-add-buffers.fpga.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:110: src/CMakeFiles/fpga.dir/rule] Error 2
make: *** [Makefile:118: fpga] Error 2
7: vector-add-buffers.fpga.prj/quartus_sh_compile.log shows
:33 Error: set_project_property DEVICE AGFB014R24A2E2V: The device AGFB014R24A2E2V is unknown.
2023.12.06.14:39:33 Info: add_instance vector_add_buffers_fpga_di_inst vector_add_buffers_fpga_di
2023.12.06.14:39:33 Info: set_instance_property vector_add_buffers_fpga_di_inst AUTO_EXPORT true
2023.12.06.14:39:34 Info: save_system top_vector_add_buffers_fpga_di.ip