Application Acceleration With FPGAs
Programmable Acceleration Cards (PACs), DCP, DLA, Software Stack, and Reference Designs
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
426 Discussions

PAC Arria 10 GX, reconfiguration not working on 1.2PV

HKim27
New Contributor I
1,253 Views

Hi, all.

I'm using a pac_a10 board and recently upgraded it to 1.2 production version.

Since then, reprogramming (partial reconfiguration) is not working.

 

Scenario here:

  1. I programmed the device with hello_world example.
aocl program acl0 $OPAE_PLATFORM_ROOT/opencl/hello_world.aocx
  1. I ran vector_add example.
cd exm_opencl_vector_add_x64_linux/vector_add make cp $OPAE_PLATFORM_ROOT/opencl/vector_add.aocx bin ./bin/host
  1. What I expect is, although the device is programmed with hello_world.aocx, it will be reprogrammed with vector_add.aocx and run smoothly, like the following sample output from https://www.intel.com/content/altera-www/global/en_us/index/documentation/fvf1521490619217.html#nms1...
Initializing OpenCL Platform: Intel(R) FPGA SDK for OpenCL(TM) Using 1 device(s) pac_a10 : PAC Arria 10 Platform (pac_a10_f200000) Using AOCX: vector_add.aocx Reprogramming device [0] with handle 1 Launching for device 0 (1000000 elements)   Time: 8.046 ms Kernel time (device 0): 3.711 ms   Verification: PASS

Instead, however, it fails with the following error.

Initializing OpenCL Platform: Intel(R) FPGA SDK for OpenCL(TM) Using 1 device(s) pac_a10 : PAC Arria 10 Platform (pac_a10_eb00000) Using AOCX: vector_add.aocx Context callback: Specified kernel was not built for any devices ERROR: CL_INVALID_KERNEL_NAME Location: host/src/main.cpp:169 Failed to create kernel Segmentation fault (core dumped)
  1. If I program the device with vector_add.aocx and run vector_add example, it runs well. So, my guess is that reprogramming is not working.

 

Anybody has some idea on this?

0 Kudos
7 Replies
Nooraini_Y_Intel
Employee
387 Views

Hi,

 

Currently I am reviewing the forum for any open questions and found this thread. I apologize that no one seems to answer this question that you posted. Since it has been a while you posted this question, I'm wondering if you have found the answer? If not, please let me know, I will try to assign/find someone to assist you. Thank you.

 

Regards,

Nooraini

 

HKim27
New Contributor I
387 Views

@NYusof​ 

 

Thank you for your attention.

I have not found the answer yet, so assist will be great. :)

JonWay_C_Intel
Employee
387 Views

Hi @HKim27​ 

 

Do you mean you configured the FPGA with hello_world.aocx, and then run the vector_add example (WITHOUT performing aocl program <device> vector_add.aocx)?

HKim27
New Contributor I
387 Views
HKim27
New Contributor I
387 Views

@JwChin​ 

Is there any update on this?

JonWay_C_Intel
Employee
387 Views

Hi @HKim27​ 

Sorry i missed your reply. Thank you for following up.

 

Could you run the below steps:

 

Could you reboot your system?

Source init_env.sh

aocl install

program a hello_world.aocx to initialize the board

aocl diagnose (it should show the status as "Passed")

Then go back to performing: https://www.intel.com/content/altera-www/global/en_us/index/documentation/fvf1521490619217.html#nms1...

 

make sure you have copied the vector_add.aocx into the "bin" folder

cp $OPAE_PLATFORM_ROOT/opencl/vector_add.aocx ./bin

 

Also, check if you have set your hugepages.

 

If this still fails, please confirm you meet the system requirement: https://www.intel.com/content/www/us/en/programmable/documentation/iyu1522005567196.html#oeh15289964...

HKim27
New Contributor I
387 Views

@JwChin​ 

I finally found the solution. (after 8 month!!!)

Initialization script inside Intel Acceleration Stack Version 1.2 (inteldevstack/init_env.sh) has this line:

export CL_CONTEXT_COMPILER_MODE_INTELFPGA=3

According to the documentation, this environment variable prevent reconfiguration during OpenCL host execution.

By unsetting this, reconfiguration works well.

Reply