[linux-dvb] High CPU load in "top" due to budget_av slot polling

Robert Schedel r.schedel at yahoo.de
Thu Apr 17 17:27:54 CEST 2008

Robert Schedel wrote:

> Is the 250ms timeout an approved limit? Decreasing it would push the
> load further down. Probably it still has to cover slow CAMs as well as a
> stressed PCI bus. Unfortunately, without CAM/CI I cannot make any
> statements myself.

Just got another idea to improve the code: Function 
"saa7146_wait_for_debi_done_sleep" could be reworked to use what is 
known as "truncated binary exponential backoff" algorithm. IOW, on each 
sleep duplicate the period from 1ms until a fixed maximum, e.g. 32ms. 
This way polling ends fast for those users with fast bus/CAM, and those 
requiring 200ms due to slow bus/CAM should not worry about e.g. 216ms 
response time.

My first tests look promising (load goes down to 0). However, is not the 
simple BEB algorithm already patented?


More information about the linux-dvb mailing list