Skip to content

key, value store abstraction#2920

Merged
rapids-bot[bot] merged 10 commits intorapidsai:branch-22.12from
seunghwak:fea_kv_store
Nov 15, 2022
Merged

key, value store abstraction#2920
rapids-bot[bot] merged 10 commits intorapidsai:branch-22.12from
seunghwak:fea_kv_store

Conversation

@seunghwak
Copy link
Contributor

@seunghwak seunghwak commented Nov 11, 2022

  • create an abstract class to store (key, value) pairs and support searching with keys.
    • The abstract class can either use binary search or hash table (NVIDIA cuCollection) for search.
    • If value type is not directly supported by cuCollection (e.g. if not bitwise comparable or trivially copyable), we store key, value_index pairs in a cuCollection object and use the retrieved value_index to find a value.
  • Update cugraph C++ code and per_v_transform_reduce_dst_key_aggregated_outgoing_e to use this abstraction (the latter is necessary to support (key, value) pairs with thrust::tuple type values; this is necessary for Leiden).

@seunghwak seunghwak added 2 - In Progress improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Nov 11, 2022
@seunghwak seunghwak added this to the 22.12 milestone Nov 11, 2022
@seunghwak seunghwak self-assigned this Nov 11, 2022
@seunghwak seunghwak changed the title [WIP] key, value store abstraction key, value store abstraction Nov 14, 2022
@seunghwak
Copy link
Contributor Author

@naimnv Please review this, and now the per_v_transform_reduce_dst_key_aggregated_outoing_e primitive is updated to support thrust::tuple type value.

@seunghwak seunghwak marked this pull request as ready for review November 14, 2022 19:51
@seunghwak seunghwak requested a review from a team as a code owner November 14, 2022 19:51
@ChuckHastings
Copy link
Collaborator

@gpucibot merge

@rapids-bot rapids-bot bot merged commit 93da78c into rapidsai:branch-22.12 Nov 15, 2022
@seunghwak seunghwak deleted the fea_kv_store branch November 21, 2022 19:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improvement / enhancement to an existing function non-breaking Non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants