Skip to content

Conversation

@sergey-semenov
Copy link
Contributor

@sergey-semenov sergey-semenov commented Jun 24, 2025

  • Rename KernelNameBasedCacheT to DeviceKernelInfo as that reflects its usage better and avoids the confusion with kernel caches.
  • Make the data presence unconditional by looking it up at runtime as a fallback. This consolidates the if branches into one and saves us a couple of map lookups with old applications.
  • Add compile time kernel information to the struct (unused for now).
  • Switch to eager initialization of the runtime data members.
  • Add cleanup of data instances when unloading a library.

@aelovikov-intel aelovikov-intel self-requested a review August 1, 2025 16:22
@sergey-semenov sergey-semenov merged commit 3717903 into intel:sycl Aug 28, 2025
27 checks passed
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Aug 29, 2025
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Aug 29, 2025
Comment on lines +60 to +62
if (isCompileTimeInfoSet())
CompileTimeKernelInfoTy::operator=(Info);
assert(isCompileTimeInfoSet());
Copy link
Contributor

Choose a reason for hiding this comment

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

@sergey-semenov , what did you mean by those lines?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Whoops, this should be if(!isCompileTimeInfoSet())

Copy link
Contributor

Choose a reason for hiding this comment

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

  1. Why isn't it failing anywhere?
  2. When I tried the change (although on top of my other changes), things broke for me. I'm not sure if it'd be clean on trunk either. Will you follow up please?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Why isn't it failing anywhere?

That probably indicates lack of test coverage for this scenario. If that's true, I don't think it's worth adding since my next PR will essentially make all kernel info behave like this (i.e. runtime information will be filled out during image registration, compile time information will be filled out during the first access to device kernel info with compile time information available).

When I tried the change (although on top of my other changes), things broke for me. I'm not sure if it'd be clean on trunk either. Will you follow up please?

I'll look into it, let's see if #20003 hits any failures in precommit.

aelovikov-intel added a commit that referenced this pull request Sep 9, 2025
…#19929)

Additional cleanups enabled by #19117.

---------

Co-authored-by: Sergey Semenov <sergey.semenov@intel.com>
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