Sound performance problems in FreeBSD
ssouhlal at FreeBSD.org
Fri Sep 10 06:31:35 PDT 2004
> FYI, after a few IRC discussions with Markus, we've discovered that
> turning off the memory part of Gnome's System Monitor applet, would
> get rid of the skips. I believe the problem is that both sysctl and
> the sound drivers are Giant-locked, and so there is some contention.
> An easy way to reproduce these
> skips is to run `while true; do sysctl vm.vmtotal; done`, while
> playing an mp3.
In case you are interested, we've confirmed that Giant contention is
the problem: Applying the hack at
http://people.freebsd.org/~ssouhlal/giantless-sysctl.diff , which
removes Giant from sysctl, seems to stop the skips when running the
above command. Of course, it doesn't prevent skips from happening
during heavy file operation, which would probably require VFS locking
(or of course, locking the sound drivers, which is probably easier),
and maybe, a better disk scheduler.
Suleiman Souhlal | ssouhlal at vt.edu
The FreeBSD Project | ssouhlal at FreeBSD.org
More information about the freebsd-current