Skip to content

Conversation

@bso-intel
Copy link
Contributor

This PR implements the Sycl Lifetime management.
It allows Sycl RT to init / deinit plguins many times.
It also provide opportunity to manage global variables used in plugin PIs.

Signed-off-by: Byoungro So byoungro.so@intel.com

This PR implements the Sycl Lifetime management.
It allows Sycl RT to init / deinit plguins many times.
It also provide opportunity to manage global variables used in plugin PIs.

Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
@bso-intel bso-intel marked this pull request as ready for review December 23, 2020 16:50
@bso-intel bso-intel requested review from a team and smaslov-intel as code owners December 23, 2020 16:50
@bso-intel
Copy link
Contributor Author

@smaslov-intel @romanovvlad @alexbatashev
Please review.
Please note that this PR is not intended to fix all remaining memory leaks yet.
This is a required step to fix the other memory leaks.

Copy link
Contributor

@alexbatashev alexbatashev left a comment

Choose a reason for hiding this comment

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

Would be great to have some testing and a brief design overview here: https://github.com/intel/llvm/blob/sycl/sycl/doc/GlobalObjectsInRuntime.md

@bso-intel
Copy link
Contributor Author

Would be great to have some testing and a brief design overview here: https://github.com/intel/llvm/blob/sycl/sycl/doc/GlobalObjectsInRuntime.md

I will write something based on my design doc (ppt) today.

Signed-off-by: Byoungro So <byoungro.so@intel.com>
bso-intel and others added 11 commits December 24, 2020 11:19
Co-authored-by: Alexander Batashev <alexbatashev@outlook.com>
Co-authored-by: Romanov Vlad <17316488+romanovvlad@users.noreply.github.com>
Co-authored-by: Romanov Vlad <17316488+romanovvlad@users.noreply.github.com>
Co-authored-by: Romanov Vlad <17316488+romanovvlad@users.noreply.github.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
bso-intel and others added 5 commits December 25, 2020 08:12
Co-authored-by: Romanov Vlad <17316488+romanovvlad@users.noreply.github.com>
Co-authored-by: Romanov Vlad <17316488+romanovvlad@users.noreply.github.com>
Co-authored-by: Romanov Vlad <17316488+romanovvlad@users.noreply.github.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
bso-intel and others added 2 commits December 28, 2020 08:23
Co-authored-by: Romanov Vlad <17316488+romanovvlad@users.noreply.github.com>
Co-authored-by: Romanov Vlad <17316488+romanovvlad@users.noreply.github.com>
@bso-intel
Copy link
Contributor Author

@smaslov-intel Please review.

Signed-off-by: Byoungro So <byoungro.so@intel.com>
plugin. piTearDown() is going to perform any necessary tear-down process at the
plugin PI level. These two APIs allow on-demand plugin lifetime management. SYCL
RT can control the beginning and the end of the plugin.
![](images/plugin-lifetime.jpg)
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 add arrow with piPluginInit label, which goes from "Plugin Interface" to "Plugin", it should correspond to "bind plugin" arrow?
Also, could you please rename "destory plugin" to piTearDown?

bso-intel and others added 4 commits December 29, 2020 08:26
Co-authored-by: Romanov Vlad <17316488+romanovvlad@users.noreply.github.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
Signed-off-by: Byoungro So <byoungro.so@intel.com>
@bso-intel
Copy link
Contributor Author

The failure in Jenkins/Precommit is not caused by my changeset.
It seems the latest change in Jenkins/Precommit introduced this failure.
The latest 'sycl' branch already has this issue.

@romanovvlad romanovvlad merged commit f58c568 into intel:sycl Dec 30, 2020
@bso-intel
Copy link
Contributor Author

Thank you very much, Vlad.

@bso-intel bso-intel deleted the plugin-lifetime branch January 11, 2021 19:37
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