[XviD-devel] multithreading

iibot iibot at gmx.at
Thu Jun 25 16:20:33 CEST 2009


Hallo Lars,

Lars Täuber schrieb:
> Radek Czyz <radoslaw at syskin.cjb.net> schrieb:
> yes, you're right I'm using quantized encondings with different quantizers for each frame type.
> I'd like xvid to use more of my cpu cores to encode faster. To me it seems there is much more power unused on my box.
> But I realize that can't be done with this windows compatibility in mind.
> 
> How much work is a second API for non-VfW systems and an encoding scheme like I suggested for quantized encodings?
> I wonder if the application (avidemux) could somehow emulate my suggested behaviour by starting parallel encodings of single GOPs by reading the first pass log file and cut it into pieces of GOPs at occurences of I-frames. In this situation it would be helpful to have a minimalized first and fast run of xvid to only get to know the order of frame types.
> But then the first I-frame of the following GOP can't be used for B-frame calculation at the end of the current GOP. That wouldn't be as efficient as the normal run, would it?

You are trying to re-invent what I did as a fun project a few years ago
(when nobody had more than one core) so it didn't really pick up.
It's a perl script called ELDER4xvid (parallEL encoDER for xvid) that
allowed to parallelize any two pass encode to up to 64 cores with
a) very good scaling: about 14x speedup on 16 cores and
b) very low bitrate deviation from a single threaded two pass encode

I don't work on it anymore but you could grab the code (GPL) and addapt
it to your needs.
http://www.funknmary.de/bergdichter/projekte/index.php?page=ELDER

bis besser,
Tobias



More information about the Xvid-devel mailing list