Eric Eide <ee...@cs.utah.edu> writes: > I do think, though, that limiting parallelism to 4 is probably not a good > idea. [...] (Of course, I *could* test this, for some given set of > reductions, but not today. Today I need to focus on something else.)
tl;dr For high-core machines, run one interstingness test for every two cores. Details: I ran some of the C-Reduce tests on one of the machines that we are adding to Emulab. This is a Dell R430 with: two 8-core 2.4GHz Xeon CPUs, 64 GB RAM, 200 GB SSD, two 1TB disks For my tests, I only used the SSD. The machine ran Ubuntu 14.04. I used the current head of the C-Reduce "master" branch. I compiled C-Reduce using the steps shown in the Travis-CI script (on the "travis-ci-ubuntu14" branch). I modified the `run_tests' script so that I could specify the number of parallel tasks through an environment variable, "NCPUS". The interestingness tests used the installed `gcc' and the `clang' from LLVM 3.7. I ran `NCPUS=N time run_tests T' for various values of N and T. For a given test T, I ran the CPU configurations in order (N = 1..20), and I ran each configuration only once, because I am a bad and lazy experimentalist :-). The results are attached below. As shown, the minimum elapsed time occurs somewhere between N=9 and N=12. In all cases, though, the elapsed time at N=8 is pretty close to the optimum, without causing a big bloat in user and system time. For N=4, test 6 takes about a minute longer than its minimum measured time, which occurs at N=9. Eric. ------------------------------------------------------------------------------- test == 0 NCPUS 1 236.56user 120.72system 5:55.18elapsed 2 255.26user 134.08system 3:37.39elapsed 3 281.44user 155.56system 3:04.23elapsed 4 312.23user 177.10system 2:26.66elapsed 5 344.51user 196.16system 2:15.88elapsed 6 378.27user 218.38system 2:09.82elapsed <-- within 5% 7 414.33user 241.28system 2:06.64elapsed 8 447.50user 261.33system 2:04.46elapsed 9 484.69user 283.21system 2:03.80elapsed 10 520.98user 303.92system 2:03.62elapsed <-- min elapsed 11 558.43user 324.77system 2:03.77elapsed 12 600.07user 342.95system 2:04.47elapsed 13 639.41user 361.00system 2:04.79elapsed 14 679.12user 381.52system 2:05.93elapsed 15 732.34user 398.68system 2:07.41elapsed 16 777.26user 415.13system 2:09.07elapsed 17 846.23user 442.43system 2:11.68elapsed 18 906.77user 486.45system 2:15.52elapsed 19 964.08user 499.17system 2:17.20elapsed 20 1005.75user 518.71system 2:19.26elapsed ############################################################################### test == 1 NCPUS 1 24.34user 29.75system 0:53.45elapsed 2 25.94user 32.50system 0:31.32elapsed 3 28.06user 35.43system 0:24.55elapsed 4 29.64user 39.76system 0:21.59elapsed 5 31.77user 43.23system 0:20.02elapsed 6 34.72user 46.29system 0:18.94elapsed 7 36.39user 49.95system 0:18.25elapsed 8 38.49user 52.78system 0:17.68elapsed <-- within 5% 9 39.56user 55.84system 0:17.28elapsed 10 42.17user 57.66system 0:17.07elapsed 11 42.91user 60.00system 0:17.08elapsed 12 44.12user 62.28system 0:16.86elapsed <-- min elapsed 13 46.68user 63.35system 0:16.89elapsed 14 47.19user 64.96system 0:16.91elapsed 15 49.49user 66.28system 0:16.92elapsed 16 49.41user 67.99system 0:16.94elapsed 17 50.83user 69.25system 0:17.01elapsed 18 52.51user 69.98system 0:16.98elapsed 19 53.18user 71.02system 0:17.00elapsed 20 53.26user 72.64system 0:17.01elapsed ############################################################################### test == 6 NCPUS 1 1260.08user 568.53system 30:20.28elapsed 2 1387.89user 612.64system 18:54.47elapsed 3 1577.16user 715.67system 15:35.56elapsed 4 1776.64user 824.94system 14:15.95elapsed 5 1988.15user 966.87system 13:53.56elapsed <-- within 5% 6 2191.79user 1055.43system 13:22.63elapsed 7 2410.75user 1176.22system 13:16.27elapsed 8 2612.29user 1297.85system 13:16.63elapsed 9 2826.87user 1374.21system 13:13.46elapsed <-- min elapsed 10 3033.40user 1472.95system 13:18.78elapsed 11 3248.65user 1565.45system 13:23.93elapsed 12 3411.47user 1662.48system 13:30.42elapsed 13 3622.08user 1758.72system 13:40.62elapsed 14 3825.38user 1874.50system 13:54.55elapsed 15 4154.60user 2015.75system 14:13.78elapsed 16 4510.35user 2118.98system 14:31.68elapsed 17 4942.37user 2259.21system 14:59.81elapsed 18 5323.82user 2438.33system 15:29.67elapsed 19 5661.04user 2606.63system 15:56.82elapsed 20 6044.22user 2732.01system 16:27.23elapsed ############################################################################### -- ------------------------------------------------------------------------------- Eric Eide <ee...@cs.utah.edu> . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX