agentsclimarketplace

Gpu acceleration cuda configuration

Skill HolobiomicsLab/asb-skill-collections/packs/metabolomics/lc-ms/skills/gpu-acceleration-cuda-configuration

Curated, evidence-grounded skill and software-tool collections for scientific AI agents, generated by the AgenticScienceBuilder

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill gpu-acceleration-cuda-configuration

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 14 stars14 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Use when when clustering or encoding large MS/MS spectra datasets (>1 million spectra) where CPU-only runtime exceeds practical thresholds (hours to days).

The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

6.8 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it

GPU Acceleration via CUDA Configuration

Summary

Configure and deploy CUDA-accelerated GPU computing to enable sub-15-minute clustering of large-scale mass spectrometry datasets (e.g., 25 million spectra) using hyperdimensional encoding and Hamming distance computation on NVIDIA GPUs. This skill trades GPU memory requirements for dramatic runtime reduction in compute-intensive proteomics workflows.

When to use

When clustering or encoding large MS/MS spectra datasets (>1 million spectra) where CPU-only runtime exceeds practical thresholds (hours to days). Specifically applicable when hyperdimensional computing or distance-matrix operations dominate the computational load and NVIDIA GPU hardware (GTX 1080Ti or RTX 3090) is available with sufficient VRAM.

When NOT to use

  • Input dataset is <100k spectra: CPU clustering may be faster due to GPU initialization overhead.
  • GPU with <6GB VRAM and dataset >10 million spectra: memory pressure will force excessive batch-size reduction or fail.
  • Non-NVIDIA GPU or missing CUDA toolkit: HyperSpec requires CUDA-capable hardware and has been tested only on GTX 1080Ti and RTX 3090.

Inputs

  • MGF (mass spectrometry peak) files containing raw MS/MS spectra
  • Dataset path containing one or more MGF files
  • Spectra metadata (precursor m/z, charge state, retention time, scan number)

Outputs

  • Parquet file with clustered spectra metadata (bucket, precursor_charge, precursor_mz, identifier, scan, retention_time, cluster, is_representative)
  • CSV file with cluster assignments (one spectrum and cluster label per line)
  • Checkpoint file containing encoded hypervectors (optional, for resumption)

How to apply

Install Python 3.8+ with CUDA environment and configure the GPU cluster task using the --use_gpu_cluster flag. Set batch size (default 5000 spectra per batch) to balance GPU memory usage against throughput; for large datasets like PXD000561 (25M spectra), use GTX 3090 or higher-memory GPU. Enable GPU-optimized Hamming distance kernels and HD encoding modules during spectra preprocessing. Verify CUDA device availability and monitor memory utilization during batch processing to prevent out-of-memory failures. The HD encoding module runs on GPU with batch_size parameter to trade memory for speed; lower batch_size if GPU memory is exhausted, higher batch_size if memory permits and latency is critical.

Related tools

  • HyperSpec (GPU-accelerated spectra clustering framework with CUDA kernels for HD encoding and Hamming distance computation) — https://github.com/wh-xu/Hyper-Spec
  • CUDA (GPU compute platform required for parallel HD encoding, Hamming distance matrix computation, and optional DBSCAN clustering on GPU)
  • Python 3.8+ (Runtime environment and interface for HyperSpec command-line invocation and batch parameter configuration)

Examples

python src/main.py ~/dataset/ ./output.csv --cpu_core_preprocess=4 --cluster_alg dbscan --use_gpu_cluster --cluster_charges 2 3 --eps=0.2 --batch_size=5000 --refine

Evaluation signals

  • End-to-end runtime on 25M-spectra dataset is <15 minutes on GTX 3090 (vs. hours on CPU baseline).
  • GPU memory usage (monitored via nvidia-smi) remains below device capacity throughout batch processing; no OOM errors occur.
  • Output parquet/CSV file contains cluster IDs for all input spectra with no missing or null cluster assignments.
  • Hamming distance matrices computed on GPU yield identical clustering results (cluster labels, representative spectra) compared to CPU reference implementation.
  • Batch processing completes without CUDA synchronization errors or kernel launch failures.

Limitations

  • Clustering PXD000561 (25M spectra) requires GTX 3090 with large VRAM; smaller GPUs (e.g., GTX 1080Ti) support smaller datasets only.
  • Performance gains are specific to hyperdimensional encoding and Hamming distance; standard DBSCAN on CPU may not show proportional speedup.
  • CUDA environment setup and GPU driver installation are prerequisites; not portable to CPU-only or non-NVIDIA platforms.
  • Batch size tuning is dataset- and hardware-dependent; no automatic heuristic provided for optimal batch_size selection.

Evidence

  • [intro] HyperSpec shortens the runtime on the draft human proteome dataset with 25 million spectra from a few hours to <15 minutes.: "HyperSpec shortens the runtime on the draft human proteome dataset with 25 million spectra from a few hours to <15 minutes."
  • [readme] HyperSpec requires Python 3.8+ with CUDA environment. A GPU should be installed properly.: "HyperSpec requires Python 3.8+ with CUDA environment. A GPU should be installed properly."
  • [readme] Clustering for PXD000561 dataset requires GTX 3090 with larger memory: "Clustering for PXD000561 dataset requires GTX 3090 with larger memory"
  • [readme] The encoding module is implemented and optimized for GPU for shorter runtime.: "The encoding module is implemented and optimized for GPU for shorter runtime."
  • [readme] HyperSpec implements very efficient Hamming distance computation kernels on GPU.: "HyperSpec implements very efficient Hamming distance computation kernels on GPU."
  • [readme] --batch_size The batch size for HD encoding on GPU. (default: 5000): "--batch_size The batch size for HD encoding on GPU. (default: 5000)"
  • [readme] --use_gpu_cluster Flag that determines whether to use DBSCAN on GPU. (default: True): "--use_gpu_cluster Flag that determines whether to use DBSCAN on GPU. (default: True)"

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.