Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F87412036
run_benchmarks.sh
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sat, Oct 12, 13:25
Size
2 KB
Mime Type
text/x-shellscript
Expires
Mon, Oct 14, 13:25 (2 d)
Engine
blob
Format
Raw Data
Handle
21593804
Attached To
rLAMMPS lammps
run_benchmarks.sh
View Options
#!/bin/bash
#########################################################################
# Adjust settings below for your system
#########################################################################
# --------------------- MPI Launch Command
export
MPI
=
"mpirun"
#export MPI="numactl -p 1 mpirun" # -- Systems w/ MCDRAM in flat mode
# ------------- Name and location of the LAMMPS binary
export
LMP_BIN
=
../../lmp_intel_cpu_intelmpi
#export LMP_BIN=../../lmp_knl
# ------------- Directory containing the LAMMPS installation
export
LMP_ROOT
=
../../../
# ------------- Number of physical cores (not HW threads)
export
LMP_CORES
=
36
# -- For Intel Xeon E5-2697v4 SKU
#export LMP_CORES=68 # -- For Intel Xeon Phi x200 7250 SKU
# ------------- Number of HW threads to use in tests
export
LMP_THREAD_LIST
=
"2"
# -- For 2 threads per core w/ HT enabled
#export LMP_THREAD_LIST="2 4" # -- For 2 threads per core w/ HT enabled
# ------------- MPI Tuning Parameters
#export I_MPI_SHM_LMT=shm # -- Uncomment for Xeon Phi x200 series
# ------------- Library locations for build
#source /opt/intel/parallel_studio_xe_2017.2.050/psxevars.sh
#########################################################################
# End settings for your system
#########################################################################
export
WORKLOADS
=
"lj rhodo rhodo_lrt lc sw water eam"
export
LMP_ARGS
=
"-pk intel 0 -sf intel -screen none -v d 1"
export
RLMP_ARGS
=
"-pk intel 0 lrt yes -sf intel -screen none -v d 1"
export
LOG_DIR_HEADER
=
`
echo
$LMP_BIN
| sed
's/\.\.\///g'
| sed
's/\.\///g'
`
export
LOG_DIR_HOST
=
`
hostname
`
export
DATE_STRING
=
`
date +%s
`
export
LOG_DIR
=
$LOG_DIR_HOST
"_"
$LOG_DIR_HEADER
"_"
$DATE_STRING
mkdir
$LOG_DIR
export
I_MPI_PIN_DOMAIN
=
core
export
I_MPI_FABRICS
=
shm
export
KMP_BLOCKTIME
=
0
echo
-n
"Creating restart file...."
$MPI
-np
$LMP_CORES
$LMP_BIN
-in in.lc_generate_restart -log none
$LMP_ARGS
echo
"Done."
for
threads in
$LMP_THREAD_LIST
do
export
OMP_NUM_THREADS
=
$threads
for
workload in
$WORKLOADS
do
export
LOGFILE
=
$LOG_DIR
/
$workload
.
$LMP_CORES
"c"
$threads
"t"
.log
echo
"Running $LOGFILE"
cmd
=
"$MPI -np $LMP_CORES $LMP_BIN -in in.intel.$workload -log $LOGFILE $LMP_ARGS"
;
rthreads
=
$threads
unset
KMP_AFFINITY
$cmd
# - For benchmarks with PPPM, also try LRT mode
if
[
$workload
=
"rhodo"
]
;
then
export
LOGFILE
=
$LOG_DIR
/
$workload
"_lrt"
.
$LMP_CORES
"c"
$threads
"t"
.log
cmd
=
"$MPI -np $LMP_CORES $LMP_BIN -in in.intel.$workload -log $LOGFILE $RLMP_ARGS"
;
rthreads
=
$((
threads-1
))
export
KMP_AFFINITY
=
none
export
OMP_NUM_THREADS
=
$rthreads
echo
" $cmd"
>>
$LOG_DIR
/commands.info
$cmd
fi
done
done
# Performance reported by LAMMPS (Timesteps/second ignoring warm-up run)
grep Perf
$LOG_DIR
/*.log | awk
'BEGIN{n=1}n%2==0{print $0}{n++}'
| sed
's/\/day//g'
| sed
's/steps\/s/steps_s/g'
| sed
's/hours\/ns//g'
| sed
's/.*\///g'
| sed
's/\.log:Performance://g'
| awk
'{c=NF-1; print $1,$c}'
Event Timeline
Log In to Comment