Skip to content
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

[GPU] Changed impls cache key type to avoid hash collisions #16130

Merged

Conversation

vladimir-paramuzov
Copy link
Contributor

Details:

  • hash_combine has high rate of hash collisions, thus updated ImplementationsCache to use kernel_impl_params as key instead of size_t (hash) and declared comparison + hash operators for impl params.

Tickets:

  • 103415

@vladimir-paramuzov vladimir-paramuzov added the category: GPU OpenVINO GPU plugin label Mar 7, 2023
@vladimir-paramuzov vladimir-paramuzov added this to the 2023.0 milestone Mar 7, 2023
@vladimir-paramuzov vladimir-paramuzov requested review from a team as code owners March 7, 2023 05:37
@vladimir-paramuzov vladimir-paramuzov force-pushed the collision_fix branch 2 times, most recently from 31a91ff to 0aad0cd Compare March 7, 2023 11:29

struct ImplHasher {
Copy link
Contributor

Choose a reason for hiding this comment

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

Does it not make sense to make this structure a part of kernel_impl_params.hpp?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Makes sense. Will update it in a next PR

@vladimir-paramuzov vladimir-paramuzov merged commit 75b48f2 into openvinotoolkit:master Mar 8, 2023
@vladimir-paramuzov vladimir-paramuzov deleted the collision_fix branch March 8, 2023 12:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: GPU OpenVINO GPU plugin
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants