[x264-devel] Re: Scalability
Mathieu Monnier
manao at melix.net
Tue Feb 27 19:27:47 CET 2007
> The new threading code is indeed better than the old one, but x264 still
> has problems scaling beyond 8 CPUs. Are there any known reasons for
> that?
Yes. X264 encodes several frames in parallel. That means a frame is
encoded while its reference(s) aren't yet completely encoded. That works
because x264 checks for the current frame that the motion vector doesn't
go in the area of the reference frame that hasn't been encoded yet.
And that is done by waiting that at least a few row(s) of macroblock in
the reference frame is encoded before starting a new frame. The
consequence is that if your video has only 36 rows ( 576p ), you can
only have at most 36 concurrent threads ( and actually half less, since
you must at least wait 2 rows ).
So 576p won't benefit from more than 18 threads.
What was your vertical resolution ?
Regards,
Mathieu
--
This is the x264-devel mailing-list
To unsubscribe, go to: http://developers.videolan.org/lists.html
More information about the x264-devel
mailing list