1. sempingpong has a lot of scheduling latency. ncpu=8 chula; for(i in 1 2 3 4 5) time 6.sempingpong 0.27u 1.50s 3.54r 6.sempingpong 0.28u 1.46s 3.54r 6.sempingpong 0.30u 1.45s 3.55r 6.sempingpong 0.29u 1.52s 3.55r 6.sempingpong 0.27u 1.50s 3.54r 6.sempingpong chula; for(i in 1 2 3 4 5) time 6.sempingpong 0.29u 1.46s 3.53r 6.sempingpong 0.25u 1.55s 3.54r 6.sempingpong 0.27u 1.56s 3.53r 6.sempingpong 0.29u 1.53s 3.54r 6.sempingpong 0.28u 1.48s 3.53r 6.sempingpong chula; for(i in 1 2 3 4 5)time 6.lpingpong 0.09u 0.07s 0.17r 6.lpingpong 0.10u 0.07s 0.17r 6.lpingpong 0.10u 0.06s 0.17r 6.lpingpong 0.10u 0.06s 0.17r 6.lpingpong 0.10u 0.06s 0.17r 6.lpingpong chula; cpu -h chula ; cpu -h chula chula; wc -l /dev/sysstat 2 /dev/sysstat chula; for(i in 1 2 3 4 5) time 6.sempingpong 0.25u 1.47s 3.54r 6.sempingpong 0.30u 1.49s 3.53r 6.sempingpong 0.29u 1.41s 3.53r 6.sempingpong 0.28u 1.45s 3.53r 6.sempingpong 0.25u 1.42s 3.54r 6.sempingpong chula# for(i in seq 1 2 3 4 5)time 6.lpingpong 0.10u 0.06s 0.17r 6.lpingpong 0.10u 0.07s 0.17r 6.lpingpong 0.10u 0.07s 0.17r 6.lpingpong 0.10u 0.06s 0.17r 6.lpingpong 0.11u 0.05s 0.17r 6.lpingpong 0.10u 0.06s 0.17r 6.lpingpong chula; wc -l /dev/sysstat 1 /dev/sysstat chula; for(i in 1 2 3 4 5)time 6.sempingpong 0.30u 1.50s 3.54r 6.sempingpong 0.29u 1.48s 3.52r 6.sempingpong 0.30u 1.46s 3.53r 6.sempingpong 0.29u 1.47s 3.54r 6.sempingpong 0.32u 1.45s 3.54r 6.sempingpong chula; for(i in 1 2 3 4 5)time 6.lpingpong 0.35u 0.33s 2.32r 6.lpingpong 0.40u 0.37s 2.32r 6.lpingpong 0.37u 0.37s 2.33r 6.lpingpong 0.39u 0.38s 2.32r 6.lpingpong 0.36u 0.36s 2.33r 6.lpingpong chantest with 1 cpu 0.00u 0.00s 4.50r 6.chantestsem -O0 -R1 -T1 0.00u 0.00s 9.39r 6.chantestsem -O0 -R1 -T2 0.00u 0.00s 18.98r 6.chantestsem -O0 -R1 -T4 0.00u 0.00s 38.44r 6.chantestsem -O0 -R1 -T8 0.00u 0.00s 81.73r 6.chantestsem -O0 -R1 -T16 0.00u 0.00s 4.43r 6.chantest -O0 -R1 -T1 0.00u 0.00s 8.88r 6.chantest -O0 -R1 -T2 0.00u 0.00s 18.04r 6.chantest -O0 -R1 -T4 0.00u 0.00s 36.86r 6.chantest -O0 -R1 -T8 0.00u 0.00s 78.91r 6.chantest -O0 -R1 -T16 chantest with 2 cpu chula; echo $NPROC 2 chula; for(p in 6.chantestsem 6.chantest)for(i in 1 2 4 8 16)time $p -O0 -R1 -T^$i>/dev/null 0.00u 0.00s 4.47r 6.chantestsem -O0 -R1 -T1 0.00u 0.00s 9.22r 6.chantestsem -O0 -R1 -T2 0.00u 0.00s 21.25r 6.chantestsem -O0 -R1 -T4 0.00u 0.00s 43.74r 6.chantestsem -O0 -R1 -T8 0.00u 0.00s 97.08r 6.chantestsem -O0 -R1 -T16 0.00u 0.00s 4.41r 6.chantest -O0 -R1 -T1 0.00u 0.00s 8.85r 6.chantest -O0 -R1 -T2 0.00u 0.00s 17.97r 6.chantest -O0 -R1 -T4 0.00u 0.00s 36.60r 6.chantest -O0 -R1 -T8 0.00u 0.00s 78.69r 6.chantest -O0 -R1 -T16 chantest with 4 cpu for(i in 1 2 4 8 16)time 6.chantest -O0 -R1 -T^$i chula; for(i in 1 2 4 8 16)time 6.chantest -O0 -R1 -T^$i 0.00u 0.00s 4.38r 6.chantest -O0 -R1 -T1 0.00u 0.00s 8.89r 6.chantest -O0 -R1 -T2 0.00u 0.00s 17.94r 6.chantest -O0 -R1 -T4 0.00u 0.00s 36.58r 6.chantest -O0 -R1 -T8 0.00u 0.00s 78.38r 6.chantest -O0 -R1 -T16 chula; for(i in 1 2 4 8 16)time 6.chantestsem -O0 -R1 -T^$i 0.00u 0.00s 4.47r 6.chantestsem -O0 -R1 -T1 0.00u 0.00s 9.32r 6.chantestsem -O0 -R1 -T2 0.00u 0.00s 21.89r 6.chantestsem -O0 -R1 -T4 0.00u 0.00s 49.31r 6.chantestsem -O0 -R1 -T8 0.00u 0.00s 111.94r 6.chantestsem -O0 -R1 -T16 chantest with 8 cpus chula; for(p in 6.chantestsem 6.chantest)for(i in 1 2 4 8 16)time $p -O0 -R1 -T^$i 0.00u 0.00s 4.49r 6.chantestsem -O0 -R1 -T1 0.00u 0.00s 9.41r 6.chantestsem -O0 -R1 -T2 0.00u 0.00s 21.81r 6.chantestsem -O0 -R1 -T4 0.00u 0.00s 50.85r 6.chantestsem -O0 -R1 -T8 0.00u 0.00s 113.51r 6.chantestsem -O0 -R1 -T16 0.00u 0.00s 4.38r 6.chantest -O0 -R1 -T1 0.00u 0.00s 8.87r 6.chantest -O0 -R1 -T2 0.00u 0.00s 17.97r 6.chantest -O0 -R1 -T4 0.00u 0.00s 36.66r 6.chantest -O0 -R1 -T8 0.00u 0.00s 78.74r 6.chantest -O0 -R1 -T16 improved semaphore locks. (sasser = 24 cpus) sasser; time 6.chantestsem -O0 -R1 -T12>/dev/null 0.00u 0.00s 484.95r 6.chantestsem -O0 -R1 -T12 sasser; time 6.chantest -O0 -R1 -T12>/dev/null 0.00u 0.00s 151.07r 6.chantest -O0 -R1 -T12 sasser; time 6.chantestsem3 -O0 -R1 -T12>/dev/null 0.00u 0.00s 81.72r 6.chantestsem3 -O0 -R1 -T12