72 lines
1.4 KiB
Bash
72 lines
1.4 KiB
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
|
|
configured="${ACCELERATOR:-auto}"
|
|
configured="${configured,,}"
|
|
|
|
detect_accelerator() {
|
|
case "$configured" in
|
|
metax|maca|muxi|mx)
|
|
echo "metax"
|
|
return 0
|
|
;;
|
|
iluvatar|ix|tianshu|天数)
|
|
echo "iluvatar"
|
|
return 0
|
|
;;
|
|
mthreads|musa|moorethreads|摩尔线程)
|
|
echo "mthreads"
|
|
return 0
|
|
;;
|
|
nvidia|cuda)
|
|
echo "nvidia"
|
|
return 0
|
|
;;
|
|
cpu)
|
|
echo "cpu"
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
if command -v mx-smi >/dev/null 2>&1; then
|
|
echo "metax"
|
|
return 0
|
|
fi
|
|
if command -v ixsmi >/dev/null 2>&1; then
|
|
echo "iluvatar"
|
|
return 0
|
|
fi
|
|
if command -v mthreads-gmi >/dev/null 2>&1; then
|
|
echo "mthreads"
|
|
return 0
|
|
fi
|
|
if command -v nvidia-smi >/dev/null 2>&1; then
|
|
echo "nvidia"
|
|
return 0
|
|
fi
|
|
echo "cpu"
|
|
}
|
|
|
|
accelerator="$(detect_accelerator)"
|
|
echo "[sync_accel_env] detected accelerator=${accelerator}"
|
|
|
|
case "$accelerator" in
|
|
metax)
|
|
exec "$ROOT_DIR/scripts/sync_metax_env.sh" "$@"
|
|
;;
|
|
iluvatar)
|
|
exec "$ROOT_DIR/scripts/sync_iluvatar_env.sh" "$@"
|
|
;;
|
|
mthreads)
|
|
exec "$ROOT_DIR/scripts/sync_mthreads_env.sh" "$@"
|
|
;;
|
|
nvidia)
|
|
exec "$ROOT_DIR/scripts/sync_gpu_env.sh" "$@"
|
|
;;
|
|
cpu)
|
|
exec "$ROOT_DIR/scripts/sync_cpu_env.sh" "$@"
|
|
;;
|
|
esac
|