Forum Discussion

peterbuss's avatar
peterbuss
Icon for New Contributor rankNew Contributor
1 year ago

oneAPI FPGA workshop from Wednsday 24 April

Last wednsday I attended Intel OneAPI FPGA Workshop.
I was able to complete most of the lab exercises ok. Up to assigning pins, then time ran out and the vm was closed.
When I tried this lab on my on pc, I ran into an error early on in.

Lab Requirements:
Intel® oneAPI compiler v24.0
Intel® Quartus® Prime Pro Edition software v23.2
Questa* - Intel® FPGA Starter Edition
Intel® Arria® 10 SX SOC Development Kit
Visual Studio v2022 17.4.4
Visual Studio Code

Exercise
SYCL HLS Development Flow

I don't have the Arria 10 SOC development kit and have only visual studio 2019, which was accepted. I also didn't have Questa.

After setting the oneAPI environment (64bit) the following command is run
$ cmake -DFPGA_DEVICE=Arria10 .. -G “NMake Makefiles”

this works fine, then

$ nmake fpga_emu

this works fine, then

$ vector_add.fpga_emu.exe

this works fine, then

$ nmake report

this works fine, then

nmake fpga_sim

then I get an error described below.

Can anyone help?

I tried the 32bit version of the environment with no luck.

Error list:

D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\GettingStarted\fpga_compile\Ex1\build>nmake
fpga_sim

Microsoft (R) Program Maintenance Utility Version 14.29.30148.0 Copyright (C) Microsoft Corporation. All rights reserved.

[ 50%] Linking CXX executable ..\vector_add.fpga_sim.exe
Intel(R) oneAPI DPC++/C++ Compiler for applications running on Intel(R) 64, Version 2024.1.0 Build 20240308 Copyright (C) 1985-2024 Intel Corporation. All rights reserved.

warning: -reuse-exe file
'D:/Documents/FPGA/altera/oneAPIWShop/SHD23_2/Learn/SYCL_HLS/Lab/GettingStarted/fpga_compile/Ex1/build/vector_add.fpga_sim'
not found; ignored
aoc: Compiling for Simulator.
Error: Simulation system generation FAILED.
Refer to
../vector_add.fpga_sim.prj/c:/Users/peter/AppData/Local/Temp/vector_add-335614-dccdba/logs/vector_add_fpga_sim.log
for details.

Error: failed to remove
c:/Users/peter/AppData/Local/Temp/vector_add-335614-dccdba due to Can't remove directory
c:/Users/peter/AppData/Local/Temp/vector_add-335614-dccdba: Permission denied

llvm-foreach:
icx-cl: error: fpga compiler command failed with exit code 1 (use -v to see invocation) NMAKE : fatal error U1077:
'I:\Software\Intel\oneAPI\compiler\latest\bin\icx-cl.exe' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"G:\Software\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\nmake.exe"'
: return code '0x2'
Stop.
NMAKE : fatal error U1077: '"G:\Software\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\nmake.exe"'
: return code '0x2'
Stop.
NMAKE : fatal error U1077: '"G:\Software\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\nmake.exe"'
: return code '0x2'
Stop.

D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\GettingStarted\fpga_compile\Ex1\build>

That file could be removed without elevated permissions and the log dir was not there.

