[Flac] FLAC: multiple core support

Brian Willoughby brianw at sounds.wa.com
Thu Sep 6 16:15:32 PDT 2007


Harry,

This question has already been asked on the FLAC-Dev Mailing List.  I  
thought you were reading that, too...

Any software which supports multiple processors must be multi- 
threaded.  The process of designing multi-threaded code adds  
complexity to the software, so there must be a good reason to go  
through all the trouble.  The procedure for decoding a single file  
could only benefit marginally from being multi-threaded, because most  
operations would need to wait until the previous operation was  
completed.  One section of the decoder might be able to process  
several blocks, but the overall result would still need to wait until  
all blocks are completed.  Besides, managing dynamic buffers between  
each step of the decoding process would actually require the decoder  
to do more, meaning it would slow down to an extent.  There would  
pretty much be no difference in the total time, whether single  
processor or multiple processors.

The best way to take advantage of multiple processors is to decode  
multiple FLAC files at the same time.  This will take full advantage  
of your system, provided that the disk bandwidth and memory bandwidth  
can keep up.

Brian W.


On Sep 6, 2007, at 15:32, Harry Sack wrote:

hi

has the flac encoder multi-core support (so I mean using 2 or more
cpu's simultaneously to encode 1 track at the time, not encoding 2 or
more tracks in parallel )?
And if yes, how to enable this?

thx



More information about the Flac mailing list