You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
backend_root="infer" #The root install directory of the PerformanceAnalysis libraries. If set to "infer" it will be inferred from the path of the executables
21
+
chimbuko_services="infer" #The location of the Chimbuko service script. If set to "infer" it will be inferred from backend_root
22
+
23
+
####################################
24
+
#Options for the provenance database
25
+
####################################
26
+
use_provdb=1 #enable or disable the provDB. If disabled the provenance data will be written as JSONASCII into the ${provdb_writedir} set below
27
+
provdb_extra_args="" #any extra command line arguments to pass
28
+
provdb_nshards=4 #number of database shards
29
+
provdb_engine="ofi+tcp;ofi_rxm" #the OFI libfabric provider used for the Mochi stack
30
+
provdb_port=5000 #the port of the provenance database
31
+
provdb_nthreads=4 #number of worker threads; should be >= the number of shards
32
+
provdb_writedir=chimbuko/provdb #the directory in which the provenance database is written. Chimbuko creates chimbuko/provdb which can be used as a default
33
+
provdb_commit_freq=10000 #frequency ms at which the provenance database is committed to disk. If set to 0 it will commit only at the end
34
+
35
+
#With "verbs"provider (used for infiniband, iWarp, etc) we need to also specify the domain, which can be found by running fi_info (on a compute node)
36
+
provdb_domain=mlx5_0 #only needed for verbs provider <------------ ***SET ME (if using verbs)***
37
+
38
+
39
+
####################################
40
+
#Options for the parameter server
41
+
####################################
42
+
use_pserver=1 #enable or disable the pserver
43
+
pserver_extra_args="" #any extra command line arguments to pass
44
+
pserver_port=5559 #port for parameter server
45
+
pserver_nt=2 #number of worker threads
46
+
####################################
47
+
#Options for the AD module
48
+
####################################
49
+
ad_extra_args="-perf_outputpath chimbuko/logs -perf_step 1 -interval_msec <AD_INTERVAL>" #any extra command line arguments to pass. Note: chimbuko/logs is automatically created by services script
50
+
ad_win_size=<AD_WIN_SIZE> #number of events around an anomaly to store; provDB entry size is proportional to this so keep it small!
51
+
ad_alg="sstd" #the anomaly detection algorithm. Valid values are "hbos" and "sstd"
52
+
ad_outlier_hbos_threshold=0.99 #the percentile of events outside of which are considered anomalies by the HBOS algorithm
53
+
ad_outlier_sstd_sigma=<AD_SIGMA> #number of standard deviations that defines an outlier in the SSTD algorithm
54
+
####################################
55
+
#Options forTAU
56
+
#Note: Only the TAU_ADIOS2_PATH, TAU_ADIOS2_FILE_PREFIX, EXE_NAME and TAU_ADIOS2_ENGINE variables are used by the Chimbuko services script and there only to generate the suggested
57
+
# command to launch the AD (output to chimbuko/vars/chimbuko_ad_cmdline.var); they can be overridden by the run script if desired providing the appropriate modifications
58
+
# are made to the AD launch command. The remainder of the variables are used only by TAU and can be freely overridden.
59
+
####################################
60
+
export TAU_ADIOS2_ENGINE=<TAU_ADIOS2_ENGINE> #online communication engine (alternative BP4 although this goes through the disk system and may be slower unless the BPfiles are stored on a burst disk)
61
+
export TAU_ADIOS2_ONE_FILE=FALSE #a different connection file for each rank
export TAU_ADIOS2_PERIOD=1000000 #period in us between ADIOS2 io steps
64
+
export TAU_THREAD_PER_GPU_STREAM=1 #force GPU streams to appear as different TAU virtual threads
65
+
export TAU_THROTTLE=0 #enable/disable throttling of short-running functions
66
+
67
+
export TAU_MAKEFILE=/opt/tau2/x86_64/lib/Makefile.tau-papi-mpi-pthread-pdt-adios2 #The TAU makefile to use <------------ ***SET ME***
68
+
69
+
#Note: the following 2 variables are not used by the service script but are included here for use from the user's run script allowing the application to be launched with either "${TAU_EXEC} <app>" or "${TAU_PYTHON} <app>"
70
+
#Note: the "binding" -T ... is used by Tau to find the appropriate configuration. It can typically be inferred from the name of the Makefile. If using a non-MPI job the 'mpi' should be changed to 'serial' and a non-MPI build of
71
+
# ADIOS2/TAU must exist
72
+
#Suggestion: It is useful to test the command without Chimbuko first to ensure TAU picks up the correct binding; this can be done by 'export TAU_ADIOS2_ENGINE=BPFile' and then running the application with Tau but without Chimbuko.
73
+
TAU_EXEC="tau_exec -T papi,mpi,pthread,pdt,adios2 -adios2_trace" #how to execute tau_exec; the -T arguments should mirror the makefile name <------------ ***SET ME***
74
+
TAU_PYTHON="tau_python -T papi,mpi,pthread,pdt,adios2 -tau-python-interpreter=python3 -adios2_trace -tau-python-args=-u" #how to execute tau_python. Note that passing -u to python forces it to not buffer stdout so we can pipe it
75
+
#to tee in realtime <--- SET ME (if !python3)
76
+
77
+
export EXE_NAME=nwchem #the name of the executable (without path) <------------ ***SET ME***
78
+
79
+
TAU_ADIOS2_PATH=chimbuko/adios2 #path where the adios2 files are to be stored. Chimbuko services creates the directory chimbuko/adios2 in the working directory and this should be used by default
80
+
TAU_ADIOS2_FILE_PREFIX=tau-metrics #the prefix of tau adios2 files; full filename is ${TAU_ADIOS2_PREFIX}-${EXE_NAME}-${RANK}.bp
# Create work directory under the given batch directory
60
61
mkdir -p $BATCH_DIR
61
62
cd$BATCH_DIR
62
-
rm -rf DB executions logs
63
-
mkdir -p logs DB BP executions
63
+
rm -rf *
64
64
65
-
LOG_DIR=${BATCH_DIR}/logs
66
-
DB_DIR=${BATCH_DIR}/DB
67
-
BP_DIR=${BATCH_DIR}/BP
65
+
# #Override config script with user options
66
+
cat /chimbuko_config.templ | sed "s/<TAU_ADIOS2_ENGINE>/${ADIOS_MODE}/"| sed "s/<AD_WIN_SIZE>/${AD_WINSZ}/"| sed "s/<AD_SIGMA>/${AD_SIGMA}/"| sed "s/<AD_INTERVAL>/${AD_INTERVAL}/"| sed "s|<VIZ_ROOT>|${VIZ_ROOT}|"> chimbuko_config.sh
67
+
export CHIMBUKO_CONFIG=chimbuko_config.sh
68
+
source${CHIMBUKO_CONFIG}
68
69
69
-
# TAU plug-in environments
70
-
BP_PREFIX=tau-metrics-nwchem
71
-
export TAU_ADIOS2_PERIODIC=1
72
-
export TAU_ADIOS2_PERIOD=1000000
70
+
#Tau extra arguments
73
71
export TAU_ADIOS2_SELECTION_FILE=${BATCH_DIR}/sos_filter.txt #filter out some irrelevant functions
0 commit comments