Skip to content
Snippets Groups Projects
Commit 0d4ce7c0 authored by sfux's avatar sfux
Browse files

Update README.md

parent e5779d00
No related branches found
No related tags found
No related merge requests found
......@@ -2,4 +2,95 @@
This script can be used to start a batch job on the cluster and then connect Microsoft VSCode to it. The script is inspired by the blog
https://medium.com/@isaiah.taylor/use-vs-code-on-a-supercomputer-15e4cbbb1bc2
\ No newline at end of file
https://medium.com/@isaiah.taylor/use-vs-code-on-a-supercomputer-15e4cbbb1bc2
##Preparation
The preparation steps only need to be executed once. You need to carry out those steps to set up the basic configuration for your ETH account with regards to the code-server.
* Login to the Euler
* Start and interactive job with
```
bsub -Is -W 0:10 -n 1 -R "rusage[mem=2048]" bash
```
When using Euler, switch to the new software stack (in case you haven't set it as default yet), either using
```
env2lmod
```
for the current shell, or
```
set_software_stack.sh new
```
to set it as permanent default (when using this command, you need to logout and login again to make the change becoming active)
Load the modules for one of the code-server installations:
```
module load gcc/6.3.0 code-server/3.12.0
```
Start the code-server once with the command code-server
```
[sfux@eu-ms-001-01 ~]$ code-server
[2021-11-02T10:01:45.407Z] info code-server 3.12.0 4cd55f94c0a72f05c18cea070e10b969996614d2
[2021-11-02T10:01:45.409Z] info Using user-data-dir ~/.local/share/code-server
[2021-11-02T10:01:45.433Z] info Using config file ~/.config/code-server/config.yaml
[2021-11-02T10:01:45.433Z] info HTTP server listening on http://127.0.0.1:8080
[2021-11-02T10:01:45.433Z] info - Authentication is enabled
[2021-11-02T10:01:45.433Z] info - Using password from ~/.config/code-server/config.yaml
[2021-11-02T10:01:45.433Z] info - Not serving HTTPS
[sfux@eu-ms-001-01 ~]$
```
This will setup the local configuration (including a password for you) and store it in your home directory in $HOME/.config/code-server/config.yaml
After the server started, terminate it with ctrl+c
## Using the script
```
$ ./start_vscode.sh --help
./start_vscode.sh: Script to start a VSCode on Euler from a local computer
Usage: start_vscode.sh [options]
Options:
-u | --username USERNAME ETH username for SSH connection to Euler
-n | --numcores NUM_CPU Number of CPU cores to be used on the cluster
-W | --runtime RUN_TIME Run time limit for the code-server in hours and minutes HH:MM
-m | --memory MEM_PER_CORE Memory limit in MB per core
Optional arguments:
-c | --config CONFIG_FILE Configuration file for specifying options
-g | --numgpu NUM_GPU Number of GPUs to be used on the cluster
-h | --help Display help for this script and quit
-i | --interval INTERVAL Time interval for checking if the job on the cluster already started
-k | --key SSH_KEY_PATH Path to SSH key with non-standard name
-v | --version Display version of the script and exit
Examlples:
./start_vscode.sh -u sfux -n 4 -W 04:00 -m 2048
./start_vscode.sh --username sfux --numcores 2 --runtime 01:30 --memory 2048
./start_vscode.sh -c /c/Users/sfux/.vsc_config
Format of configuration file:
VSC_USERNAME="" # ETH username for SSH connection to Euler
VSC_NUM_CPU=1 # Number of CPU cores to be used on the cluster
VSC_NUM_GPU=0 # Number of GPUs to be used on the cluster
VSC_RUN_TIME="01:00" # Run time limit for the code-server in hours and minutes HH:MM
VSC_MEM_PER_CPU_CORE=1024 # Memory limit in MB per core
VSC_WAITING_INTERVAL=60 # Time interval to check if the job on the cluster already started
VSC_SSH_KEY_PATH="" # Path to SSH key with non-standard name
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment