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
Implement Dynamic Command-Group feature specified in PR [[SYCL][Graph]
Add specification for kernel binary
updates](#14896). This feature enables
updating `ur_kernel_handle_t` objects in graph nodes between executions
as well as parameters and execution range of nodes.
Points to note in this change:
* The functionality is currently supported on CUDA & HIP which are used
for testing in the new E2E tests. Level Zero support will follow
shortly, resulting in the removal of the `XFAIL` labels with tracker
number from the E2E tests.
* The code for adding nodes to a graph has been refactored to split out
verification of edges, and marking memory objects used in a node, as
separate helper functions. This allows path for adding a command-group
node to do this functions over each CG in the list before creating the
node itself.
* The `dynamic_parameter_impl` code has also been refactored so the code
is shared for updating a dynamic parameter used in both a regular kernel
node and a dynamic command-group node.
* There is now no need for the `handler::setNDRangeUsed()` API now that
graph kernel nodes can update between kernels using `sycl::nd_range` and
`sycl::range`. The functionality in this method has be turned into a
no-op, however removing the method is an ABI breaking change, so it
remains guarded by the `__INTEL_PREVIEW_BREAKING_CHANGES` macro.
See the addition to the design doc for further details on the
implementation.
0 commit comments