Skip to content

[SYCL][PI] Make the Plugin Interface tracing thread-safe #2948

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
Dec 25, 2020

Conversation

againull
Copy link
Contributor

No description provided.

@bader bader changed the title Make the Plugin Interface tracing thread-safe [SYCL][PI] Make the Plugin Interface tracing thread-safe Dec 23, 2020
@@ -106,6 +108,7 @@ class plugin {
private:
RT::PiPlugin MPlugin;
backend MBackend;
std::shared_ptr<std::mutex> TracingMutex;
Copy link
Contributor

Choose a reason for hiding this comment

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

Should this be

Suggested change
std::shared_ptr<std::mutex> TracingMutex;
std::shared_ptr<std::mutex> MTracingMutex;

?

@romanovvlad romanovvlad merged commit 0b4e215 into intel:sycl Dec 25, 2020
@@ -106,6 +108,7 @@ class plugin {
private:
RT::PiPlugin MPlugin;
backend MBackend;
std::shared_ptr<std::mutex> TracingMutex;
Copy link
Contributor

Choose a reason for hiding this comment

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

Could you please clarify why std::mutex is wrapped with std::shared_ptr?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Because mutex object cannot be copied.

@againull againull deleted the multithread branch December 3, 2022 00:06
jsji pushed a commit that referenced this pull request Jan 10, 2025
Adds support for SPIR-V OpBitcast instructions where the source is a pointer and the destination is not a pointer, and where the source is not a pointer and the destination is a pointer. This needs to be handled as a special case because the LLVM bitcast instruction does not support this.

Handles bitcasts between pointers and scalar integers, which is supported by all SPIR-V versions, and pointers and vectors of integers, which is supported by SPIR-V 1.5 (though only for vectors of 32-bit integers).

Original commit:
KhronosGroup/SPIRV-LLVM-Translator@aafca810e5cd645
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.

3 participants