2010/2/22 Lennart Poettering <mznyfn@xxxxxxxxxxx> > On Sun, 21.02.10 12:06, Kai Vehmanen (kvehmanen@xxxxxx) wrote: > > > > > Hi, > > > > On Thu, 11 Feb 2010, Jaroslav Kysela wrote: > > > > >> However, PA ignores the sound card's interrupts and is woken up by its > > >> own timer. > > > > > > PA can drive the wake-ups using avail_min sw parameter. If this value > is > > > high enough, no userspace wake up is called, only interrupt is > processed > > > and internal ring buffer pointers in the driver are updated. > > > > but that's unfortunately not enough. AFAIK glitch-free aims, among other > > things, to minimize power usage for battery powered devices, and to do > > that, you need to minimize hardware interrupts [1]. And for that, > > avail_min won't help. > > > > [1] this is exactly the same thing that is driving Linux tickless > > development: > > http://www.lesswatts.org/projects/tickless/ > > > > PS I do agree that avail_min is a very useful, and often overlooked > > feature, of ALSA. But in this specific case it won't help... > > We try our best to minimize wakeups by setting the minimal number of > periods in PA. Unfortunately that still means one gets 2 or 1 irqs per > buffer iteration. > > However even if we get those two wakeups, using avail_min allows us to > minimize the number of processes that are woken up on that > IRQ. i.e. if the CPU is woken up, it is still better when this only > means some IRQ in the kernel is processed, then passing it into > userspace. > > Lennart > > Has any one try the patch posted in http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/6671 >> Rewinding the ring buffer completely causes audible issues with DMAs. Previous solution didn't work with tsched=0, and used tsched_watermark for guardband, which isn't linked to hardware and could become really high if underflows occurred. Why PA alway rewind the buffer when the stream connects ? When you rewind the application pointer to hardware pointer ? _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel