Skip to content

Boutheine/hmmstr runtime optimizations - #12

Open
boutheinet wants to merge 2 commits into
masterfrom
boutheine/hmmstr-changes
Open

Boutheine/hmmstr runtime optimizations#12
boutheinet wants to merge 2 commits into
masterfrom
boutheine/hmmstr-changes

Conversation

@boutheinet

Copy link
Copy Markdown
Collaborator

This PR introduces three major performance optimizations to HMMSTR: parallelized model building (build_all), parallelized peak calling (call_peaks and call_peaks_stranded), and a fix for the BAM ingestion bottleneck by replacing the lazy pool.imap() + worker wrapper with eager pool.apply_async(). The original code processed targets serially using pandas.apply(), leaving CPU cores idle; these changes enable full utilization of available cores by distributing independent per‑target work across workers. Additionally, I fixed a bug where import numpy as np was commented out (causing --stranded_report to crash), corrected --cluster_only behavior so counts files are preserved when needed, and removed unused imports for cleaner code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant