1. Access Strong Compute
1.1 Register as a user of Strong Compute
The first step for all new users is to register as a User on Control Plane https://cp.strongcompute.ai/register.
1.2 Configure your Organisation
Please note (particularly Windows users): where in the following guide we have provided an example path such as ~/.ssh/my_key.pub
or /<path>/<to>/.ssh/my_key.pub
which will resemble the Linux/MacOS path format. Please use the path format that is suitable for your OS. For example, Windows path format typically will resemble C:\<path>\<to>\.ssh\my_key.pub
or C:\<path>\<to>\my_key.pub
.
1.2.a If you are the first person in your Organisation to register
Visit the Organisations page in Control Plane https://cp.strongcompute.ai/organisations. You will see only one organisation listed. When you first register your Organisation will be named "<your email>'s Personal Organisation".
Click the "Manage" button for your Organisation to access the "Organisation Settings" page.
From the "Organisation Settings" page you can update the name of your Organisation, view current members, and create invitations for other members to join.
Note that Control Plane does not send emails to invitees. If you invite a member to join your Organisation, you will need to notify them that they have been invited to your Organisation and which email address their invitation is registered with.
1.2.b If you are responding to an invitation to join an Organisation on Control Plane
Visit the Organisations page in Control Plane https://cp.strongcompute.ai/organisations. You will see only one organisation listed. When you first register your Organisation will be named "<your email>'s Personal Organisation".
You will also see your invitation to join an Organisation with options to Accept or Reject.
1.3 Get credits
From the Profile menu in the top-right of Control Plane (https://cp.strongcompute.ai), click "Buy Credits".
Credits are held by organisations in Strong Compute, and can be consumed by all members of the organisation, subject to configured organisation Spending Limits. For the suitable organisation, click on "Buy Credits". Please note users cannot move credits between organisations, so be careful which organisation you select to hold your credits.
Complete the process for purchasing credits on the payments page.
Visit the "Billing" page on Control Plane (https://cp.strongcompute.ai) and verify that your credits have been allocated. Please ensure you have the correct organisation selected from the Organisation menu top-right of the page.
1.4 Upload your SSH public key
Visit the "Workstations" page on Control Plane (https://cp.strongcompute.ai).
At the bottom of the page under SSH Public Keys click on "Add SSH Key".
You will need a cryptographic public/private key pair which you can generate as follows.
Open a terminal and run
ssh-keygen
.When prompted, provide a path at which to save the key or accept the default (
~/.ssh/<default-name>
). You can also optionally enter a passphrase (or just press enter twice).This will generate two files containing your public and private keys. Your public key will be saved in the file ending in
.pub
.
Open the file containing your public key. If you generated your key pair with the instruction above, the public key file should have a file extension of
.pub
.Copy the entire contents of your public key file and paste into the input field on Control Plane beneath "Public key contents".
Click "Submit New SSH Public Key".
1.5 Create and start a container
Visit the "Workstations" page on Control Plane (https://cp.strongcompute.ai).
Under "Containers" click the "Add Container" button.
Give your container a name, and select a suitable Distribution and Image - don't worry if you're not sure which Distribution and Image to use, containers are quick, easy, and inexpensive to create and delete - then click "Add Container".
On your new container, click "Start".
Containers can be started on any cluster that the user has access to, or on a "burst" workstation. Burst workstations are cloud machines provisioned "on-demand" for the sole purpose of running the user's container. Select your preferred "burst shape" from the Burst Shape menu.
The burst shape describes the type, size, and location of workstation machine. For example,
4x-L40-48GB-AWS-US-East
describes a workstation machine with 4x L40 GPUs, each with 48GB of VRAM on AWS in the US-East region. Similarly a4vCPU-32GB-AWS-Sydney
machine has zero GPUs but 4 vCPUs and 32 GB of RAM on AWS in the Sydney region.Time running a burst workstation will be charged at different rates depending on the burst shape, with generally larger more powerful machines costing more per unit time to run.
Users with access to a running cluster (e.g. Sydney Strong Compute cluster) may select that cluster from the "Select Cluster" menu and also optionally a number of GPUs to attach if available. Clusters and Burst Shapes are mutually exclusive selections - containers can only be started in one place at a time.
Containers can optionally be started with a Dataset attached. For Getting Stated, select the "FashionMNIST" dataset from the "Select Datasets" menu.
Click "Burst" or "Start" depending on whether your container is starting on a burst workstation or running cluster respectively.
Be patient while your container is starting. When starting on a burst workstation, this will involve provisioning the workstation instance, and downloading all necessary data. We take care of this for you.
Once your container has started an SSH command will be displayed which will include a specified port number and the login root@ip-address which you can use to access your User environment inside your development container.
You may need to extend this ssh command to specify the private key to use as shown below. If you submitted to Control Plane your public key saved at
~/.ssh/<default-name>.pub
then you should be able to ignore this requirement.Note that your container must be started in order for you to connect to it via SSH.
Also note that your development container may be issued a new port number when it is stopped and started. If you are prompted for a password when attempting to access your development container via SSH, ensure you are using the correct port.
# First run the following and, paste full output line into your ISC User Credentials
# (replacing "<key-name>" with the name of your SSH key file)
cat ~/.ssh/<key-name>.pub # (make sure it's the file with ".pub" extension!)
# Then, connect to our server with the below
# (replacing "<container-ip>" and "<key-name>")
ssh -p PORT root@<container-ip> -i ~/.ssh/<key-name> # (no ".pub" here)
Open a terminal and run the ssh command above (with path to your private key if necessary). You will be greeted with a welcome message and your terminal will now show
root@<id>:~#
.Run
isc ping
and you will receive the following response to indicate that you are properly authenticated with the ISC.Using credentials file credentials.isc Success: {'data': 'pong'}
Note: Your environment is running in a Docker container. Your home directory is read/write mounted at /root
. A shared directory accessible to all members of your Organisation is read/write mounted at /shared
. You can install any software you require in your container which will be committed and pushed to our Strong Compute docker registry when you "Stop" your container and when you launch an experiment.
Users should save all project files (including virtual environments) to /root
in order to minimise the size of your container. This will mean your container starts as fast as possible and your experiments launch on the ISC as fast as possible.
Datasets mounted to your container are available in /data
. Navigate to this directory and list the contents with the following command in your container terminal.
cd /data && ls -la
You will find a directory named according to the ID of the FashionMNIST dataset, and the dataset itself within that directory. See the Datasets section of these docs and visit the Datasets page in Control Plane (https://cp.strongcompute.ai) for more information.
1.6 Accessing your development container in VSCode
It is strongly recommended to access your development environment using an Integrated Development Environment such as VSCode which supports SSH connection, particularly for less experienced users.
Download and install VSCode https://code.visualstudio.com/download.
Open VSCode.
Click on the Extensions tab on the left-hand side of the VSCode window.
Search for and install the "Remote - SSH" extension.
Click on "Remote Explorer" on the left-side of the VSCode window.
Open the "REMOTES" accordion on the left side panel.
Hover over "SSH" with your cursor and click on the little cog icon.
Press Return to open the file at
/<path>/<to>/.ssh/config
.When the config file opens, copy and paste the following into it, replacing
<port>
with the port number displayed at Step 5 of Section 2.3 above, and/<path>/<to>/.ssh/<key-name>
with the path to your private key from Step 3 of Section 2.2 above (note, do not include the .pub extension).Host ISC HostName <container-ip-address-from-workstations-page> User root Port <port> IdentityFile /path/to/.ssh/<key-name>
Save and close the config file.
Note: If you "Stop" and "Start" your container, you may be assigned a new
<ip-address>
and<port>
number and you will need to update your config with that new<ip-address>
and<port>
number.
Hover over the "REMOTES" accordion title with your cursor, and click the refresh icon.
When you see "ISC" appear in the "SSH'' list, hover over "ISC" and click on the right-pointing arrow that appears.
When you are prompted to confirm that you want to continue, press Return.
Click on "Open Folder".
Press Return to open the root directory inside your development container.
When you are prompted to confirm that you trust the authors of this directory, click on "Yes, I trust the authors".
Open the terminal by clicking the tray button in the top-right of the VSCode window.
Run
isc ping
and you will receive the following response to indicate that you are properly authenticated with the ISC.Using credentials file credentials.isc Success: {'data': 'pong'}
Congratulations, you are all set to start running experiments on the ISC. Follow the next steps in this guide to configure and launch your first "hello world" experiment, and learn about necessary steps to make sure your experiment is "interruptible" (including what this means).
Last updated