def what_problem_it_solves():
Cheminformatics is the part of drug discovery where molecules become data: strings, fingerprints, graphs, distances, clusters, and maps. The interesting problem is scale. A library can contain billions of possible compounds, but a scientist still needs human-scale ways to ask: which molecules are similar, which regions are diverse, and where should I look next?
Chelombus does the first pass over that enormous space. It groups molecules by similarity, builds a top-level map of cluster representatives, and lets a user move from the big picture down to individual molecules without opening a spreadsheet with billions of rows.
def how_it_works():
Each molecule is encoded as a 42-dimensional MQN fingerprint, a compact numerical description of molecular shape and composition. Those vectors are compressed into 6-byte Product Quantization codes, then assigned to one of 100,000 clusters with GPU-accelerated PQk-means.
The key engineering choice is streaming: batches move through the pipeline without requiring the entire dataset to fit in memory. Custom Triton/CUDA kernels handle the expensive assignment step, so the full Enamine REAL run finishes in about 4.5 hours on a single RTX 4070 Ti instead of about 14 days on the reference C++ pipeline.
def why_it_matters():
The point is not just speed. It changes who can work with billion-scale chemical spaces. A lab does not need a large compute cluster to cluster the dataset, and a chemist does not need to understand the compression algorithm to use the result. They get a map: nearby points mean related chemistry, sparse regions suggest diversity, and clusters become practical starting points for exploration.
The first-author paper is now published in Journal of Chemical Information and Modeling (DOI: 10.1021/acs.jcim.6c00420).
def live_platform():
Results are accessible at chelombus.gdb.tools, a Next.js + Nginx site (Dockerized, systemd-supervised) serving 180,000+ pre-generated TMAPs directly from disk with cache headers, with a UI built for fast dataset and cluster navigation.
