You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
DPPL creates queues in the queue manager using explicit queue(const device &syclDevice) signature constructor.
Although I do not have an explicit spec reference, I was told that this would create "new instance of sycl context for every constructor call".
To ensure that SYCL runtime facilitates data traffic between compatible devices, associated queues should be created using the same context which is associated with the widest set of compatible devices on the same SYCL platform.
This is an issue to ensure that this is being doing in the DPPL queue manager.
This also implies that data structures-backed by USM require special handling when they are passed between different SYCL contexts. SYCL USM grants unified access within a context but not necessarily within an application.
It is probably ok to start with supporting a single context and handle cross-context issues later.
The thing I do not yet understand is why DPC++ spawns a huge number of TBB threads when we call the context constructor that accepts a vector of devices for OpenCL. For Level-0 the issue happens even with the context constructor with a single device. The following warning gets printed out:
TBB Warning: The number of workers is currently limited to 7. The request for 31 workers is ignored. Further requests for more workers will be silently ignored until the limit changes.
DPPL creates queues in the queue manager using
explicit queue(const device &syclDevice)
signature constructor.Although I do not have an explicit spec reference, I was told that this would create "new instance of sycl context for every constructor call".
To ensure that SYCL runtime facilitates data traffic between compatible devices, associated queues should be created using the same context which is associated with the widest set of compatible devices on the same SYCL platform.
This is an issue to ensure that this is being doing in the DPPL queue manager.
@fschlimb
The text was updated successfully, but these errors were encountered: