#!/bin/bash set -euo pipefail export LD_LIBRARY_PATH="$CONDA_PREFIX/lib/:$LD_LIBRARY_PATH" export LD_LIBRARY_PATH="$CONDA_PREFIX/lib/python3.11/site-packages/fastpt/torch/lib:$LD_LIBRARY_PATH" export LD_LIBRARY_PATH=${ROCM_PATH}/opencl/lib:$LD_LIBRARY_PATH SCRIPT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) EXAMPLE_DIR=$(cd "${SCRIPT_DIR}/.." && pwd) REPO_ROOT=$(cd "${SCRIPT_DIR}/../../../.." && pwd) # echo "*** REPO_ROOT : ${REPO_ROOT}" # source "${REPO_ROOT}/env.sh" if [[ -n "${ROCM_PATH:-}" && -f "${ROCM_PATH}/cuda/env.sh" ]]; then source "${ROCM_PATH}/cuda/env.sh" fi export PYTHONPATH="${REPO_ROOT}/src:${REPO_ROOT}:${PYTHONPATH:-}" export HIP_VISIBLE_DEVICES="${HIP_VISIBLE_DEVICES:-0}" export CUDA_VISIBLE_DEVICES="${CUDA_VISIBLE_DEVICES:-${HIP_VISIBLE_DEVICES}}" export OMP_NUM_THREADS="${OMP_NUM_THREADS:-4}" DIFFDOCK_DATA_ROOT="${DIFFDOCK_DATA_ROOT:-${ONESCIENCE_DATASETS_DIR}/diffdock}" DIFFDOCK_DATASETS_DIR="${DIFFDOCK_DATASETS_DIR:-${DIFFDOCK_DATA_ROOT}/datasets}" export TORCH_HOME="${TORCH_HOME:-${DIFFDOCK_DATA_ROOT}/torch_home}" RUN_NAME="${RUN_NAME:-diffdock_pdbbind_smoke100_val20_cpu}" LOG_DIR="${LOG_DIR:-${EXAMPLE_DIR}/outputs/train}" CACHE_PATH="${CACHE_PATH:-${EXAMPLE_DIR}/outputs/cache_pdbbind_smoke100_val20}" CONFIG_PATH="${CONFIG_PATH:-${LOG_DIR}/${RUN_NAME}_train_config.yml}" DEVICE="${DEVICE:-cuda:0}" BATCH_SIZE="${BATCH_SIZE:-2}" N_EPOCHS="${N_EPOCHS:-1}" NUM_WORKERS="${NUM_WORKERS:-1}" NUM_DATALOADER_WORKERS="${NUM_DATALOADER_WORKERS:-0}" LR="${LR:-0.001}" SEED="${SEED:-0}" PDBBIND_DIR="${PDBBIND_DIR:-${DIFFDOCK_DATASETS_DIR}/PDBBind_processed}" SPLIT_TRAIN="${SPLIT_TRAIN:-${DIFFDOCK_DATASETS_DIR}/splits/timesplit_no_lig_overlap_train_smoke100}" SPLIT_VAL="${SPLIT_VAL:-${DIFFDOCK_DATASETS_DIR}/splits/timesplit_no_lig_overlap_val_smoke20}" mkdir -p "${LOG_DIR}" "${CACHE_PATH}" LOG_DIR=$(cd "${LOG_DIR}" && pwd) CACHE_PATH=$(cd "${CACHE_PATH}" && pwd) CONFIG_DIR=$(dirname "${CONFIG_PATH}") CONFIG_NAME=$(basename "${CONFIG_PATH}") mkdir -p "${CONFIG_DIR}" CONFIG_PATH=$(cd "${CONFIG_DIR}" && pwd)/"${CONFIG_NAME}" yaml_value() { if [[ -z "${1:-}" || "${1}" == "null" ]]; then printf "null" else local value value=$(printf "%s" "$1" | sed "s/'/''/g") printf "'%s'" "$value" fi } cat > "${CONFIG_PATH}" <