All of lore.kernel.org
 help / color / mirror / Atom feed
* HDA irq understanding
@ 2012-02-06  7:06 Raffaele Recalcati
  2012-02-06  8:15 ` David Henningsson
  0 siblings, 1 reply; 3+ messages in thread
From: Raffaele Recalcati @ 2012-02-06  7:06 UTC (permalink / raw)
  To: alsa-devel

Hi,
I know my question is quite easy for this ml, but I hope to get a little help.
I'm an embedded developer and I'm not so good with x86.
I'm trying to load the system and hear mp3 decoding getting worst, but
no way on my "Intel(R) Core(TM)2 Duo CPU P8400  @ 2.26GHz"
very basic system.
I'm trying to understand why I can't.
Using trace (the complete one is here
www.opensurf.it/trace12-02-04-19-14-48.txt_orig.lzma ) I get:

grep HDA trace12-02-04-19-14-48.txt
..
      cpu-100.sh-26486 [000]  9490.976257: irq_handler_entry: irq=21
handler=HDA Intel
      cpu-100.sh-26474 [000]  9490.984236: irq_handler_entry: irq=21
handler=HDA Intel
      cpu-100.sh-26467 [000]  9490.992220: irq_handler_entry: irq=21
handler=HDA Intel
      cpu-100.sh-26502 [000]  9491.088042: irq_handler_entry: irq=21
handler=HDA Intel
..
almost every 10msec
pulseaudio reads from /dev/snd/pcmC0D0p,
mplayer reads from pulseaudio.

How can I create context switch problem in this situation and trace is well ?
Thanks,
Raffaele

---------------------
Loading the system
---------------------
where I have lauched cpu-100.sh 20 times
$ cat cpu-100.sh
#!/bin/bash
while : ; do
true
done

I have also launched
root $ ping -l 100000 -q -s 10 -f localhost &
once

---
www.opensurf.it

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: HDA irq understanding
  2012-02-06  7:06 HDA irq understanding Raffaele Recalcati
@ 2012-02-06  8:15 ` David Henningsson
  2012-02-06 18:22   ` Raffaele Recalcati
  0 siblings, 1 reply; 3+ messages in thread
From: David Henningsson @ 2012-02-06  8:15 UTC (permalink / raw)
  To: Raffaele Recalcati; +Cc: alsa-devel

On 02/06/2012 08:06 AM, Raffaele Recalcati wrote:
> Hi,
> I know my question is quite easy for this ml, but I hope to get a little help.
> I'm an embedded developer and I'm not so good with x86.
> I'm trying to load the system and hear mp3 decoding getting worst, but
> no way on my "Intel(R) Core(TM)2 Duo CPU P8400  @ 2.26GHz"
> very basic system.
> I'm trying to understand why I can't.
> Using trace (the complete one is here
> www.opensurf.it/trace12-02-04-19-14-48.txt_orig.lzma ) I get:
>
> grep HDA trace12-02-04-19-14-48.txt
> ..
>        cpu-100.sh-26486 [000]  9490.976257: irq_handler_entry: irq=21
> handler=HDA Intel
>        cpu-100.sh-26474 [000]  9490.984236: irq_handler_entry: irq=21
> handler=HDA Intel
>        cpu-100.sh-26467 [000]  9490.992220: irq_handler_entry: irq=21
> handler=HDA Intel
>        cpu-100.sh-26502 [000]  9491.088042: irq_handler_entry: irq=21
> handler=HDA Intel
> ..
> almost every 10msec
> pulseaudio reads from /dev/snd/pcmC0D0p,
> mplayer reads from pulseaudio.
>
> How can I create context switch problem in this situation and trace is well ?
> Thanks,
> Raffaele

Sorry, is your problem that you *do* get broken audio when you load the 
system, or that you *don't* get broken audio when you load the system?

Either way, PulseAudio uses RT prio to get higher priority than your 
load scripts, so this is used in PulseAudio <=> ALSA communication, but 
not in mplayer <=> PulseAudio communication.

For the 10 msec frequency, it looks like timer-based scheduling is 
turned off (or possibly mplayer is using very small buffer sizes?). You 
might get help with this in the pulseaudio-discuss mailinglist.

-- 
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: HDA irq understanding
  2012-02-06  8:15 ` David Henningsson
@ 2012-02-06 18:22   ` Raffaele Recalcati
  0 siblings, 0 replies; 3+ messages in thread
From: Raffaele Recalcati @ 2012-02-06 18:22 UTC (permalink / raw)
  To: David Henningsson; +Cc: alsa-devel

Hi,

> Sorry, is your problem that you *do* get broken audio when you load the
> system, or that you *don't* get broken audio when you load the system?

I don't

> Either way, PulseAudio uses RT prio to get higher priority than your load
> scripts, so this is used in PulseAudio <=> ALSA communication, but not in
> mplayer <=> PulseAudio communication.

In fact the first problems appears in gnome interface
I'll do some SCHED_RR cpu loads applications.

> For the 10 msec frequency, it looks like timer-based scheduling is turned
> off (or possibly mplayer is using very small buffer sizes?). You might get
> help with this in the pulseaudio-discuss mailinglist.
>
> --
> David Henningsson, Canonical Ltd.
> http://launchpad.net/~diwic

I'll do some test changing mplayer buffer.

Thx,
-- 
Raffaele
www.opensurf.it

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-02-06 18:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-06  7:06 HDA irq understanding Raffaele Recalcati
2012-02-06  8:15 ` David Henningsson
2012-02-06 18:22   ` Raffaele Recalcati

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.