[ENHANCEMENT]: Add a callback to the bulk_insert functions
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
Línea de trabajo
Comienza localizando las funciones bulk_insert y revisando las APIs de insert existentes en cuCollections. Determina cómo podría un callback recibir el slot insertado y saber si la clave ya estaba presente; después, define pruebas que muestren el comportamiento del callback tanto para claves nuevas como duplicadas.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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
- Lenguaje dominante
- Cuda
- Estrellas
- 671
- Forks
- 122
- Merge medio
- 4 d 19 h
- PR fusionados (30 d)
- 10
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de NVIDIA/cuCollections
-
Add cuco::detail::stream_sync(cuda::stream_ref) to centralize CCCL version-specific API namingQuizá libre de nuevo @0z5a la tomó hace 22 días y no hay ningún pull request abierto. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
NVIDIA/cuCollections#840 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
nvidia-runners
Dificultad 1/5 1-3 horas Aptitud para principiantes 25/100
NVIDIA/cuCollections#853 ·
Los mantenedores suelen responder en 2 días
-
topic: performance type: feature request
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
NVIDIA/cuCollections#817 · 7 comentarios · 1 reacción ·
Los mantenedores suelen responder en 2 días
-
good first issue P2: Nice to have type: improvement
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
NVIDIA/cuCollections#805 · 4 comentarios ·
Los mantenedores suelen responder en 2 días
-
[FEA] Add MPSC/MPMC concurrent queueQuizá libre de nuevo @sleeepyjack la tomó hace 262 días y no hay ningún pull request abierto. Abiertotype: feature request
NVIDIA/cuCollections#791 · 1 asignado ·
Los mantenedores suelen responder en 2 días
Todos los issues de NVIDIA/cuCollections
Issues similares
-
Triage 🩺
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
[BUG] flatten_keys(inplace=True) deletes the leaves at the root of the tensordictPosiblemente ocupada @peterdsharpe la tomó hoy. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
pytorch/tensordict#2300 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
PolicyEngine/policyengine-uk#2296 ·
Los mantenedores suelen responder en 1 día
-
new contributor
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
OpenMS/OpenMS#10512 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[BUG] Angular functions reject list or scalar inputs accepted by NumPyPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
ml-explore/mlx#4678 ·
Los mantenedores suelen responder en 2 días