Download src/memory.sh from Fred808/MDS: direct link, hf CLI and curl.
- Browser
- Download file 2.24 kB
-
https://huggingface.co/spaces/Fred808/MDS/resolve/main/src/memory.sh
- Command line
-
hf download hf://spaces/Fred808/MDS/src/memory.sh
-
curl -L -o memory.sh https://huggingface.co/spaces/Fred808/MDS/resolve/main/src/memory.sh
2.24 kB
| set -Eeuo pipefail | |
| msg="Checking memory..." | |
| html "$msg" | |
| [[ "$DEBUG" == [Yy1]* ]] && echo "$msg" | |
| RAM_AVAIL=$(free -b | grep -m 1 Mem: | awk '{print $7}') | |
| if [[ "$RAM_CHECK" != [Nn]* && "${RAM_SIZE,,}" != "max" && "${RAM_SIZE,,}" != "half" ]]; then | |
| AVAIL_MEM=$(formatBytes "$RAM_AVAIL") | |
| if (( (RAM_WANTED + RAM_SPARE) > RAM_AVAIL )); then | |
| msg="Your configured RAM_SIZE of ${RAM_SIZE/G/ GB} is too high for the $AVAIL_MEM of memory available," | |
| if [[ "${FS,,}" == "zfs" ]]; then | |
| info "$msg but since ZFS is active this will be ignored." | |
| else | |
| RAM_SIZE="max" | |
| warn "$msg it will automatically be adjusted to a lower amount." | |
| fi | |
| else | |
| if (( (RAM_WANTED + (RAM_SPARE * 3)) > RAM_AVAIL )); then | |
| msg="your configured RAM_SIZE of ${RAM_SIZE/G/ GB} is very close to the $AVAIL_MEM of memory available," | |
| if [[ "${FS,,}" == "zfs" ]]; then | |
| info "$msg but since ZFS is active this will be ignored." | |
| else | |
| warn "$msg please consider a lower amount." | |
| fi | |
| fi | |
| fi | |
| fi | |
| if [[ "${RAM_SIZE,,}" == "half" ]]; then | |
| RAM_WANTED=$(( RAM_AVAIL / 2 )) | |
| RAM_WANTED=$(( RAM_WANTED / 1073741825 )) | |
| if (( "$RAM_WANTED" < 1 )); then | |
| RAM_WANTED=$(( RAM_AVAIL / 2 )) | |
| RAM_WANTED=$(( RAM_WANTED / 1048577 )) | |
| RAM_SIZE="${RAM_WANTED}M" | |
| else | |
| RAM_SIZE="${RAM_WANTED}G" | |
| fi | |
| fi | |
| if [[ "${RAM_SIZE,,}" == "max" ]]; then | |
| RAM_WANTED=$(( RAM_AVAIL - (RAM_SPARE * 3) )) | |
| RAM_WANTED=$(( RAM_WANTED / 1073741825 )) | |
| if (( "$RAM_WANTED" < 1 )); then | |
| RAM_WANTED=$(( RAM_AVAIL - (RAM_SPARE * 2) )) | |
| RAM_WANTED=$(( RAM_WANTED / 1073741825 )) | |
| if (( "$RAM_WANTED" < 1 )); then | |
| RAM_WANTED=$(( RAM_AVAIL - RAM_SPARE )) | |
| RAM_WANTED=$(( RAM_WANTED / 1073741825 )) | |
| if (( "$RAM_WANTED" < 1 )); then | |
| RAM_WANTED=$(( RAM_AVAIL - RAM_SPARE )) | |
| RAM_WANTED=$(( RAM_WANTED / 1048577 )) | |
| if (( "$RAM_WANTED" < 1 )); then | |
| RAM_WANTED=$(( RAM_AVAIL )) | |
| RAM_WANTED=$(( RAM_WANTED / 1048577 )) | |
| fi | |
| RAM_SIZE="${RAM_WANTED}M" | |
| else | |
| RAM_SIZE="${RAM_WANTED}G" | |
| fi | |
| else | |
| RAM_SIZE="${RAM_WANTED}G" | |
| fi | |
| else | |
| RAM_SIZE="${RAM_WANTED}G" | |
| fi | |
| fi | |
| return 0 | |