Skip to content

[SYCL] Employ cached kernel #847

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 6 commits into from
Nov 21, 2019
Merged

Conversation

s-kanaev
Copy link
Contributor

No description provided.

@s-kanaev s-kanaev closed this Nov 19, 2019
@s-kanaev s-kanaev reopened this Nov 19, 2019
Copy link
Contributor

@KarachunIvan KarachunIvan left a comment

Choose a reason for hiding this comment

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

Left some remarks about the tests.

@s-kanaev s-kanaev force-pushed the employ-cached-kernel branch from 747b12f to 43f600c Compare November 19, 2019 16:25
Copy link
Contributor

@romanovvlad romanovvlad left a comment

Choose a reason for hiding this comment

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

Did not review test.

@s-kanaev s-kanaev force-pushed the employ-cached-kernel branch from 43f600c to 803ecb8 Compare November 20, 2019 08:10
Sergey Kanaev added 3 commits November 20, 2019 11:16
* Don't cache kernels from customly built programs, i.e:
  - built with OpenCL C source
  - built with linking of multiple SYCL/OpenCL programs
  - built with custom build options

Signed-off-by: Sergey Kanaev <[email protected]>
@s-kanaev s-kanaev force-pushed the employ-cached-kernel branch 2 times, most recently from 7eaaccc to 9e2c902 Compare November 20, 2019 08:23
@s-kanaev s-kanaev changed the title Employ cached kernel [SYCL] Employ cached kernel Nov 20, 2019
romanovvlad
romanovvlad previously approved these changes Nov 20, 2019
bader
bader previously approved these changes Nov 21, 2019
Sergey Kanaev added 2 commits November 21, 2019 11:27
Signed-off-by: Sergey Kanaev <[email protected]>
Kernel caching is only allowed for programs constructed with
context only or context and device list. Moreover the program
should be built with build_with_kernel_type method with
default build options.

Kernel caching is inadmissible for programs:
 * constructed with interoperability c-tor
 * constructed with linking c-tor
 * built with custom build options
 * built from source
 * built with distinct compile and link steps

Signed-off-by: Sergey Kanaev <[email protected]>
Copy link
Contributor

@romanovvlad romanovvlad left a comment

Choose a reason for hiding this comment

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

Restoring approve

@bader bader merged commit 4ba499c into intel:sycl Nov 21, 2019
@s-kanaev s-kanaev deleted the employ-cached-kernel branch November 21, 2019 12:47
bader pushed a commit that referenced this pull request Nov 25, 2019
This patch fixes regression introduced by #847: programs and kernels are cached when program is built with sequence of compile_with_kernel_type()/compile_with_source() and then linked with link().

By design, caching of kernels and programs is permitted only when program is built with build_with_kernel_type() using the default options.

Signed-off-by: Sergey Kanaev <[email protected]>
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.

5 participants