Hi Fabian,
On a separate topic, but related to your post here, how did you do the timing? [Especially to so many digits of accuracy. :-) ]
I will have to time my program and I don't think /usr/bin/time would do it. Are the numbers it report accurate [for an MPI program]? I think the "user time" would be inaccurate since I need to get the user time of all the processes...but the "real time" of the main process should be ok?
Ray Fabian Hänsel wrote:
Be warned that at least in default config running more MPI threads than you have cores results in dog slow code. Single core machine: $ cat my-hosts localhost slots=1 $ mpirun -np 1 -hostfile my-hosts ./sort selectionsort 1024 1024 0.009905000seconds $ mpirun -np 2 -hostfile my-hosts ./sort selectionsort 1024 1024 4.113605000 seconds (on dual core both -np 1 and -np 2 run almost equally fast (only slightly speedup due to poor algorithm (developed for demonstration purposes))