Hi,
I've redirected this to freebsd-stable because, as far as I
can tell from reading the script, it has nothing to do with
the networking code. This is strictly a scripting, and most
likely process creation issue.
Your script goes through each line, creating processes on just
about every third line (each call to cat | awk etc.). I'm not
a shell script whiz but I can tell you that you need to reduce
the number of cat | lines if you want to improve performance.
As to why this is a huge issue on 4.x (hence my post to
-stable) and not on -current) I do not know.
Good luck,
George
At Thu, 7 Oct 2004 09:20:04 +0300,
donatas wrote:> i've made a simple script for correcting about 2000 user files on 30
routers from the database.
> must notice that it works fine, but only on 5.2 Machines.
> on 4.8 4.9 and 4.10 it "eats" all the cpu resources. On both(4.10
an 5.2.1) machines there is similar count of IPFW rules and both FreeBsd
versions run on similar machines
> (Intel SE7501WV2 Server Board +Xeon 2.4 HT enabled +512Mb RAM +Barracuda
120Gb)
>
> on many of those machines we are transporting internet traffic to hudge
companies and hundres of users and leaving machines with 100% cpu load for 4
hours is not a solution.
> so what might be the cause of such scripting perfomance difference between
4.10 and 5.2.1
>
> thanks for help
> ________________________________TOP ON
5.2.1____________________________________________________
> last pid: 20648; load averages: 0.49, 0.19, 0.06
up 31+19:26:49 09:00:26
> 51 processes: 5 running, 46 sleeping
> CPU states: 11.2% user, 0.0% nice, 39.8% system, 5.5% interrupt, 43.5%
idle (92.7% idle before loading the script)
> Mem: 26M Active, 185M Inact, 98M Wired, 60M Buf, 185M Free
> Swap: 999M Total, 999M Free
>
> PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU CPU
COMMAND
> 16653 root 111 0 940K 664K RUN 1 0:01 10.27% 4.64% sh
> 38797 root 96 0 12076K 11572K select 1 67:45 0.00% 0.00% ospfd
> 5706 root 8 -20 956K 664K wait 0 23:09 0.00% 0.00% sh
> 38795 root 96 0 2488K 1980K select 0 20:00 0.00% 0.00% ripd
> 5714 root 96 0 4072K 3752K select 0 6:18 0.00% 0.00% snmpd
> 49772 root 96 0 1400K 796K select 0 1:17 0.00% 0.00% ping
> 688 root 96 0 3488K 2428K select 0 0:30 0.00% 0.00% sshd
> 38793 root 96 0 2972K 2460K select 0 0:23 0.00% 0.00% zebra
> 706 root 8 0 1336K 1008K nanslp 0 0:09 0.00% 0.00% cron
> 543 root 96 0 1312K 832K select 0 0:07 0.00% 0.00%
syslogd
> 26424 maris 96 0 6220K 2956K select 1 0:01 0.00% 0.00% sshd
> 8568 root 96 0 4596K 3104K select 0 0:00 0.00% 0.00% mc
> 26439 root 5 0 1392K 1212K ttyin 1 0:00 0.00% 0.00% bash
> 8564 donatas 96 0 6220K 2956K select 0 0:00 0.00% 0.00% sshd
> 9927 root 96 0 4632K 3172K select 1 0:00 0.00% 0.00% mc
> 81579 root 8 0 1356K 1176K wait 0 0:00 0.00% 0.00% bash
> 9008 root 5 0 1332K 1152K ttyin 0 0:00 0.00% 0.00% bash
> 5211 ramas 96 0 6220K 2956K select 0 0:00 0.00% 0.00% sshd
> 9959 donatas 96 0 6220K 2956K RUN 0 0:00 0.00% 0.00% sshd
> 5741 root 8 0 1632K 1312K wait 0 0:00 0.00% 0.00% login
> 5209 root 4 0 6228K 2836K sbwait 0 0:00 0.00% 0.00% sshd
> 9957 root 4 0 6228K 2836K sbwait 0 0:00 0.00% 0.00% sshd
> 8562 root 4 0 6228K 2836K sbwait 1 0:00 0.00% 0.00% sshd
> 26422 root 4 0 6228K 2836K sbwait 0 0:00 0.00% 0.00% sshd
> 8570 root 8 0 1352K 1172K wait 0 0:00 0.00% 0.00% bash
> 9929 root 8 0 1356K 1176K wait 0 0:00 0.00% 0.00% bash
> 9962 root 8 0 1388K 1208K wait 1 0:00 0.00% 0.00% bash
> 18236 root 96 0 2284K 1540K CPU0 0 0:00 0.00% 0.00% top
> 5226 root 5 0 1356K 1176K ttyin 0 0:00 0.00% 0.00% bash
> 26426 maris 8 0 1636K 1300K wait 1 0:00 0.00% 0.00% su
> 5225 ramas 8 0 1636K 1300K wait 0 0:00 0.00% 0.00% su
> 8566 donatas 8 0 1636K 1300K wait 0 0:00 0.00% 0.00% su
> 9961 donatas 8 0 1636K 1300K wait 0 0:00 0.00% 0.00% su
> 9960 donatas 8 0 1328K 1148K wait 0 0:00 0.00% 0.00% bash
> 8565 donatas 8 0 1328K 1148K wait 1 0:00 0.00% 0.00% bash
> 26425 maris 8 0 1328K 1148K wait 0 0:00 0.00% 0.00% bash
> 5212 ramas 8 0 1328K 1148K wait 0 0:00 0.00% 0.00% bash
> 8567 root 8 0 1388K 1208K wait 0 0:00 0.00% 0.00% bash
> 5748 root 5 0 1276K 860K ttyin 0 0:00 0.00% 0.00% getty
> 5746 root 5 0 1276K 860K ttyin 1 0:00 0.00% 0.00% getty
> 5742 root 5 0 1276K 860K ttyin 1 0:00 0.00% 0.00% getty
> 5747 root 5 0 1276K 860K ttyin 1 0:00 0.00% 0.00% getty
> 5743 root 5 0 1276K 860K ttyin 1 0:00 0.00% 0.00% getty
> 5744 root 5 0 1276K 860K ttyin 1 0:00 0.00% 0.00% getty
> 5745 root 5 0 1276K 860K ttyin 1 0:00 0.00% 0.00% getty
> 20648 root 111 0 1396K 860K RUN 0 0:00 0.00% 0.00% grep
> 16650 root 8 0 916K 640K wait 0 0:00 0.00% 0.00% sh
> 16652 root -8 0 1204K 636K pipdwt 0 0:00 0.00% 0.00% cat
> _______________________________TOP ON
4.10_____________________________________________________
> last pid: 42087; load averages: 0.36, 0.08, 0.03
up 79+23:40:33 09:02:26
> 45 processes: 4 running, 41 sleeping
> CPU states: 24.3% user, 0.0% nice, 71.2% system, 4.5% interrupt, 0.0%
idle (97% idle before loading the script)
> Mem: 28M Active, 292M Inact, 84M Wired, 36K Cache, 60M Buf, 94M Free
> Swap: 1008M Total, 1008M Free
>
> PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND
> 31947 root 10 0 680K 472K wait 0:02 11.65% 4.93% sh
> 17018 root 2 0 14148K 13736K select 642:54 0.10% 0.10% ospfd
> 1811 root 2 0 3788K 3040K select 75:25 0.00% 0.00% snmpd
> 24055 root 10 -20 684K 472K wait 37:40 0.00% 0.00% sh
> 89 root 2 0 2596K 1960K select 1:25 0.00% 0.00% sshd
> 17014 root 2 0 2612K 2188K select 1:20 0.00% 0.00% zebra
> 80 root 2 0 988K 716K select 0:16 0.00% 0.00% syslogd
> 87 root 10 0 1028K 776K nanslp 0:13 0.00% 0.00% cron
> 17016 root 2 0 2028K 1608K select 0:10 0.00% 0.00% ripd
> 80454 maris 2 0 5296K 2316K select 0:00 0.00% 0.00% sshd
> 71392 root 2 0 4340K 2884K select 0:00 0.00% 0.00% mc
> 31859 root 28 0 1984K 1276K RUN 0:00 0.00% 0.00% top
> 31487 root 2 0 4144K 2736K select 0:00 0.00% 0.00% mc
> 16872 root 3 0 1800K 1536K ttyin 0:00 0.00% 0.00% bash
> 80518 root 10 0 1832K 1576K wait 0:00 0.00% 0.00% bash
> 71393 root 3 0 1828K 1584K ttyin 0:00 0.00% 0.00% bash
> 80452 root 2 0 5296K 2260K sbwait 0:00 0.00% 0.00% sshd
> 31577 root 2 0 5296K 2260K sbwait 0:00 0.00% 0.00% sshd
> 23959 root 2 0 5296K 2196K sbwait 0:00 0.00% 0.00% sshd
> 31447 root 2 0 5296K 2260K sbwait 0:00 0.00% 0.00% sshd
> 31449 donatas 2 0 5296K 2316K select 0:00 0.00% 0.00% sshd
> 1814 root 10 0 1272K 984K wait 0:00 0.00% 0.00% login
> 31488 root 10 0 1812K 1568K wait 0:00 0.00% 0.00% bash
> 31452 root 10 0 1828K 1572K wait 0:00 0.00% 0.00% bash
> 31582 root 10 0 1828K 1572K wait 0:00 0.00% 0.00% bash
> 23988 root 3 0 1816K 1560K ttyin 0:00 0.00% 0.00% bash
> 31579 donatas 28 0 5296K 2320K RUN 0:00 0.00% 0.00% sshd
> 23961 ramas 2 0 5296K 2256K select 0:00 0.00% 0.00% sshd
> 80455 maris 10 0 1792K 1532K wait 0:00 0.00% 0.00% bash
> 31450 donatas 10 0 1792K 1532K wait 0:00 0.00% 0.00% bash
> 31580 donatas 10 0 1792K 1532K wait 0:00 0.00% 0.00% bash
> 23962 ramas 10 0 1772K 1512K wait 0:00 0.00% 0.00% bash
> 1821 root 3 0 956K 660K ttyin 0:00 0.00% 0.00% getty
> 1817 root 3 0 956K 660K ttyin 0:00 0.00% 0.00% getty
> 1818 root 3 0 956K 660K ttyin 0:00 0.00% 0.00% getty
> 1820 root 3 0 956K 660K ttyin 0:00 0.00% 0.00% getty
> 1816 root 3 0 956K 660K ttyin 0:00 0.00% 0.00% getty
> 1819 root 3 0 956K 660K ttyin 0:00 0.00% 0.00% getty
> 1815 root 3 0 956K 660K ttyin 0:00 0.00% 0.00% getty
> 31944 root 10 0 636K 440K wait 0:00 0.00% 0.00% sh
> 31946 root -6 0 224K 112K pipdwt 0:00 0.00% 0.00% cat
> 40692 root 10 -20 180K 64K nanslp 0:00 0.00% 0.00% sleep
> 27 root 18 0 212K 88K pause 0:00 0.00% 0.00% adjkerntz
> 42086 root 43 0 680K 472K RUN 0:00 0.00% 0.00% sh
> 42087 root 43 0 680K 472K RUN 0:00 0.00% 0.00% sh
>
_____________________________________________________________________________________________
> also testen on 4.8, 4.9 versions - results similar to 4.10 results.
>
_____________________________________________________________________________________________
>
>
> Donatas Gendvilas
>
>
> Duomen? Perdavimo Departamentas
>
> Valdymo Centras
>
> Lithuania
>
>
>
>
>
>
> [2 script.sh <application/octet-stream (quoted-printable)>]
>
> [3 <text/plain; us-ascii (7bit)>]
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to
"freebsd-net-unsubscribe@freebsd.org"