hf_ckpt_sync.sh: setsid/ionice optional (not present on the pod)
Browse files- scripts/hf_ckpt_sync.sh +3 -1
scripts/hf_ckpt_sync.sh
CHANGED
|
@@ -14,7 +14,9 @@ case "${1:-status}" in
|
|
| 14 |
start) if running; then echo "already running pid $(cat $PIDF)"; exit 0; fi
|
| 15 |
[ -s "$HOME/.cache/huggingface/token" ] || { echo "no HF token at ~/.cache/huggingface/token"; exit 1; }
|
| 16 |
[ -x "$PY" ] || { /opt/conda/bin/python -m venv "$HOME/hfsync-venv" && "$HOME/hfsync-venv/bin/pip" install -q -U huggingface_hub; }
|
| 17 |
-
|
|
|
|
|
|
|
| 18 |
sleep 3; running && echo "started pid $(cat $PIDF), log $LOG" || { echo "failed to start; see $LOG"; tail -5 "$LOG"; exit 1; } ;;
|
| 19 |
stop) running && kill "$(cat $PIDF)" && echo stopped || echo "not running" ;;
|
| 20 |
once) nice -n 19 ionice -c3 "$PY" -u scripts/hf_ckpt_sync.py >> "$LOG" 2>&1; tail -3 "$LOG" ;;
|
|
|
|
| 14 |
start) if running; then echo "already running pid $(cat $PIDF)"; exit 0; fi
|
| 15 |
[ -s "$HOME/.cache/huggingface/token" ] || { echo "no HF token at ~/.cache/huggingface/token"; exit 1; }
|
| 16 |
[ -x "$PY" ] || { /opt/conda/bin/python -m venv "$HOME/hfsync-venv" && "$HOME/hfsync-venv/bin/pip" install -q -U huggingface_hub; }
|
| 17 |
+
SETSID=""; command -v setsid >/dev/null && SETSID=setsid
|
| 18 |
+
IONICE=""; command -v ionice >/dev/null && IONICE="ionice -c3"
|
| 19 |
+
$SETSID nohup nice -n 19 $IONICE "$PY" -u scripts/hf_ckpt_sync.py --loop >> "$LOG" 2>&1 < /dev/null &
|
| 20 |
sleep 3; running && echo "started pid $(cat $PIDF), log $LOG" || { echo "failed to start; see $LOG"; tail -5 "$LOG"; exit 1; } ;;
|
| 21 |
stop) running && kill "$(cat $PIDF)" && echo stopped || echo "not running" ;;
|
| 22 |
once) nice -n 19 ionice -c3 "$PY" -u scripts/hf_ckpt_sync.py >> "$LOG" 2>&1; tail -3 "$LOG" ;;
|