TensorBoard
http://Adress:8080
login
ssh -i /privateKey -l user Adress
show GPU usage
$ watch -d -n 0.5 nvidia-smi
processes
$ htop
Build Docker image
$ docker build -t roboskate:finn ./docker/RoboSkate/
$ docker build -t roboskategpu2:finn ./docker/virtualscreen/
launch Docker container
$ docker run -it --gpus all --rm --name RoboLevel1 --privileged --mount type=bind,source="$(pwd)",target=/home/ubuntu/roboskate roboskategpu2:finn
$ docker run -it --gpus all --rm --name roboskatecnn --mount type=bind,source="$(pwd)",target=/home/ubuntu/roboskate roboskatecnn:finn
$ docker run -it --rm --name givemebackmyownership --mount type=bind,source="$(pwd)",target=/home/ubuntu/roboskate givemebackmyownership:finn
Show Docker log
docker logs roboskatecnn
Open docker shell
$ docker exec -it roboskate /bin/bash
Detach the container by pressing ctrl+p and ctrl+q one after another.
List
$ docker container ls
$ docker image list
remove
$ docker rmi image_name_or_id
restart server
$ sudo shutdown -r now
Start script in background and log to file.
$ nohup python3 -m scripts.python.RoboSkate.RoboSkateSB3_A2C > output_log_file.log &
Install Anaconda: https://www.digitalocean.com/community/tutorials/how-to-install-the-anaconda-python-distribution-on-debian-10
$ pip install tensorboard
$ pip install gym
$ pip install stable-baselines3
start tensorboard
$ tensorboard --logdir ./scripts/python/RoboSkate/tensorboard/<agent_name>/
$ tensorboard --logdir ./rl-baselines3-zoo/logs/tensorboard/
Use remote RoboSkate
ssh -fNT -i /home/cmlrss2021-g1/.ssh/RoboSkateCCLRZprivateKey \ -L 50010:127.0.0.1:50010 \ -L 50011:127.0.0.1:50011 \ -L 50012:127.0.0.1:50012 \ -L 50013:127.0.0.1:50013 \ -L 50014:127.0.0.1:50014 \ -L 50015:127.0.0.1:50015 \ -L 50016:127.0.0.1:50016 \ -L 50017:127.0.0.1:50017 \ -L 50018:127.0.0.1:50018 \ -L 50019:127.0.0.1:50019 \ -l user adress
Start all RoboSkate instances manually on the LRZ server
nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50010 & nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50011 & nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50012 & nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50013 & nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50014 & nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50015 & nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50016 & nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50017 & nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50018 & nohup RoboSkate/games/RoboSkate/roboskate.x86_64 -nographics -batchmode -p 50019 &
run container on Chair server with the corresponding number of environments
chmod 400 ~/.ssh/RoboSkateGPUprivateKey
$ mkdir /home/ubuntu/ChairGPUtensorboard
$ sshfs user@Adress:/home/cmlrss2021-g1/G1_RoboSkate/rl-baselines3-zoo/logs/tensorboard/ /home/ubuntu/ChairGPUtensorboard/ -o IdentityFile=/home/ubuntu/.ssh/RoboSkateGPUprivateKey
$ nohup tensorboard --logdir /home/ubuntu/ChairGPUtensorboard/ --port=8081 --bind_all > TensorBoardRemote.out &
$ umount /home/ubuntu/ChairGPUtensorboard/
)Use rl-baselines3-zoo as root folder.
enjoy best agent local
python enjoy.py --algo sac --env RoboSkateNumerical-v0 --folder logs/ --load-best --env-kwargs headlessMode:False random_start_level:False startLevel:0 --exp-id 4
python enjoy.py --algo sac --env RoboSkateSegmentation-v0 --folder logs/ --load-best --env-kwargs headlessMode:False random_start_level:False startLevel:0 show_image_reconstruction:True --exp-id 1 --n-timesteps 1000
Train Local (for testing)
python train.py --algo sac --env RoboSkateMultiInputPolicy-v0 --env-kwargs AutostartRoboSkate:False
RoboSkateNumerical-v0
nohup python train.py --algo sac --env RoboSkateNumerical-v0 --tensorboard-log logs/tensorboard -i ./logs/sac/RoboSkateNumerical-v0_1/best_model.zip --n-timesteps 6000000 --save-freq 50000 --env-kwargs random_start_level:False startLevel:0 startport:50051 headlessMode:True --save-replay-buffer > RoboSkateReduced_Level1.out &
RoboSkateMultiInputPolicy-v0
python3 train.py --algo sac --env RoboSkateMultiInputPolicy-v0 --tensorboard-log logs/tensorboard -i ./logs/sac/RoboSkateMultiInputPolicy-v0_3/best_model.zip --n-timesteps 6000000 --save-freq 50000 --save-replay-buffer
RoboSkateSegmentation-v0
python3 train.py --algo sac --env RoboSkateSegmentation-v0 --tensorboard-log logs/tensorboard -i ./logs/sac/RoboSkateSegmentation-v0_level1_wrongCheckpoint/best_model.zip --n-timesteps 6000000 --save-freq 50000 --env-kwargs random_start_level:False startLevel:0 headlessMode:False --save-replay-buffer
Start TensorBoard at LRZ Server
nohup tensorboard --bind_all --port 8080 --logdir /home/ubuntu/G1_RoboSkate/rl-baselines3-zoo/logs/tensorboard > TensorBoardLocal.out &