XRT
XRT copied to clipboard
Release Python GIL during slow load I/O
Problem solved by the commit
When using multiple FPGAs in multiple threads, loading XCLBINs cannot be performed concurrently as pyxrt holds the Python Global Interpreter Lock for the duration of the loading process.
Bug / issue (if any) fixed, which PR introduced the bug, how it was discovered
See AMD WTS support case 00410749
How problem was solved, alternative solutions (if any) and why they were rejected
GIL released during slow load operation. This fix was suggested by AMD support in November 2023, but was seemingly never submitted to the code base.
Risks (if any) associated the changes in the commit
Believed to be safe
What has been tested and how, request additional testing if necessary
AMD support said they have tested it. A Python snippet to demonstrate the original issue (and prove the fix) is available - https://gitlab.com/ska-telescope/low-cbf/ska-low-cbf-fpga/-/snippets/3613095
Documentation impact (if any)
None
andrew-bolin - is not a collaborator Can XRT admins please validate PR
Can one of the admins verify this patch?
andrew-bolin - is not a collaborator Can XRT admins please validate PR
\build