# Benchmarking MPI performance
# Scale number of processors
mpirun -np 1 ./heat -e 0.0001 -s 8000 -b h -n 800
Terminated after 3470 steps.  Max. difference = 0.000100
4.02 seconds.  2220800000 grid point computations.  nanoseconds/comp. = 1.81
mpirun -np 2 ./heat -e 0.0001 -s 8000 -b h -n 800
Terminated after 3470 steps.  Max. difference = 0.000100
2.11 seconds.  2220800000 grid point computations.  nanoseconds/comp. = 0.95
mpirun -np 3 ./heat -e 0.0001 -s 8000 -b h -n 800
Terminated after 3470 steps.  Max. difference = 0.000100
1.44 seconds.  2220800000 grid point computations.  nanoseconds/comp. = 0.65
mpirun -np 4 ./heat -e 0.0001 -s 8000 -b h -n 800
Terminated after 3470 steps.  Max. difference = 0.000100
1.10 seconds.  2220800000 grid point computations.  nanoseconds/comp. = 0.50
mpirun -np 5 ./heat -e 0.0001 -s 8000 -b h -n 800
Terminated after 3470 steps.  Max. difference = 0.000100
0.91 seconds.  2220800000 grid point computations.  nanoseconds/comp. = 0.41
mpirun -np 6 ./heat -e 0.0001 -s 8000 -b h -n 800
Terminated after 3470 steps.  Max. difference = 0.000100
0.78 seconds.  2220800000 grid point computations.  nanoseconds/comp. = 0.35
mpirun -np 7 ./heat -e 0.0001 -s 8000 -b h -n 800
Terminated after 3470 steps.  Max. difference = 0.000100
0.75 seconds.  2220800000 grid point computations.  nanoseconds/comp. = 0.34
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 800
Terminated after 3470 steps.  Max. difference = 0.000100
0.69 seconds.  2220800000 grid point computations.  nanoseconds/comp. = 0.31
# Scale problem size
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 1200
Terminated after 3513 steps.  Max. difference = 0.000100
2.89 seconds.  5058720000 grid point computations.  nanoseconds/comp. = 0.57
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 1600
Terminated after 3534 steps.  Max. difference = 0.000100
6.58 seconds.  9047040000 grid point computations.  nanoseconds/comp. = 0.73
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 2000
Terminated after 3547 steps.  Max. difference = 0.000100
12.17 seconds.  14188000000 grid point computations.  nanoseconds/comp. = 0.86
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 2400
Terminated after 3556 steps.  Max. difference = 0.000100
19.08 seconds.  20482560000 grid point computations.  nanoseconds/comp. = 0.93
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 2800
Terminated after 3563 steps.  Max. difference = 0.000100
28.19 seconds.  27933920000 grid point computations.  nanoseconds/comp. = 1.01
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 3200
Terminated after 3567 steps.  Max. difference = 0.000100
36.57 seconds.  36526080000 grid point computations.  nanoseconds/comp. = 1.00
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 3600
Terminated after 3571 steps.  Max. difference = 0.000100
45.60 seconds.  46280160000 grid point computations.  nanoseconds/comp. = 0.99
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 4000
Terminated after 3574 steps.  Max. difference = 0.000100
54.87 seconds.  57184000000 grid point computations.  nanoseconds/comp. = 0.96
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 4400
Terminated after 3576 steps.  Max. difference = 0.000100
65.22 seconds.  69231360000 grid point computations.  nanoseconds/comp. = 0.94
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 4800
Terminated after 3578 steps.  Max. difference = 0.000100
79.87 seconds.  82437120000 grid point computations.  nanoseconds/comp. = 0.97
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 5200
Terminated after 3580 steps.  Max. difference = 0.000100
90.51 seconds.  96803200000 grid point computations.  nanoseconds/comp. = 0.94
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 5600
Terminated after 3582 steps.  Max. difference = 0.000100
101.34 seconds.  112331520000 grid point computations.  nanoseconds/comp. = 0.90
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 6000
Terminated after 3583 steps.  Max. difference = 0.000100
120.42 seconds.  128988000000 grid point computations.  nanoseconds/comp. = 0.93
mpirun -np 8 ./heat -e 0.0001 -s 8000 -b h -n 6400
Terminated after 3584 steps.  Max. difference = 0.000100
129.51 seconds.  146800640000 grid point computations.  nanoseconds/comp. = 0.88