hpcgarage / spatter

Benchmark for measuring the performance of sparse and irregular memory access.
Other
75 stars 15 forks source link

Strong scaling by splitting pattern amongst ranks #171

Closed JDTruj2018 closed 9 months ago

JDTruj2018 commented 10 months ago

Added a flag (-u) to enable automatic strong scaling rather than relying on utilizing the --pattern-size flag to appropriately truncate the pattern.

The advantage being that each MPI rank gets a portion of the pattern, rather than an identical chunk of the first n items in a pattern, which is the behavior of the --pattern-size flag.

For example:

mpirun -n 2 ./spatter -p0,1,2,3,4,5,6,7,8 -u
Strong Scaling Enabled
Running Spatter version 1.0
Compiler: GNU ver. 9.4.0
Compiler Location: /projects/opt/centos8/x86_64/gcc/9.4.0/bin/gcc
Backend: Aggregate Results? YES

Run Configurations
[ {'name':'CUSTOM', 'kernel':'Gather', 'pattern':[0,1,2,3], 'pattern_gather':[], 'pattern_scatter':[], 'delta':8, 'deltas_gather':[], 'deltas_scatter':[], 'length':1024, 'agg':10, 'wrap':1, } ]

config  bytes        time(s)      bw(MB/s)    
Strong Scaling Enabled
Running Spatter version 1.0
Compiler: GNU ver. 9.4.0
Compiler Location: /projects/opt/centos8/x86_64/gcc/9.4.0/bin/gcc
Backend: Aggregate Results? YES

Run Configurations
[ {'name':'CUSTOM', 'kernel':'Gather', 'pattern':[4,5,6,7,8], 'pattern_gather':[], 'pattern_scatter':[], 'delta':8, 'deltas_gather':[], 'deltas_scatter':[], 'length':1024, 'agg':10, 'wrap':1, } ]

config  bytes        time(s)      bw(MB/s)    
0       32768        1.029e-05    3185.069984 

Min         25%          Med          75%          Max         
3185.07      3185.07      3185.07      3185.07      3185.07     
H.Mean       H.StdErr    
0       40960        1.071e-05    3823.035281 

Min         25%          Med          75%          Max         
3185.07      0           
3823.04      3823.04      3823.04      3823.04      3823.04     
H.Mean       H.StdErr    
3823.04      0