[pulseaudio-discuss] How to decrease cpu usage?

Kelly Anderson kelly at silka.with-linux.com
Tue Aug 14 19:49:52 PDT 2012


On 08/14/2012 10:16 AM, Goldy wrote:
> Le 13/08/2012 19:40, Peter Meerwald a écrit :
>> Hello,
>>
>>> At this point, on system wide running, pulseaudio uses 34% cpu when it
>>> idles, when music is played, it uses 42%. It's a lot on the 700 mhz
>>> raspberry pi cpu, I'm pretty sure there is a way to decrease it, but
>>> documentation don't talk about this point.
>> that sounds way too high...
>> unfortunately, the Broadcom CPU does not support ARM NEON
>>
>> I found that the ARM assembler code does not improve performance on a
>> Cortex-A8, maybe it also helps to disable on the Raspberry?
>>
>>> I don't use the raspberry internal sound card, I plugged a little usb
>>> Terratec aureon sound card, it works very well excepted the cpu usage...
>> would be interesting to find out where the CPU time is spent; in
>> PulseAudio or somethere in the USB stack...
>>
>> do you have a chance to do some profiling? maybe you can get oprofile to
>> work?
>>
>> regards, p.
>>
> Unfortunately, oprofile seems not to be working on raspberry... or I
> didn't use it properly.
>
> I followed the instructions here
> http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/Developer/OProfile
> and I always get this :
>
>> % sudo opreport -l /usr/bin/pulseaudio
>> error: no sample files found: profile specification too strict ?
> If you have any advice, it would be welcomed.
>
> Thanks again
>
> Christophe
> _______________________________________________
> pulseaudio-discuss mailing list
> pulseaudio-discuss at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

In profiling with oprofile on CuBox the code that is hogging cpu is the 
Speex resampler.

I am currently trying to figure out how to get pulseaudio open without 
triggering the resampler.  There are about 3 tests in pulseaudio which 
check for
the need to resample.  If any of them evaluate as true, resampling kicks in.

To avoid resampling:

1. you can't use variable sample rate
2. the channel maps have to match
3. the sample rate has to match



More information about the pulseaudio-discuss mailing list