Skip to content

[SYCL] Fix thread safety issues in scheduler #2281

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

Merged
merged 1 commit into from
Aug 11, 2020

Conversation

alexanderfle
Copy link
Contributor

This patch fixes 2 issues in Scheduler::addCG() function which were found in the scope of the review #1872:

  1. NewCmd can be executed and removed between unique_lock and shared_lock. So it needs to be checked that NewCmd is still valid.
  2. ((ExecCGCommand *)NewCmd)->flushStreams(); looks not thread safe.

Signed-off-by: Alexander Flegontov alexander.flegontov@intel.com

Signed-off-by: Alexander Flegontov <alexander.flegontov@intel.com>
@alexanderfle alexanderfle requested a review from a team as a code owner August 7, 2020 17:49
@alexanderfle alexanderfle requested a review from v-klochkov August 7, 2020 17:49
@romanovvlad
Copy link
Contributor

@v-klochkov ping.

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.

Looks good.

@s-kanaev
Copy link
Contributor

/summary:run

@bader bader merged commit 4688cb3 into intel:sycl Aug 11, 2020
jsji pushed a commit that referenced this pull request Jan 4, 2024
When these passes are used in LLVM new pass manager, they can't be
skipped since they are not optimization passes which are optional.

Before this PR I'm seeing crash in compiler when bisecting pass manager.

Original commit:
KhronosGroup/SPIRV-LLVM-Translator@a682bb3
Chenyang-L pushed a commit that referenced this pull request Feb 18, 2025
improve benchmark scripts and add a nightly job
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants