I beg to differ with Mr. Carvalho's assesment with this patch; it works like a charm, and then some. The rest of the message is just my analysis of the situation ran on a Dell PowerEdge 2850, dual hyperthread Xeon EM64Ts, with Debian Pure64 Sarge installed. Mr. Carvalho, is the program you tested a failure with open, or is it possible for me to have the code and try to reproduce this nevertheless? My two cents say this is going in :) And on replying, anyone, please keep me in the Cc, as I'm not subscribed. The rest of this message is just the "raw" data on my experiment. $ cat load.sh #!/bin/sh if [ $1 ] && [ -n $1 ]; then count=$1 else count=1 fi cur=0 while [ $cur -lt $count ]; do cur=$[ $cur + 1 ] if [ $cur -eq $[ $count-1 ] ] || [ $cur -eq $count ]; then nice -n 19 load_base.sh & else load_base.sh & fi done $ cat load_base.sh #!/bin/sh while true; do a=1; done $ ./load.sh 5 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3918 mjt 34 0 5660 1136 936 R 99.9 0.0 1:34.30 load_base.sh 3917 mjt 35 0 5660 1136 936 R 99.5 0.0 1:34.30 load_base.sh 3916 mjt 34 0 5660 1136 936 R 59.7 0.0 0:53.16 load_base.sh 3919 mjt 39 19 5660 1136 936 R 6.0 0.0 0:05.97 load_base.sh 3920 mjt 39 19 5660 1136 936 R 3.0 0.0 0:02.62 load_base.sh PID USER PR NI VIRT SHR S %CPU %MEM TIME+ #C COMMAND 3917 mjt 26 0 5660 936 R 99.9 0.0 3:37.61 0 load_base.sh 3918 mjt 25 0 5660 936 R 99.9 0.0 3:37.60 3 load_base.sh 3916 mjt 26 0 5660 936 R 52.7 0.0 2:02.37 2 load_base.sh 3919 mjt 39 19 5660 936 R 7.0 0.0 0:13.80 1 load_base.sh 3920 mjt 39 19 5660 936 R 3.0 0.0 0:06.05 2 load_base.sh top - 11:09:24 up 15:30, 2 users, load average: 4.99, 3.55, 1.63 PID USER PR NI VIRT SHR S %CPU %MEM TIME+ #C COMMAND 3917 mjt 25 0 5660 936 R 99.6 0.0 6:11.35 0 load_base.sh 3918 mjt 24 0 5660 936 R 99.6 0.0 6:11.34 3 load_base.sh 3916 mjt 39 0 5660 936 R 65.7 0.0 3:28.95 2 load_base.sh 3919 mjt 39 19 5660 936 R 7.0 0.0 0:23.54 1 load_base.sh 3920 mjt 39 19 5660 936 R 3.0 0.0 0:10.33 2 load_base.sh top - 11:10:57 up 15:32, 2 users, load average: 4.99, 3.94, 1.95 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3917 mjt 22 0 5660 1136 936 R 99.5 0.0 7:51.62 load_base.sh 3918 mjt 21 0 5660 1136 936 R 99.5 0.0 7:51.61 load_base.sh 3916 mjt 39 0 5660 1136 936 R 53.7 0.0 4:25.26 load_base.sh 3919 mjt 39 19 5660 1136 936 R 7.0 0.0 0:29.92 load_base.sh 3920 mjt 39 19 5660 1136 936 R 3.0 0.0 0:13.13 load_base.sh top - 11:12:32 up 15:33, 2 users, load average: 4.99, 4.22, 2.24 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ #C COMMAND 3917 mjt 35 0 5660 1136 936 R 99.9 0.0 9:28.56 0 load_base.sh 3918 mjt 34 0 5660 1136 936 R 99.5 0.0 9:28.54 3 load_base.sh 3916 mjt 35 0 5660 1136 936 R 61.7 0.0 5:19.77 2 load_base.sh 3919 mjt 39 19 5660 1136 936 R 6.0 0.0 0:36.07 1 load_base.sh 3920 mjt 39 19 5660 1136 936 R 3.0 0.0 0:15.82 2 load_base.sh $ ./load.sh 7 top - 11:13:49 up 15:35, 2 users, load average: 5.17, 4.40, 2.45 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ #C COMMAND 3952 mjt 29 0 5660 1140 936 R 99.9 0.0 0:33.53 2 load_base.sh 3950 mjt 31 0 5660 1140 936 R 99.5 0.0 0:33.33 1 load_base.sh 3953 mjt 30 0 5660 1140 936 R 55.7 0.0 0:16.82 3 load_base.sh 3951 mjt 39 0 5660 1140 936 R 43.8 0.0 0:16.70 3 load_base.sh 3949 mjt 39 0 5660 1140 936 R 23.9 0.0 0:13.18 0 load_base.sh 3954 mjt 39 19 5660 1140 936 R 2.0 0.0 0:00.64 0 load_base.sh 3955 mjt 39 19 5660 1140 936 R 2.0 0.0 0:00.64 0 load_base.sh top - 11:14:53 up 15:36, 2 users, load average: 6.38, 4.91, 2.76 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ #C COMMAND 3950 mjt 23 0 5660 1140 936 R 99.9 0.0 1:39.67 1 load_base.sh 3952 mjt 21 0 5660 1140 936 R 99.9 0.0 1:39.87 2 load_base.sh 3951 mjt 39 0 5660 1140 936 R 52.7 0.0 0:49.91 3 load_base.sh 3953 mjt 22 0 5660 1140 936 R 47.8 0.0 0:49.95 3 load_base.sh 3949 mjt 39 0 5660 1140 936 R 43.8 0.0 0:38.70 0 load_base.sh 3954 mjt 39 19 5660 1140 936 R 2.0 0.0 0:01.90 0 load_base.sh 3955 mjt 39 19 5660 1140 936 R 2.0 0.0 0:01.90 0 load_base.sh -- mjt
Attachment:
signature.asc
Description: Digital signature
- Follow-Ups:
- Re: [ck] Re: [PATCH] implement nice support across physical cpus on SMP
- From: Con Kolivas <[email protected]>
- Re: [ck] Re: [PATCH] implement nice support across physical cpus on SMP
- From: [email protected] (Markus Törnqvist)
- Re: [ck] Re: [PATCH] implement nice support across physical cpus on SMP
- References:
- [PATCH] implement nice support across physical cpus on SMP
- From: Con Kolivas <[email protected]>
- [PATCH] implement nice support across physical cpus on SMP
- Prev by Date: proc_mknod() replacement
- Next by Date: Re: [ck] Re: [PATCH] implement nice support across physical cpus on SMP
- Previous by thread: Re: [PATCH] implement nice support across physical cpus on SMP
- Next by thread: Re: [ck] Re: [PATCH] implement nice support across physical cpus on SMP
- Index(es):