[ENHANCEMENT]: Add a callback to the bulk_insert functions
メンテナーはふだん 2 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
まず bulk_insert 関数を見つけ、cuCollections に既存する insert API を確認します。Callback が挿入された slot と、キーがすでに存在していたかどうかを受け取る方法を決定し、その後、新しいキーと重複キーの両方について Callback の動作を示すテストを定義します。
索引モデルが issue の本文から書いたものです。
説明
Is your feature request related to a problem? Please describe.
I would like to be able to run a function on every key that is inserted by the bulk insert functions.
Describe the solution you'd like
struct MyFunctor {
void operator()(slot_type *slot, bool is_unique) {
...
}
};
my_set.insert(input.begin(), input.end(), MyFunctor());
Each insert will return the slot and whether this was an insert or the key was already there so this was just a lookup. And then I will do whatever I want with that information. For example, I could use an atomic and fill an array with unique elements, allowing me to perform "retrieve_all" during the insert without reading the table twice.
Describe alternatives you've considered
I can copy and paste all the bulk insert code into my code and then use that. The problem here is that I trust cuco to get the grid shape and everything right and if I do it this way then I might get it wrong. Also, if cuco comes up with improvements to the bulk insert, I could use them.
Additional context
No response
- 主要言語
- Cuda
- スター
- 674
- フォーク
- 123
- 平均マージ
- 4日 19時間
- マージ済み PR(30日)
- 10
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
NVIDIA/cuCollections のほかの issue
-
Add cuco::detail::stream_sync(cuda::stream_ref) to centralize CCCL version-specific API naming再び着手できるかも @0z5a が 27 日前に担当しましたが、オープン中のプルリクエストはありません。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
NVIDIA/cuCollections#840 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信
-
nvidia-runners
難易度 1/5 1〜3時間 初心者へのやさしさ 25/100
NVIDIA/cuCollections#853 ·
メンテナーはふだん 2 日以内に返信
-
topic: performance type: feature request
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
NVIDIA/cuCollections#817 · コメント 7 件 · リアクション 1 件 ·
メンテナーはふだん 2 日以内に返信
-
good first issue P2: Nice to have type: improvement
難易度 4/5 3〜5日 初心者へのやさしさ 38/100
NVIDIA/cuCollections#805 · コメント 4 件 ·
メンテナーはふだん 2 日以内に返信
-
[FEA] Add MPSC/MPMC concurrent queue再び着手できるかも @sleeepyjack が 266 日前に担当しましたが、オープン中のプルリクエストはありません。 オープンtype: feature request
NVIDIA/cuCollections#791 · 担当者 1 名 ·
メンテナーはふだん 2 日以内に返信
NVIDIA/cuCollections の issue をすべて見る
似ている issue
-
area/plugin good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
kestra-io/plugin-soda#137 ·
-
check:passed feeds:add
難易度 2/5 1時間未満 初心者へのやさしさ 62/100
-
bug server
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
neurostuff/NiMARE#1181 ·
メンテナーはふだん 1 日以内に返信
-
[Bug] build_catalog_relation raises 'Macro' object has no attribute 'config' in run-operation (breaks Elementary edr report on dbt-athena 1.11.x)対応中かも @Minhhnh が今日担当しました。 オープンtriage:product
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
dbt-labs/dbt-adapters#2222 ·
メンテナーはふだん 1 日以内に返信