[MPlayer-users] Re: mplayer + heavy io: why ionice doesn't help?

Denis Vlasenko vda.linux at googlemail.com
Tue Aug 22 18:26:08 CEST 2006


> > I eliminated skips due to CPU and disk using
> > nice and -cache 8000. I still can make it skip
> > when my KDE background picture is changing.
> > 
> 
> I also must run mplayer at nice -20 for it to be usable.
> 
> > I think that these skips are caused by the X server.
> > It has no prioritization for request handling and
> > thus it does not paint mplayer output fast enough:
> > it needs to repaint background and semi-transparent
> > konsole(s), and that is taking a few seconds at least.
> > 
> > This is probably aggravated by serializing nature of Xlib,
> > according to:
> > 
> > http://en.wikipedia.org/wiki/XLib
> > http://en.wikipedia.org/wiki/XCB
> 
> I think the problem is also due to mplayer's faulty design.  It should
> be multithreaded and use RT threads for the time sensitive work, like
> all professional AV applications and many other consumer players do.

RT - yes, multithreaded - unsure. Witness how squid manages to
serve hundreds of simultaneous streams using just a single process.

Multithreading seems cool on the first glance and it is easier to code
than clever O_NONBLOCK/select/poll/etc stuff. However,
on single-CPU boxes, which are still a majority, multithreading
just incurs context switching penalty. It cannot magically
make CPU do more work in a unit of time.
--
vda



More information about the MPlayer-users mailing list