Skip to content

Commit edf7315

Browse files
committed
o Add scripts for running on theta
1 parent d552787 commit edf7315

File tree

2 files changed

+107
-0
lines changed

2 files changed

+107
-0
lines changed
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
#!/bin/bash
2+
3+
set -eu
4+
5+
# Theta / Tensorflow env vars
6+
export KMP_BLOCKTIME=30
7+
export KMP_SETTINGS=1
8+
export KMP_AFFINITY=granularity=fine,verbose,compact,1,0
9+
export OMP_NUM_THREADS=128
10+
11+
export PYTHONHOME="/lus/theta-fs0/projects/Candle_ECP/ncollier/py2_tf_gcc6.3_eigen3_native"
12+
#export PYTHONHOME="/home/rjain/anaconda2"
13+
PYTHON="$PYTHONHOME/bin/python"
14+
export LD_LIBRARY_PATH="$PYTHONHOME/lib"
15+
export PATH="$PYTHONHOME/bin:$PATH"
16+
17+
RUNNER_DIR=../../../../../Benchmarks/Pilot1/P1B1:../../../../../Benchmarks/Pilot2/P2B1:../../../../../Benchmarks/Pilot3/P3B1:../../../../../Benchmarks/Pilot1/NT3:../../../../../Benchmarks/Pilot1/P1B3
18+
COMMON_DIR=../../../common/python
19+
PYTHONPATH="$PYTHONHOME/lib/python2.7:"
20+
PYTHONPATH+="../:$RUNNER_DIR:$COMMON_DIR:"
21+
PYTHONPATH+="$PYTHONHOME/lib/python2.7/site-packages"
22+
export PYTHONPATH
23+
export PROJECT=Candle_ECP
24+
25+
echo $PYTHONPATH
26+
$PYTHON test_runners.py
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
#! /usr/bin/env bash
2+
set -eu
3+
4+
# Autodetect this workflow directory
5+
export APP_HOME=$( cd $( dirname $0 ) ; /bin/pwd )
6+
7+
#### set this variable to add new benchmarks directory
8+
RUNNERS_DIR=$APP_HOME/../../../../Benchmarks/Pilot1/P1B1:$APP_HOME/../../../../Benchmarks/Pilot2/P2B1:$APP_HOME/../../../../Benchmarks/Pilot3/P3B1:$APP_HOME/../../../../Benchmarks/Pilot1/NT3:$APP_HOME/../../../../Benchmarks/Pilot1/P1B3
9+
###
10+
# The number of MPI processes
11+
# Note that 2 processes are reserved for Swift/EMEMS
12+
# The default of 4 gives you 2 workers, i.e., 2 concurrent Keras runs
13+
export PROCS=${PROCS:-36}
14+
# MPI processes per node
15+
# Cori has 32 cores per node, 128GB per node
16+
export PPN=${PPN:-1}
17+
export QUEUE=${QUEUE:-default}
18+
export WALLTIME=${WALLTIME:-01:20:00}
19+
20+
21+
if [ "$#" -ne 4 ]; then
22+
script_name=$(basename $0)
23+
echo "Usage: ${script_name} EXPERIMENT_ID (run1_p1b1) BENCHMARKS_NAME (eg. p1b1) SEARCH_TYPE (eg. grid or random) INPUT_JSON"
24+
echo "Example: ./run p1b1_experiment1 p1b1 random p1b1_settings.json"
25+
echo "-This creates a p1b1_experiment1 directory in ../experiments"
26+
echo " uses random scheme for variables specified in ../data/p1b1_settings.json file"
27+
exit 1
28+
fi
29+
30+
# uncomment to turn on swift/t logging. Can also set TURBINE_LOG,
31+
# TURBINE_DEBUG, and ADLB_DEBUG to 0 to turn off logging
32+
export TURBINE_LOG=1 TURBINE_DEBUG=1 ADLB_DEBUG=1
33+
34+
export EXPID=$1
35+
export B_NAME=$2
36+
export S_NAME=$3
37+
export JSON_F=$4
38+
39+
export TURBINE_OUTPUT=$APP_HOME/../experiments/$EXPID
40+
export PROJECT=Candle_ECP
41+
export TURBINE_JOBNAME="${EXPID}_job"
42+
43+
TCL=/home/wozniak/Public/sfw/theta/tcl-8.6.1
44+
export R=/home/wozniak/Public/sfw/theta/R-3.4.0/lib64/R
45+
export PY=/home/rjain/anaconda2
46+
export LD_LIBRARY_PATH=$PY/lib:$R/lib:$LD_LIBRARY_PATH
47+
COMMON_DIR=$APP_HOME/../../common/python
48+
PYTHONPATH=$APP_HOME/../python:$RUNNERS_DIR:$COMMON_DIR
49+
PYTHONHOME=/home/rjain/anaconda2
50+
51+
export PATH=/home/rjain/install/stc/bin:$TCL/bin:$PATH
52+
#$PYTHONHOME/bin:$TCL/bin:$PATH
53+
54+
# Resident task workers and ranks
55+
export TURBINE_RESIDENT_WORK_WORKERS=1
56+
export RESIDENT_WORK_RANKS=$(( PROCS - 2 ))
57+
58+
59+
TURBINE_DIR=/home/rjain/install/turbine/lib
60+
61+
# set machine to your scheduler type (e.g. pbs, slurm, cobalt etc.),
62+
# or empty for an immediate non-queued unscheduled run
63+
MACHINE="theta"
64+
65+
if [ -n "$MACHINE" ]; then
66+
MACHINE="-m $MACHINE"
67+
fi
68+
69+
set -x
70+
WORKFLOW_SWIFT=rnd_or_grid.swift
71+
swift-t -n $PROCS $MACHINE -r $TURBINE_DIR \
72+
-e LD_LIBRARY_PATH=$LD_LIBRARY_PATH \
73+
-e TURBINE_RESIDENT_WORK_WORKERS=$TURBINE_RESIDENT_WORK_WORKERS \
74+
-e RESIDENT_WORK_RANKS=$RESIDENT_WORK_RANKS \
75+
-e APP_HOME=$APP_HOME \
76+
-e PYTHONPATH=$PYTHONPATH \
77+
-e PYTHONHOME=$PYTHONHOME \
78+
-e TURBINE_DEBUG=$TURBINE_DEBUG\
79+
-e ADLB_DEBUG=$ADLB_DEBUG \
80+
-e TURBINE_OUTPUT=$TURBINE_OUTPUT \
81+
$APP_HOME/$WORKFLOW_SWIFT --benchmark_name=$B_NAME --search_type=$S_NAME --input_file=$JSON_F &

0 commit comments

Comments
 (0)