Skip to content

Conversation

@cbouy
Copy link
Member

@cbouy cbouy commented Jan 19, 2026

A few things for parallel analysis:

  • Fixes using more cores slows down the fingerprint analysis #316: some adjustments to the number of processes spawned by default (capping to 10 for trajectories by default)
  • Implements a queue-based strategy for trajectories, works better than the original "chunk"-based strategy for large files
  • Adds some heuristics to chose between the chunk and queue strategies
  • Adds some docs to explain those changes
  • Enables parallel processing for WaterBridge

@github-actions
Copy link

github-actions bot commented Jan 19, 2026

Type-checking report

Difference in type-hints coverage:

47a48
>     ├── [x] test_parallel.py
52c53
< Summary: 42/42 files have complete type hints (100.0%)
---
> Summary: 43/43 files have complete type hints (100.0%)
Overview
.
├── prolif
│   ├── [x] __init__.py
│   ├── [x] _version.py
│   ├── [x] datafiles.py
│   ├── [x] exceptions.py
│   ├── [x] fingerprint.py
│   ├── [x] ifp.py
│   ├── interactions
│   │   ├── [x] __init__.py
│   │   ├── [x] base.py
│   │   ├── [x] constants.py
│   │   ├── [x] interactions.py
│   │   ├── [x] utils.py
│   │   └── [x] water_bridge.py
│   ├── [x] molecule.py
│   ├── [x] parallel.py
│   ├── [x] pickling.py
│   ├── plotting
│   │   ├── [x] __init__.py
│   │   ├── [x] barcode.py
│   │   ├── [x] complex3d.py
│   │   ├── network
│   │   │   ├── [x] __init__.py
│   │   │   └── [x] lignetwork.py
│   │   ├── [x] residues.py
│   │   └── [x] utils.py
│   ├── [x] rdkitmol.py
│   ├── [x] residue.py
│   ├── [x] typeshed.py
│   └── [x] utils.py
├── scripts
│   ├── [x] check_types.py
│   └── [x] test_build.py
└── tests
    ├── [x] __init__.py
    ├── [x] conftest.py
    ├── plotting
    │   ├── [x] __init__.py
    │   ├── [x] test_barcode.py
    │   ├── [x] test_complex3d.py
    │   ├── [x] test_network.py
    │   └── [x] test_residues.py
    ├── [x] test_fingerprint.py
    ├── [x] test_ifp.py
    ├── [x] test_interactions.py
    ├── [x] test_molecule.py
    ├── [x] test_parallel.py
    ├── [x] test_pickling.py
    ├── [x] test_residues.py
    └── [x] test_utils.py

Summary: 43/43 files have complete type hints (100.0%)
Remaining errors
Poe => mypy .
Success: no issues found in 43 source files

@codecov
Copy link

codecov bot commented Jan 19, 2026

Codecov Report

❌ Patch coverage is 93.10345% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 95.07%. Comparing base (c3bcee1) to head (8674f29).
⚠️ Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
prolif/parallel.py 91.66% 5 Missing ⚠️
prolif/fingerprint.py 93.33% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #324      +/-   ##
==========================================
- Coverage   95.11%   95.07%   -0.05%     
==========================================
  Files          23       23              
  Lines        1885     1950      +65     
==========================================
+ Hits         1793     1854      +61     
- Misses         92       96       +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@cbouy cbouy merged commit 095ca70 into master Jan 19, 2026
14 of 15 checks passed
@cbouy cbouy deleted the parallel-rework branch January 19, 2026 23:20
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.

using more cores slows down the fingerprint analysis

1 participant