- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I have a timing violation issue given in the attached log.
I manage to compile the vector-add oneAPI example for FPGA. The quartus logs show the compile succeeded apart from the timing violation.
The 10 ps timing violation is very small and is not expected to affect runtime performance. However, the resultant binary (vector-add-buffers.fpga) gets deleted when the error is found. I tried changing the seed as suggested but it has no effect.
I managed to get make to ignore the error and not delete the file by running with
make -i fpga
(which ignores errors), but running the file with the FPGA seems to fail with this error:
Running on device: ofs_ia840fr0_usm : Intel OFS Platform (ofs_ef00000)
Vector size: 10000
An exception is caught for vector add.
terminate called after throwing an instance of 'sycl::_V1::runtime_error'
what(): Native API failed. Native API returns: -42 (PI_ERROR_INVALID_BINARY) -42 (PI_ERROR_INVALID_BINARY)
Aborted (core dumped)
I don't know if the '-42' is related to the "42" error code reported by icpx at the build stage or if it's a different issue. Any help would be appreciated.
Yours,
Karol.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hareesh,
I think I have solved my problem. I misunderstood the meaning on page 15 of the technical document for the BSP.
ofs_ia840fr0 and ofs_ia840fr0_usm are different devices and only one can be used at a time.
When I both commands as listed in the document, only the last one to be executed matters.
aocl initialize acl0 ofs_ia840fr0
aocl initialize acl0 ofs_ia840fr0_usm
The vector-add program uses buffers rather than USM by default so, the report -42 (CL_INVALID_BINARY) implies that the wrong device has been initialised.
If I only run `aocl initialize acl0 ofs_ia840fr0`, then I can run the program.
The first run of the program crashes (and this is listed as a known problem), but successive runs are successful:
testfpga@fpgadev01$ aocl initialize acl0 ofs_ia840fr0
aocl initialize: Running initialize from /opt/intel/oneapi/board/ia840f/linux64/libexec
Configuring locked memory setting
Configuring udev rules for DFL FPGA device permission
Configuring system with 2048 2M hugepages
Finished setup_permissions.sh script. All configuration settings are persistent.
Program succeed.
testfpga@fpgadev01$ ./vector-add-buffers.fpga
Running on device: ofs_ia840fr0 : Intel OFS Platform (ofs_ef00000)
Vector size: 10000
Segmentation fault (core dumped)
testfpga@fpgadev01$ ./vector-add-buffers.fpga
Running on device: ofs_ia840fr0 : Intel OFS Platform (ofs_ef00000)
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.
I hope this is helpful.
Karol.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
thanks for sharing your issue here. I am working on this issue please give me some time.
and give me some more information about your work like exactly what your trying to compiling .
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hareesh,
At the moment I'm just trying to compile the vector-add example (saved
from the oneapi-cli tool). I have not modified the example yet but plan
to use it as a basis for a particle tracking project for particle
physics. This was originally coded in PyTorch and we plan to convert it
to SYCL.
I've downloaded the BSP for the IA-840F from the Bittware developer
website.
Regards,
Karol.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am trying to duplicate your issue. but I am also facing some error issues. please give me some more time to solve the issue.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hareesh,
I think I have solved my problem. I misunderstood the meaning on page 15 of the technical document for the BSP.
ofs_ia840fr0 and ofs_ia840fr0_usm are different devices and only one can be used at a time.
When I both commands as listed in the document, only the last one to be executed matters.
aocl initialize acl0 ofs_ia840fr0
aocl initialize acl0 ofs_ia840fr0_usm
The vector-add program uses buffers rather than USM by default so, the report -42 (CL_INVALID_BINARY) implies that the wrong device has been initialised.
If I only run `aocl initialize acl0 ofs_ia840fr0`, then I can run the program.
The first run of the program crashes (and this is listed as a known problem), but successive runs are successful:
testfpga@fpgadev01$ aocl initialize acl0 ofs_ia840fr0
aocl initialize: Running initialize from /opt/intel/oneapi/board/ia840f/linux64/libexec
Configuring locked memory setting
Configuring udev rules for DFL FPGA device permission
Configuring system with 2048 2M hugepages
Finished setup_permissions.sh script. All configuration settings are persistent.
Program succeed.
testfpga@fpgadev01$ ./vector-add-buffers.fpga
Running on device: ofs_ia840fr0 : Intel OFS Platform (ofs_ef00000)
Vector size: 10000
Segmentation fault (core dumped)
testfpga@fpgadev01$ ./vector-add-buffers.fpga
Running on device: ofs_ia840fr0 : Intel OFS Platform (ofs_ef00000)
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.
I hope this is helpful.
Karol.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I had the exact same issue, thank you very much for this helpful reply!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thank you for the update. so, I am taking it as your issue has been solved. incase if you want to reopen the case please follow bellow template.
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.
![](/skins/images/45C6C2D737ED71F4C51F0145C8CB1E9C/responsive_peak/images/icon_anonymous_message.png)
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page