[SYCL] Locks in the ProgramManager should be revisited
Open
confirmed
enhancement
runtime
- Dominant language
- LLVM
- Stars
- 1.5k
- Forks
- 854
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 137
Description
Locking in the ProgramManager should be revisited, as:
- It is possible for some maps/caches to be accessed by multiple threads simultaneously, yet access to said maps/caches are not guarded by a lock, see:
- #16836
- #18121
- Access to a lot of maps/caches are guarded by `m_KernelIDsMutex` that do not seem related to the Kernel ID cache: Either way, introducing more mutexes may enable more threads to do more at the same time.
- e.g. `m_ExportedSymbolImages`, `m_DeviceImages`, `m_VFSet2BinImage`, please see program_manager.hpp
Contributor guide
Assessment
This issue has not been assessed yet.