We adopted speakrs as the diarization engine for an open-source transcription app and validated it against a GPU-optimized pyannote community-1 deployment on AMI test-16, VoxConverse dev (216 files), and a hand-labelled 66.5-min corpus. Along the way we found one correctness bug, one silent-perf bug, and built a set of CUDA-path optimizations, all with DER/bit-identity receipts. Filing over the coming days:
1 correctness fix (exclusive diarization overlap resolution), 1 one-line bug fix (multimask batching), a 3-commit CUDA perf series (vectorized VBx, fbank session pool, folded segmentation export), and a shared-sessions change enabling N concurrent diarizations at one engine's VRAM. Preferences welcome on env vars vs RuntimeConfig plumbing and std::thread vs rayon — happy to rework shape, the numbers are the point.
We adopted speakrs as the diarization engine for an open-source transcription app and validated it against a GPU-optimized pyannote community-1 deployment on AMI test-16, VoxConverse dev (216 files), and a hand-labelled 66.5-min corpus. Along the way we found one correctness bug, one silent-perf bug, and built a set of CUDA-path optimizations, all with DER/bit-identity receipts. Filing over the coming days:
1 correctness fix (exclusive diarization overlap resolution), 1 one-line bug fix (multimask batching), a 3-commit CUDA perf series (vectorized VBx, fbank session pool, folded segmentation export), and a shared-sessions change enabling N concurrent diarizations at one engine's VRAM. Preferences welcome on env vars vs
RuntimeConfigplumbing and std::thread vs rayon — happy to rework shape, the numbers are the point.