Skip to content
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

[SYCL][CUDA] Remove pi Event Callback implementation #1735

Merged
merged 3 commits into from
May 29, 2020

Conversation

Ruyk
Copy link
Contributor

@Ruyk Ruyk commented May 21, 2020

Since introduction of host tasks in #1471,
piEventCallback and related functionality is not required by the SYCL-RT.
Removing the implementation of this behaviour from the CUDA backend simplifies the submission of operations to streams and increases performance in multiple benchmarks.

Signed-off-by: Ruyman Reyes [email protected]

Since introduction of host tasks in #1471,
`piEventCallback` and related functionality is not required
by the SYCL-RT.
Removing the implementation of this behaviour from the CUDA
backend simplifies the submission of operations to streams and
overall increases performance.

Signed-off-by: Ruyman Reyes <[email protected]>
@Ruyk Ruyk requested a review from a team as a code owner May 21, 2020 09:02
@Ruyk Ruyk requested a review from smaslov-intel May 21, 2020 09:02
@Ruyk
Copy link
Contributor Author

Ruyk commented May 21, 2020

@StuartDAdams / @steffenlarsen please take a look , this is basically reverting your original work on callbacks!

@nyalloc
Copy link
Contributor

nyalloc commented May 21, 2020

It is glorious. Good riddance.

PI_CHECK_ERROR(cuEventCreate(&evEnd_, CU_EVENT_DEFAULT));

if (queue_->properties_ & PI_QUEUE_PROFILING_ENABLE) {
PI_CHECK_ERROR(cuEventCreate(&evQueued_, CU_EVENT_DEFAULT));
PI_CHECK_ERROR(cuEventCreate(&evStart_, CU_EVENT_DEFAULT));
}
} else {
cl::sycl::detail::pi::die("User-defined events not implemented");
Copy link
Contributor

@nyalloc nyalloc May 21, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be good to give more granular message so that the user knows this error is coming from the CUDA backend. Same comment on line 2709.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in adcf897

@steffenlarsen
Copy link
Contributor

LGTM!

@Ruyk Ruyk requested a review from a team as a code owner May 21, 2020 17:41
@Ruyk Ruyk requested a review from s-kanaev May 21, 2020 17:41
@bader bader added the cuda CUDA back-end label May 25, 2020
Copy link
Contributor

@s-kanaev s-kanaev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@s-kanaev
Copy link
Contributor

@Ruyk some cuda tests are failing, please fix.

@steffenlarsen
Copy link
Contributor

The test failures don't seem to be caused by this PR. I have made a separate PR to fix the tests: #1763

Copy link
Contributor

@smaslov-intel smaslov-intel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@bader
Copy link
Contributor

bader commented May 29, 2020

The test failures don't seem to be caused by this PR. I have made a separate PR to fix the tests: #1763

Any ideas how this test failure might be introduced? I thought that buildbot check should had caught such regressions.

@bader bader merged commit aa05627 into intel:sycl May 29, 2020
alexbatashev pushed a commit to alexbatashev/llvm that referenced this pull request Jun 2, 2020
* upstream/sycl:
  [SYCL] Handle KernelName templated using type with enum template argument (intel#1780)
  [SYCL] Fix KernelNameInfo generated for empty template parameter pack (intel#1775)
  [SYCL] Do not export utility methods from SYCLMemObjT (intel#1768)
  [Driver][SYCL] Fix processing when using -fsycl-link (intel#1765)
  [SYCL][NFC] Remove outdated confusing comment (intel#1779)
  [SYCL][NFC] Wrap classes in .cpp into a namespace to disable external linkage. (intel#1776)
  [SYCL][CUDA] Fixes CUDA unit tests that uses SYCL directly (intel#1763)
  [SYCL][Doc] Fix default device selection rules doc (intel#1769)
  [SYCL][CUDA] Remove pi Event Callback implementation (intel#1735)
  [SYCL] Throw exception if range/offset of kernel execution exceeds INT_MAX (intel#1713)
  [SYCL-PTX] Add intermediate layer to libclc to ease type management (intel#1712)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cuda CUDA back-end
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants