new startup script

This commit is contained in:
Vladimir Mandic
2023-01-24 09:05:52 -05:00
parent c07487ad1e
commit 2a5d7ad676
5 changed files with 107 additions and 39 deletions
+35 -10
View File
@@ -18,17 +18,42 @@ Fork adds extra functionality:
e.g. `generate`, `train`, `bench`, etc.
[Full list](<cli/>)
Fork does differ in few things:
Simplified start script: `automatic.sh`
*Existing `webui.sh` still exists for backward compatibility, fresh installs to auto-install dependencies, etc.*
- Additional simplified start script
> ./automatic.sh
> ./secure.sh
Use `secure.sh` if you want to startup with username/password auth enabled and listen on global IP
Existing `webui.sh` still exists for fresh installs to auto-install dependencies, etc.
- Additional simplified install script
> ./install.sh
- Drops compatibility with `python` **3.7** and requires **3.10**
> ./automatic.sh
- Start in default mode with optimizations enabled
> ./automatic.sh env
- Print env info and exit
Example:
Version: c07487a Tue Jan 24 08:04:31 2023 -0500
Platform: Ubuntu 22.04.1 LTS 5.15.79.1-microsoft-standard-WSL2 x86_64
Python 3.10.6
Torch: 2.0.0.dev20230118+cu118 CUDA: 11.8 cuDNN: 8700 GPU: NVIDIA GeForce RTX 3060 Arch: (8, 6)
> ./automatic.sh install
- Install requirements and exit
> ./automatic.sh public
- Start with listen on public IP with authentication enabled
> ./automatic.sh clean
- Start with all optimizations disabled
Use this for troubleshooting
<br>
## Differences
Fork does differ in few things:
- Drops compatibility with `python` **3.7** and requires **3.9**
- Updated **Python** libraries to latest known compatible versions
e.g. `accelerate`, `transformers`, `numpy`, etc.
- Includes opinionated **System** and **Options** configuration
+72 -5
View File
@@ -1,8 +1,75 @@
#/bin/env bash
export TF_CPP_MIN_LOG_LEVEL=2
export FORCE_CUDA="1"
export ATTN_PRECISION=fp16
export PYTORCH_CUDA_ALLOC_CONF=garbage_collection_threshold:0.9,max_split_size_mb:512
exec accelerate launch --num_cpu_threads_per_process=6 launch.py --api --xformers --disable-console-progressbars "$@"
TF_CPP_MIN_LOG_LEVEL=2
FORCE_CUDA="1"
ATTN_PRECISION=fp16
PYTORCH_CUDA_ALLOC_CONF=garbage_collection_threshold:0.9,max_split_size_mb:512
# TORCH_CUDA_ARCH_LIST="8.6"
ARGS="--num_cpu_threads_per_process=6 launch.py --api --xformers --disable-console-progressbars"
# --opt-channelslast
MODE=optimized
if [[ $(id -u) -eq 0 ]]; then
echo "Running as root, aborting"
exit 1
fi
for i in "$@"; do
case $i in
install)
MODE=install
;;
public)
MODE=public
;;
clean)
MODE=clean
;;
env)
MODE=env
;;
*)
ARGS="$ARGS $i"
;;
esac
shift
done
echo "SD server: $MODE"
if [ $MODE == install ]; then
python --version
pip3 --version
echo "Installing general requirements"
pip3 install --disable-pip-version-check --quiet --no-warn-conflicts --requirement requirements.txt
echo "Installing versioned requirements"
pip3 install --disable-pip-version-check --quiet --no-warn-conflicts --requirement requirements_versions.txt
exit 0
fi
if [ $MODE == env ]; then
VER=`git log -1 --pretty=format:"%h %ad"`
LSB=`lsb_release -ds 2>/dev/null`
UN=`uname -rm 2>/dev/null`
echo "Version: $VER"
echo "Platform: $LSB $UN"
python --version
python -c 'import torch; print("Torch:", torch.__version__, "CUDA:", torch.version.cuda, "cuDNN:", torch.backends.cudnn.version(), "GPU:", torch.cuda.get_device_name(torch.cuda.current_device()), "Arch:", torch.cuda.get_device_capability());'
exit 0
fi
if [ $MODE == clean ]; then
ARGS="$ARGS ----disable-opt-split-attention"
python launch.py "$ARGS"
exit 0
fi
if [ $MODE == public ]; then
ARGS="$ARGS --port 8000 --gradio-auth admin:pwd --listen --enable-insecure-extension-access"
fi
if [ $MODE == optimized ]; then
ARGS="$ARGS --xformers"
fi
exec accelerate launch "$ARGS"
-8
View File
@@ -1,8 +0,0 @@
#/bin/env bash
python --version
pip3 --version
echo "installing general requirements"
pip3 install --disable-pip-version-check --quiet --no-warn-conflicts --requirement requirements.txt
echo "installing versioned requirements"
pip3 install --disable-pip-version-check --quiet --no-warn-conflicts --requirement requirements_versions.txt
-7
View File
@@ -1,7 +0,0 @@
#/bin/env bash
export TF_CPP_MIN_LOG_LEVEL=2
export FORCE_CUDA="1"
export ATTN_PRECISION=fp16
export PYTORCH_CUDA_ALLOC_CONF=garbage_collection_threshold:0.9,max_split_size_mb:512
exec accelerate launch --num_cpu_threads_per_process=6 launch.py --api --xformers --disable-console-progressbars --port 8000 --gradio-auth admin:pwd --listen --enable-insecure-extension-access "$@"
-9
View File
@@ -1,9 +0,0 @@
#/bin/env bash
echo "Running without optimizations"
export TF_CPP_MIN_LOG_LEVEL=2
export FORCE_CUDA="1"
export ATTN_PRECISION=fp16
export PYTORCH_CUDA_ALLOC_CONF=garbage_collection_threshold:0.9,max_split_size_mb:512
python launch.py --api --disable-opt-split-attention --disable-console-progressbars "$@"
# --opt-channelslast