Closed stephenswat closed 1 month ago
Hmm, not necessarily. I modified traccc using this PR and it only came to 20 files changed, 86 insertions(+), 69 deletions(-). So not that painful, really.
Since forgetting to add these calls is "only" a performance penalty in the current setup, I introduced VECMEM_FAIL_ON_ASYNC_ERRORS in https://github.com/acts-project/vecmem/pull/270.
Unfortunately, they can also be runtime errors in SYCL code if you use unordered streams.
Unfortunately there are some HIP issues after all. 😦 (Some missing return value handling was left in.)
Updated to pass the CI. @krasznaa
Currently, there is no compile-time mechanism to ensure that copy objects are properly handled, i.e. either waited for or ignored. This commit adds the
nodiscard
attribute to methods of the copy objects which return events to ensure that the compiler will issue a warning if the object is ignored.