Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Incremental Smiles Parsing + Sanitization improvements

Abierto
#9,475 1 comentario 1 reacción 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Refactorización
Claridad
Necesita aclaración
Estado de actividad
Activo
Stack tecnológico
cpp
Área
performance

Línea de trabajo

Start with the benchmark code on the smiles-pipeline-benchmark branch and the supplied benchmark_cxsmiles.zip; the issue names no source files or tests. Compare the benchmark results with the rdkit-opt-everything branch and define one independently measurable hotspot improvement before contributing.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Smiles Parsing + Sanitization doesn't have a single giant bottleneck, but has lots of individually contributing functions. Below is a flame graph of the non-legacy workflow measured on >100k Enamine REAL molecules.

Image

Based on the flame graph hotspots, I had models look at anything that had > 1% total runtime for optimization opportunities and had them do a build/test/measure cycle. Got quite solid results, 13 valid changes (I've personally checked most of them) leading to a cumulative speedup of almost 20% e2e.

Image

This is a tracking bug for a bunch of small PRs I plan to put up to make small improvements to the pipeline performance.

Reproducing Benchmarks:

Sampling of molecules used in the benchmark:
benchmark_cxsmiles.zip

Branches with just the benchmark code, and with all of the commits stacked

Lenguaje dominante
HTML
Estrellas
3.6k
Forks
1.1k
Merge medio
3 d 8 h
PR fusionados (30 d)
44

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de rdkit/rdkit

Todos los issues de rdkit/rdkit

Issues similares

Más issues de Performance

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.