2

I am using CMU Sphinx 4 to align audio with a transcript. The process has to be automated, so I've tweaked the AlignerDemo exampled and compiled it into a .jar that I execute from terminal (Ubuntu 15.04, 8GB, i5 quad).

Speed is critical, but when I run the aligner on a large audio file, I notice that the process runs on a single thread. The Sphinx 4 wiki claims to be multithreaded, but is this something I need to manually enable? If so, how?

For comparison, here are screenshots of System Monitor when running my .jar (top) vs running ffmpeg (bottom), which is multithreaded.

CMU Sphinx 4 Aligner ffmpeg video conversion

joelg
  • 357
  • 2
  • 11
  • Not a clue what cmu sphinx is but top shows a multi threaded program too, otherwise there would be only a single curve moving up and down. But "multithreaded" doesn't automatically mean well optimized, bad synchronization can easily limit concurrency to 1 active thread. It's also possible that you're I/O bound since there are several places in which cores don't spike to 100% load. In that case, a different buffering strategy might resolve that problem (and that's something the cpu devs would have to implement) – zapl Aug 19 '15 at 15:25

0 Answers0