[asterisk-bugs] [Zaptel 0011188]: CPU load spikes every 10 seconds

noreply at bugs.digium.com noreply at bugs.digium.com
Tue Dec 4 16:14:02 CST 2007


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=11188 
====================================================================== 
Reported By:                dimas
Assigned To:                mattf
====================================================================== 
Project:                    Zaptel
Issue ID:                   11188
Category:                   wctdm24xxp
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     assigned
Zaptel Version:              SVN 
SVN Branch (only for SVN checkouts, not tarball releases):  1.4  
SVN Revision (number only!): 3220 
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             11-07-2007 16:17 CST
Last Modified:              12-04-2007 16:14 CST
====================================================================== 
Summary:                    CPU load spikes every 10 seconds
Description: 
While running 'top' I noticed that approximately every 10 seconds "%hi"
(hardware interrupt) CPU load jumps to about 30-60%. See Additional
Information for vmstat output.

I have TDM2400 with 2xFXO and 1xFXS module. CentOS 5 running at Intel(R)
Pentium(R) 4 CPU 1.90GHz stepping 02.

What I found out:
1. executing "modprobe -r wctdm24xxp" heals problem - spikes disappear.
But obviously I left without Zap channels in this case. 
2. spikes are present regardless if Asterisk is running or not
3. I also checked checked Zaptel 1.4.4, 1.4.6 - all demonstrate the same
behavior.
4. The system is not busy with processing any calls when these spices
occur. Basically the system is idle.

Corydon suggested me to contact support regarding this problem as they may
want to replace the whole card. Unfortunately it can take a lot of time in
my case. So first I would like to get some evidences if it is hardware or
software problem. 
Please let me know how can I collect any debugging information which could
help.
====================================================================== 

---------------------------------------------------------------------- 
 dimas - 12-04-07 16:14  
---------------------------------------------------------------------- 
Did some more digging and added accumulation of time spent in
wctdm_interrupt in nanoseconds and reporting it every second. Below is the
output for 20 successive seconds. The foemat is

>> wctdm_interrupt_INVOCATIONS / LOOP_ITERATIONS in DURATION (TIME_SPENT
us)

>> 1000/2000 in 1000 (116625 us)
>> 1000/2000 in 1000 (115610 us)
>> 1000/2000 in 1000 (117329 us)
>> 1000/2000 in 1000 (121926 us)
>> 1001/2002 in 1000 (116074 us)
>> 1000/2000 in 1000 (116344 us)
>> 1000/2000 in 1000 (116429 us)
>> 1000/2000 in 1000 (117130 us)
>> 1000/2000 in 1000 (115153 us)
>> 1000/2000 in 1000 (117435 us)
>> 1000/2000 in 1000 (116169 us)
>> 1000/2000 in 1000 (117117 us)
>> 1000/2000 in 1000 (121205 us)
>> 1000/2000 in 1000 (120779 us)
>> 1000/2000 in 1000 (116603 us)
>> 1000/2000 in 1000 (116629 us)
>> 1000/2000 in 1000 (116427 us)
>> 1000/2000 in 1000 (117241 us)
>> 1000/2000 in 1000 (116767 us)
>> 1000/2000 in 1000 (116358 us)

To me output looks like there is always 1000 interrupts each second and
time spent handling these interrupts do not change (ok, it changes within
10%) so there is nothing to explain CPU spikes.

What other piece of driver worth measuring in order to find where CPU time
is spent? 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
12-04-07 16:14  dimas          Note Added: 0074781                          
======================================================================




More information about the asterisk-bugs mailing list