Parallel video encoding

Aaron Haviland orion at parsed.net
Thu Aug 30 18:48:11 BST 2007


Kristian Erik Hermansen wrote, on Aug 30, 2007 at 12:19 EDT:
> Let's say I have a box with a multitude of CPU cores on multiple
> physical CPUs and i wanted to utilize mencoder to gain maximal total
> CPU usage.  Any ideas?  I am not sure that mencoder is fully
> multi-threaded, and even if so, it can only run on one physical CPU at
> a time, right?
> 
> $ time $(for i in $(find . -type f | grep -i foo); do mencoder "$i"; done)
> 
> Can you think of a way to make this exec all in parallel, and if so,
> and even so, would this not be efficient to do because of some
> fundamental issue?  For instance, how would this affect caching in the
> CPUs?  Considering you know the application is a video encoder, what
> properties can we exploit to gain the fastest CPU time to encode all
> the videos?  Let's say it is an arbitrary amount, but more than the
> number of cores you have.  This is an interesting problem and I should
> probably ask Pixar :-)  But you guys are a cheap start!
> -- 
> Kristian Erik Hermansen

If you use the libavcodec family, it is apparantly threaded. From
mencoder docs:

-lavcopts threads=<1-8>

Also, if you wanted to use 2-pass encoding, there ought to be something
you can do with that, as well.

-- 
Aaron Haviland
34 Wayne Ave, Dudley, MA                       home:  [508] 943 - 7974
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : https://lists.ubuntu.com/archives/ubuntu-us-ma/attachments/20070830/a3a9805a/attachment-0001.pgp 


More information about the Ubuntu-us-ma mailing list