High CPU usage with FreeBSD 7.2 for PPPoE server

Hi,

I'm using FreeBSD 7.2 to setup a PPPoE server for user management purpose. Hardware spec is Intel core2 Quad 2.66 with 4G RAM and the number of user is 100 and the bandwidth usage is about 30M. When I do top command, I noticed high CPU process for system and user but when refer to the individual CPU, the CPU usage is very low for every CPU. This problem doesn't happen to freebsd 6.x. Any idea for this?

Looking for your kind information in this matter and thank in advance.

Code:
CPU: 5.2% user, 0.0% nice, 19.0% system, 0.0% interrupt, 75.8% idle
Mem: 71M Active, 271M Inact, 150M Wired, 1016K Cache, 112M Buf, 2761M Free
Swap: 1024M Total, 1024M Free

PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND
11 root 1 171 ki31 0K 8K CPU3 3 286:04 100.00% idle: cpu3
12 root 1 171 ki31 0K 8K CPU2 2 284:09 98.88% idle: cpu2
13 root 1 171 ki31 0K 8K CPU1 1 285:07 97.46% idle: cpu1
14 root 1 171 ki31 0K 8K RUN 0 275:41 96.19% idle: cpu0
 
You should have posted load avg too. By default top displays the weighted CPU percentage. Run it as
Code:
top -P -CC
 
top -P -CC
Code:
ast pid:  3242;  load averages:  0.00,  0.10,  0.08                                                                                  up 0+00:07:59  07:35:29
75 processes:  1 running, 74 sleeping
CPU 0:  0.8% user,  0.0% nice,  1.9% system,  0.0% interrupt, 97.4% idle
CPU 1:  3.0% user,  0.0% nice,  8.2% system,  0.0% interrupt, 88.8% idle
CPU 2:  3.0% user,  0.0% nice,  5.2% system,  0.0% interrupt, 91.8% idle
CPU 3:  0.4% user,  0.0% nice,  2.2% system,  0.0% interrupt, 97.4% idle
Mem: 59M Active, 216M Inact, 40M Wired, 36K Cache, 112M Buf, 2940M Free
Swap: 1024M Total, 1024M Free
 
cktan981212 said:
top -P -CC

ast pid: 3242; load averages: 0.00, 0.10, 0.08 up 0+00:07:59 07:35:29
75 processes: 1 running, 74 sleeping
CPU 0: 0.8% user, 0.0% nice, 1.9% system, 0.0% interrupt, 97.4% idle
CPU 1: 3.0% user, 0.0% nice, 8.2% system, 0.0% interrupt, 88.8% idle
CPU 2: 3.0% user, 0.0% nice, 5.2% system, 0.0% interrupt, 91.8% idle
CPU 3: 0.4% user, 0.0% nice, 2.2% system, 0.0% interrupt, 97.4% idle
Mem: 59M Active, 216M Inact, 40M Wired, 36K Cache, 112M Buf, 2940M Free
Swap: 1024M Total, 1024M Free

This is strange as the the session is only 60+ at the moment and bandwidth utuilization is 10M+ but it take so much of System and User CPU % on core2 Quad machine. Futhermore, we test with frebsd 6.4 and it does not have such issue. The only problem we have in 6.4 is the interrupt is a bit high only. Any idea for this or we should revert back to 6.4 in order to keep the CPU low.
 
Try to revert back to freebsd 6.4 and the CPU utilization is much more lower compare to freebsd 7.2. Though 7.2 should have better performance then the previos version but it is not! Anyone willing to share the information?

Code:
last pid: 82735;  load averages:  0.77,  0.65,  0.65                                                                                  up 0+05:52:21  20:05:26
105 processes: 3 running, 102 sleeping
CPU:  0.9% user,  0.0% nice,  5.2% system,  3.5% interrupt, 90.4% idle
Mem: 60M Active, 51M Inact, 110M Wired, 112M Buf, 3034M Free
Swap: 1024M Total, 1024M Free

Code:
last pid: 82707;  load averages:  0.89,  0.66,  0.66                                                                                  up 0+05:50:37  20:03:42
104 processes: 4 running, 100 sleeping
CPU 0:  2.3% user,  0.0% nice,  6.4% system,  7.5% interrupt, 83.8% idle
CPU 1:  0.7% user,  0.0% nice,  9.7% system, 10.9% interrupt, 78.7% idle
CPU 2:  1.1% user,  0.0% nice,  3.4% system,  1.5% interrupt, 94.0% idle
CPU 3:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
Mem: 59M Active, 51M Inact, 110M Wired, 112M Buf, 3034M Free
Swap: 1024M Total, 1024M Free
 
Call me jerk, but I don't see high load.
you should see my system, when average load gets to 8.xx to 9.xx

What does top show, when all services (as many as possible) are shut down?
Also disable access for all users...
 
killasmurf86 said:
Call me jerk, but I don't see high load.
you should see my system, when average load gets to 8.xx to 9.xx

What does top show, when all services (as many as possible) are shut down?
Also disable access for all users...

If no process running, top will show idle 100%. Previously I also make a report in regarding the high CPU processing in Quagga zebra with freebsd 7.0 on last year but until now looks like no improvement in for freebsd 7.0 pertaining to CPU processing issue. You may refer to the link below for my previous post. Now all my freebsd nodes (more then 30 units) all are revert back to 6.x due to CPU processing issue. Hope this information is helpful.

http://freebsd.monkey.org/freebsd-bugs/200805/msg00227.html
 
after binary update from 7.0release to 7.2release i have up to 50-70% higher CPU usage. Kernel differences only in ULE scheduler in 7.2 release.

'top -P' show 40-50% usage interrupts of one of CPUs
and 20-30% system, but on all network adapters is turned on polling.


By rebuilding kernel with 4BSD scheduler I turn back CPU usage to previous state.

now top -P:
Code:
180 processes: 5 running, 157 sleeping, 4 zombie, 14 waiting
CPU 0:  0.0% user,  0.0% nice,  3.5% system,  3.5% interrupt, 92.9% idle
CPU 1:  7.8% user,  0.0% nice,  7.1% system,  0.0% interrupt, 85.1% idle
CPU 2:  2.1% user,  0.0% nice,  0.0% system,  0.0% interrupt, 97.9% idle
CPU 3:  0.7% user,  0.0% nice,  1.4% system,  0.7% interrupt, 97.2% idle
 
Back
Top