I am currently using an a10 reference board, and I have recently upgraded to v18.1.0. I recompiled the official helloword example, and found out the host program crashed like follows,
So, I digged into the file ./common/src/AOCLUtils/opencl.cpp, and printed out the value of variable num_devices for the clGetDeviceIDs function, and it always show a value of "33".
Therefore, in the host program of the example, I changed the device num to 32 as follow
This time, it works correctly:
Is this possibly a bug ? I am using Ubuntu 14.04, and there is no such issue with the DE5net board and v18.1 std version runtime.
Thx for the reply. I do have multiple boards on the machine. The other one is de5net. But before installing the driver for a10_ref, I have uninstalled the driver of the de5net board.
Yes, there are multiple FCD files in /opt/Intel/OpenCL/Boards/. I did not know these hidden files. Problem solved when deleted other icd files manually. Thx.
BTW, how should user properly choose between different fpga devices in the host program when multiple boards are installed on the same machine ?
How could I keep the runtime enviorment for both boards on the same machine. When I run the application for de5-net, the following error shows up:
It seems that the runtime is loading the lib file from the a10_ref BSP folder, however, I have set the AOCL_BOARD_PACEKAGE_ROOT varaible to de5-net 's BPS folder.
Check you ~/.profile; recently the installer of Quartus adds its environmental variables directly to that file which might conflict with your configuration in ~/.bashrc.
Thx for the reply. I have cleaned the envs in ~/.profile, but it still did not work correctly. I seems that the runtime always found the FCD file for de5net board as the default FCD configuration even there was another FCD for a10_ref board.