5 Replies

    • peterbuss's avatar
      peterbuss
      Icon for New Contributor rankNew Contributor

      I tried this and I received the same error. I then upgraded to the newest version of Quartus Prime Pro (24.1) and All the steps in exercise 1 could be completed successfully. I don't remember which version of Quartus I had previously installed. I of course also installed the newest version of Questa Starter.

      Excercise 2 however failed down the line. When running vector_add.fpga_emu.exe

      I got

      Caught a synchronous SYCL exception: Native API failed. Native API returns: -999 (Unknown PI error) -999 (Unknown PI error)

      Here's my log for step A

      ---------------------------

      oneAPI Workshop May 2024 - Exercise 2

      All steps were attemped and failed with the same error like the one from step A below. Other steps attempted were B, C, D, E.

      Excercise 3 was not attempted.


      Step A: Register-Mapped Invocation Interface and Memory_Mapped Data Interface
      ____ 1. Go to the sample directory in the command window
      a) H:\LID\Features\Interfaces\Ex2
      ____ 2. Inspect the vector_add.cpp code.
      a) Go to Visual Studio Code
      b) Navigate to the ..\Ex2\naive and open the file from the src folder
      c) This sample demonstrates a kernel that uses a register-mapped invocation interface, and a single shared memory-mapped host data interface.
      ____ 3. Configure the build directory and make build files for the Naïve sample by running the following commands on the terminal
      a) mkdir build
      b) cd build
      c) cmake -DFPGA_DEVICE=Arria10 .. -G “NMake Makefiles” -DTYPE=NAIVE
      ____ 4. Perform compilation for emulation and run the kernel on the emulator in the command window
      a) nmake fpga_emu
      b) vector_add.fpga_emu.exe -> fails - described below
      c) The console should display Passed
      ____ 1. Generate optimization report and inspect report
      a) nmake report
      b) This compilation command if successful will


      D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>nmake fpga_emu

      Microsoft (R) Program Maintenance Utility Version 14.29.30154.0
      Copyright (C) Microsoft Corporation. All rights reserved.

      [ 33%] To compile manually:
      I:/Software/Intel/oneAPI/compiler/latest/bin/icx-cl.exe -I../../../../../include -fsycl -fintelfpga -Wall /EHsc -Qactypes -DFPGA_EMULATOR -c ../naive/src/vector_add.cpp -o CMakeFiles/fpga_emu.dir/naive/src/vector_add.cpp.obj

      To link manually:
      I:/Software/Intel/oneAPI/compiler/latest/bin/icx-cl.exe -fsycl -fintelfpga -Qactypes -o vector_add.fpga_emu.exe CMakeFiles/fpga_emu.dir/naive/src/vector_add.cpp.obj
      [ 33%] Built target displayEmulationCompileCommands
      Scanning dependencies of target fpga_emu
      [ 66%] Building CXX object CMakeFiles/fpga_emu.dir/naive/src/vector_add.cpp.obj
      Intel(R) oneAPI DPC++/C++ Compiler for applications running on Intel(R) 64, Version 2024.1.0 Build 20240308
      Copyright (C) 1985-2024 Intel Corporation. All rights reserved.

      [100%] Linking CXX executable vector_add.fpga_emu.exe
      Intel(R) oneAPI DPC++/C++ Compiler for applications running on Intel(R) 64, Version 2024.1.0 Build 20240308
      Copyright (C) 1985-2024 Intel Corporation. All rights reserved.

      [100%] Built target fpga_emu

      D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>
      D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>dir
      Volume in drive D has no label.
      Volume Serial Number is 1220-8C32

      Directory of D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build

      19/05/2024 15:41 <DIR> .
      19/05/2024 15:41 <DIR> ..
      19/05/2024 15:40 12.601 CMakeCache.txt
      19/05/2024 15:41 <DIR> CMakeFiles
      19/05/2024 15:40 1.711 cmake_install.cmake
      19/05/2024 15:40 11.732 Makefile
      19/05/2024 15:41 178.176 vector_add.fpga_emu.exe
      19/05/2024 15:41 946.856 vector_add.fpga_emu.ilk
      19/05/2024 15:41 1.298.432 vector_add.fpga_emu.pdb
      6 File(s) 2.449.508 bytes
      3 Dir(s) 290.034.143.232 bytes free

      D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>vector_add.fpga_emu.exe
      Caught a synchronous SYCL exception: Native API failed. Native API returns: -999 (Unknown PI error) -999 (Unknown PI error)
      If you are targeting an FPGA hardware, ensure that your system is plugged to an FPGA board that is set up correctly

      D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>

  • aikeu's avatar
    aikeu
    Icon for Regular Contributor rankRegular Contributor

    Hi peterbuss,


    I will close the thread if no further question.


    Thanks.

    Regards,

    Aik Eu


  • aikeu's avatar
    aikeu
    Icon for Regular Contributor rankRegular Contributor

    Hi peterbuss,


    I am closing the thread for now as we do not receive any response from you on the previous question/reply/answer that we have provided. Please login to ‘https://supporttickets.intel.com’, view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.


    Thanks.

    Regards,

    Aik Eu


  • peterbuss's avatar
    peterbuss
    Icon for New Contributor rankNew Contributor

    Hi,

    I tried to post a reply yesterday, but today I see it isn't there. Today the link mentioned above https://supporttickets.intel.com does not work.

    Thank you,
    Peter BUSS

    Here is my prepared reply from yesterday.

    Should mention, that visual studio 2019 was used. Visual Studio 2022 was after the first attempt installed along with VS 2019, but the nmake failed to work, showing that only vs2019 was there but not vs 2022. So I used vs2019 for the excercises. I ran oneAPI install repare to get vs2022 to work with oneAPI.

    Exercise 1 worked fine. That is where the first problem occured.

    oneAPI Workshop May 2024 - Exercise 2

    All steps were attemped and failed with the same error like the one from step A below. Other steps attempted were B, C, D, E.

    Caught a synchronous SYCL exception: Native API failed. Native API returns: -999 (Unknown PI error) -999 (Unknown PI error)

    Excercise 3 was not attempted.


    Step A: Register-Mapped Invocation Interface and Memory_Mapped Data Interface
    ____ 1. Go to the sample directory in the command window
    a) H:\LID\Features\Interfaces\Ex2
    ____ 2. Inspect the vector_add.cpp code.
    a) Go to Visual Studio Code
    b) Navigate to the ..\Ex2\naive and open the file from the src folder
    c) This sample demonstrates a kernel that uses a register-mapped invocation interface, and a single shared memory-mapped host data interface.
    ____ 3. Configure the build directory and make build files for the Naïve sample by running the following commands on the terminal
    a) mkdir build
    b) cd build
    c) cmake -DFPGA_DEVICE=Arria10 .. -G “NMake Makefiles” -DTYPE=NAIVE
    ____ 4. Perform compilation for emulation and run the kernel on the emulator in the command window
    a) nmake fpga_emu
    b) vector_add.fpga_emu.exe -> fails - described below
    c) The console should display Passed
    ____ 1. Generate optimization report and inspect report
    a) nmake report
    b) This compilation command if successful will


    D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>nmake fpga_emu

    Microsoft (R) Program Maintenance Utility Version 14.29.30154.0
    Copyright (C) Microsoft Corporation. All rights reserved.

    [ 33%] To compile manually:
    I:/Software/Intel/oneAPI/compiler/latest/bin/icx-cl.exe -I../../../../../include -fsycl -fintelfpga -Wall /EHsc -Qactypes -DFPGA_EMULATOR -c ../naive/src/vector_add.cpp -o CMakeFiles/fpga_emu.dir/naive/src/vector_add.cpp.obj

    To link manually:
    I:/Software/Intel/oneAPI/compiler/latest/bin/icx-cl.exe -fsycl -fintelfpga -Qactypes -o vector_add.fpga_emu.exe CMakeFiles/fpga_emu.dir/naive/src/vector_add.cpp.obj
    [ 33%] Built target displayEmulationCompileCommands
    Scanning dependencies of target fpga_emu
    [ 66%] Building CXX object CMakeFiles/fpga_emu.dir/naive/src/vector_add.cpp.obj
    Intel(R) oneAPI DPC++/C++ Compiler for applications running on Intel(R) 64, Version 2024.1.0 Build 20240308
    Copyright (C) 1985-2024 Intel Corporation. All rights reserved.

    [100%] Linking CXX executable vector_add.fpga_emu.exe
    Intel(R) oneAPI DPC++/C++ Compiler for applications running on Intel(R) 64, Version 2024.1.0 Build 20240308
    Copyright (C) 1985-2024 Intel Corporation. All rights reserved.

    [100%] Built target fpga_emu

    D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>
    D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>dir
    Volume in drive D has no label.
    Volume Serial Number is 1220-8C32

    Directory of D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build

    19/05/2024 15:41 <DIR> .
    19/05/2024 15:41 <DIR> ..
    19/05/2024 15:40 12.601 CMakeCache.txt
    19/05/2024 15:41 <DIR> CMakeFiles
    19/05/2024 15:40 1.711 cmake_install.cmake
    19/05/2024 15:40 11.732 Makefile
    19/05/2024 15:41 178.176 vector_add.fpga_emu.exe
    19/05/2024 15:41 946.856 vector_add.fpga_emu.ilk
    19/05/2024 15:41 1.298.432 vector_add.fpga_emu.pdb
    6 File(s) 2.449.508 bytes
    3 Dir(s) 290.034.143.232 bytes free

    D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>vector_add.fpga_emu.exe
    Caught a synchronous SYCL exception: Native API failed. Native API returns: -999 (Unknown PI error) -999 (Unknown PI error)
    If you are targeting an FPGA hardware, ensure that your system is plugged to an FPGA board that is set up correctly

    D:\Documents\FPGA\altera\oneAPIWShop\SHD23_2\Learn\SYCL_HLS\Lab\Features\Interfaces\Ex2\build>