[PATCH 00/11] A new srchannel based protocol for PulseAudio

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

> Okay, so second iteration. The patch is no longer a draft, and numbers
> look good; Peter Meerwald has confirmed my numbers of 15 - 25% less CPU in
> low latency scenarios (right)?

here are the benchmark results (have been in private email to David so far 
only):

measured with 'htop -d 50', accuracy +/- 0.7 probably, on beaglebaord-xm 
(ARM Cortex-A8, TI OMAP3 @ 1GHz), gcc 4.8, kernel 3.14

        srchannel               iochannel
XXX     PA      ALSA    paplay  PA      ALSA    paplay
20      25.8    19.8    5.8     28.3    19.1    9.4
40      13.5    9.2     4.6     16.3    10.1    7.3
60      11.8    7.3     3.8     12.7    7.6     6.2
80      6.4     4.1     3.0     7.4     4.4     4.2
100     5.3     3.2     2.7     5.8     3.3     3.9
150     3.2     1.8     2.1     3.7     1.9     3.0
200     3.0     1.7     2.0     3.5     1.8     2.8

perf on ALSA thread with 20 msec (srchannel)
     5.57%  pulseaudio  [kernel.kallsyms]      [k] snd_pcm_hwsync                               
     2.25%  pulseaudio  [kernel.kallsyms]      [k] finish_task_switch.isra.93                   
     2.18%  pulseaudio  [kernel.kallsyms]      [k] eventfd_write                                
     1.71%  pulseaudio  libalsa-util.so        [.] thread_func                                  
     1.69%  pulseaudio  [kernel.kallsyms]      [k] __hrtimer_start_range_ns                     
     1.56%  pulseaudio  [kernel.kallsyms]      [k] vector_swi                                   
     1.45%  pulseaudio  [kernel.kallsyms]      [k] do_sys_poll                                  
     1.42%  pulseaudio  [kernel.kallsyms]      [k] snd_pcm_status                               
     1.20%  pulseaudio  libpulsecommon-5.0.so  [.] __udivsi3                                    
     1.10%  pulseaudio  [kernel.kallsyms]      [k] clocksource_mmio_readl_up                    
     1.06%  pulseaudio  libpulsecommon-5.0.so  [.] stack_pop                                    
     0.99%  pulseaudio  [kernel.kallsyms]      [k] __fget                                       
     0.93%  pulseaudio  libpulsecommon-5.0.so  [.] stack_push                                   
     0.83%  pulseaudio  libpulsecommon-5.0.so  [.] pa_memblock_unref                            
     0.80%  pulseaudio  libpulsecore-5.0.so    [.] pa_rtpoll_run                                
     0.77%  pulseaudio  libc-2.18.so           [.] memcpy                                       
     0.76%  pulseaudio  [kernel.kallsyms]      [k] snd_pcm_sync_ptr                             
     0.72%  pulseaudio  libpulsecore-5.0.so    [.] pa_sink_input_peek                           
     0.69%  pulseaudio  [kernel.kallsyms]      [k] __copy_from_user                             
     0.65%  pulseaudio  libpulsecommon-5.0.so  [.] __udivdi3                                    
     0.63%  pulseaudio  libpulsecommon-5.0.so  [.] do_write                     

perf on ALSA thread with 20 msec (iochannel)
     4.89%  pulseaudio  [kernel.kallsyms]      [k] snd_pcm_hwsync                                  
     2.43%  pulseaudio  [kernel.kallsyms]      [k] finish_task_switch.isra.93                      
     1.67%  pulseaudio  [kernel.kallsyms]      [k] vector_swi                                      
     1.65%  pulseaudio  [kernel.kallsyms]      [k] clocksource_mmio_readl_up                       
     1.55%  pulseaudio  libalsa-util.so        [.] thread_func                                     
     1.39%  pulseaudio  [kernel.kallsyms]      [k] eventfd_write                                   
     1.25%  pulseaudio  [kernel.kallsyms]      [k] do_sys_poll                                     
     1.25%  pulseaudio  libpulsecommon-5.0.so  [.] __udivsi3                                       
     1.20%  pulseaudio  [kernel.kallsyms]      [k] snd_pcm_status                                  
     1.19%  pulseaudio  [kernel.kallsyms]      [k] __wake_up_sync_key                              
     1.13%  pulseaudio  [kernel.kallsyms]      [k] __hrtimer_start_range_ns                        
     1.02%  pulseaudio  libpulsecommon-5.0.so  [.] stack_pop                                       
     0.99%  pulseaudio  libpulsecommon-5.0.so  [.] stack_push                                      
     0.97%  pulseaudio  libpulsecommon-5.0.so  [.] do_pstream_read_write                           
     0.92%  pulseaudio  [kernel.kallsyms]      [k] __fget                                          
     0.77%  pulseaudio  libpulsecommon-5.0.so  [.] pa_memblock_unref                               
     0.69%  pulseaudio  libpulsecore-5.0.so    [.] pa_rtpoll_run                                   
     0.68%  pulseaudio  [kernel.kallsyms]      [k] __copy_from_user                                
     0.68%  pulseaudio  libc-2.18.so           [.] memcpy                     

regards, p.

-- 

Peter Meerwald
+43-664-2444418 (mobile)


[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux