3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-11-01 01:09:22 +01:00

Add wrapper scripts (start-cpulimit.sh, kill.sh) to assist running PyLink under cpulimit

Again, we're trying to prevent the software from frying people's CPUs...
This commit is contained in:
James Lu 2015-07-25 16:58:11 -07:00
parent f85fbd934b
commit 5ab7b507be
2 changed files with 25 additions and 0 deletions

6
kill.sh Executable file
View File

@ -0,0 +1,6 @@
#!/usr/bin/env bash
# Script to kill PyLink quickly when running under CPUlimit, since
# it will daemonize after threads are spawned and Ctrl-C won't work.
kill $(cat pylink.pid)
echo 'Killed. Press Ctrl-C in the PyLink window to exit.'

19
start-cpulimit.sh Executable file
View File

@ -0,0 +1,19 @@
#!/usr/bin/env bash
# Shell script to start PyLink under CPUlimit, killing it if it starts abusing the CPU.
# Set this to whatever you want. cpulimit --help
LIMIT=50
# Change to the PyLink root directory.
WRAPPER_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
cd "$WRAPPER_DIR"
if [[ ! -z "$(which cpulimit)" ]]; then
# -k kills the PyLink daemon if it goes over $LIMIT
# -z makes cpulimit exit when PyLink dies.
cpulimit -l $LIMIT -z -k ./main.py
echo "PyLink has been started (daemonized) under cpulimit, and will automatically be killed if it goes over the CPU limit of ${LIMIT}%."
echo "To kill the process manually, run ./kill.sh"
else
echo 'cpulimit not found in $PATH! Aborting.'
fi