In case anyone's curious, here are the results of my quick test:
$ time java -jar HeatBugs.jar -for 10000 -repeat 12 -parallel 1 -quiet
real 0m12.452s
user 0m16.332s
sys 0m2.002s
$ time java -jar HeatBugs.jar -for 10000 -repeat 6 -parallel 2 -quiet
real 0m6.744s
user 0m17.053s
sys 0m2.008s
$ time java -jar HeatBugs.jar -for 10000 -repeat 4 -parallel 3 -quiet
real 0m6.198s
user 0m22.361s
sys 0m2.993s
$ time java -jar HeatBugs.jar -for 10000 -repeat 3 -parallel 4 -quiet
real 0m5.228s
user 0m25.628s
sys 0m3.064s
$ time java -jar HeatBugs.jar -for 10000 -repeat 2 -parallel 6 -quiet
real 0m4.618s
user 0m27.471s
sys 0m2.144s
To summarize:
Jobs, Threads, Time
12, 1, 12.452s
12, 2, 6.744s
12, 3, 6.198s
12, 4, 5.228s
12, 6, 4.618s
Not too shabby. I was a bit surprised to see a continued speed-up with 6 threads since I only have 4 cores. Maybe it's a hyper-threading thing or something.
Joey