-
Notifications
You must be signed in to change notification settings - Fork 754
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement Dynamic Local Accessors #16573
base: sycl
Are you sure you want to change the base?
Conversation
436771d
to
c534114
Compare
c534114
to
19c9ad1
Compare
19c9ad1
to
4567acd
Compare
4567acd
to
dfaf96f
Compare
897dbb6
to
c7fba1a
Compare
c0587c9
to
9acfb29
Compare
5a47f11
to
4824925
Compare
2467538
to
d6964ff
Compare
f13c1ec
to
5c58995
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
assert(check_value(i, Ref, HostDataAfterUpdate[i], "PtrA After Update")); | ||
} | ||
|
||
free(PtrA, Queue); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can free PtrB
too
command_graph<graph_state::modifiable> Graph, const property_list &PropList) | ||
: impl(std::make_shared<dynamic_parameter_impl>( | ||
sycl::detail::getSyclObjImpl(Graph))) { | ||
checkGraphPropertiesAndThrow(PropList); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this required for dynamic parameters? This checks for graph properties but any properties passed here should be dynamic_parameter properties (if/when they exist).
// Weak ptrs to node_impls which will be updated | ||
std::vector<std::pair<std::weak_ptr<node_impl>, int>> MNodes; | ||
// Dynamic command-groups which will be updated | ||
std::vector<DynamicCGInfo> MDynCGs; | ||
|
||
std::shared_ptr<graph_impl> MGraph; | ||
std::vector<std::byte> MValueStorage; | ||
|
||
std::unordered_map<std::shared_ptr<sycl::detail::handler_impl>, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could use a comment here explaining the purpose of this map.
@@ -3524,14 +3528,14 @@ _ZN4sycl3_V17handler20associateWithHandlerEPNS0_6detail30UnsampledImageAccessorB | |||
_ZN4sycl3_V17handler20memcpyToDeviceGlobalEPKvS3_bmm | |||
_ZN4sycl3_V17handler20setKernelCacheConfigENS1_23StableKernelCacheConfigE | |||
_ZN4sycl3_V17handler20setStateSpecConstSetEv | |||
_ZN4sycl3_V17handler21setKernelWorkGroupMemEm |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since this symbol hasn't changed but simply moved in the ordering, I've been advised previously to remove such changes from PRs (or submit them as a separate PR) to aid in reviewing these changes.
Implements the dynamic_local_accessor class which adds functionality to update local_accessors in sycl graph nodes. See reble#382 for API spec.
UR PR oneapi-src/unified-runtime#2559 is also required for testing to pass