BABAPPAlign v1.4.0
This release adds automatic hardware accelerator selection for BABAPPAlign across CUDA, Apple Silicon Metal/MPS, and CPU.
BABAPPAlign now uses --device auto by default and selects the fastest usable backend in this order:
- CUDA
- Apple Silicon Metal/MPS
- CPU fallback
Each accelerator is checked with a small runtime tensor probe before use, so systems where PyTorch reports a backend but cannot actually execute on it will safely fall back to CPU with a warning.
Highlights
- Added Apple Silicon Metal/MPS support
- Added automatic CUDA → MPS → CPU device selection
- Added runtime accelerator probing for safer backend selection
- Updated
babappalignandbabappascoreCLIs to support:--device auto--device cpu--device cuda--device mps
- Removed Conda
cpuonlypin to allow accelerator-capable PyTorch builds - Updated README and installation documentation
- Cleaned release packaging metadata and artifacts
- Added device-selection tests
Validation
Validated locally on Apple Silicon:
--device autoselectedmps- Protein alignment completed successfully on MPS
- Codon alignment completed successfully on MPS
babappascorematrix generation completed successfully on MPS- Test suite passed:
6 passed
The affine-gap dynamic programming alignment core is unchanged. Hardware acceleration affects performance only, not alignment correctness.