Running your first application

Running your first application

This tutorial will use the PyTorch 1.8.2 application which provides a Ubuntu command line and JupyterLab web interface for development.

Select application bundle

Navigate to 'Applications' then 'Bundles' and select an application to deploy.



Name your application

Specify a name for your application in the 'APP NAME' field.  This label uniquely identifies your application and should be descriptive and meaningful.  You can use alphanumeric characters but not spaces.


Configure application resources

You can specify application resources using pre-defined templates, or by manually configuring the options.  Templates are generally recommended because they are configured with common selections for single and multi-GPU use.  



Custom configurations

Selecting a template will fill in the resource selections for vCPU, instance memory, GPU, application storage (the base operating system), and local scratch storage.  You can modify these values if requried.



            

Set application parameters

Not all applications use the same parameters.  Please use support docs to find a complete list of supported functionality
The PyTorch application requires two parameters to be set:

SSH_PUB_KEY

This is your SSH public key which can be created using OpenSSH on MacOS, Windows, and Linux.   You must provide your public key to access the application's console.  For detailed information on generating a key please refer to the quick start guide Generating SSH Keys.


JUPYTER_TOKEN

This is a secret password required to access the JupyterLab web interface.  It must be non-blank and shared with users along with the application URL for access.



Launch the application

Click 'Provision Application to launch the application.



This should take approximately 1 minute.


Application summary

When the application is provisioned close the 'Job Progress' window.  The screen will automatically refresh to show the application status.  This view is also available from the navigation menu 'Applications' > 'Applications' which shows all running and stopped instances.

The GREEN status denotes running applications while ORANGE denotes stopped applications.


Accessing the application

Use the 'Application Access' button to view the application's services:

  1. JupyterLab - HTTPS acccess to the Juypter web interface
  2. Ubuntu Console - SSH command line to access the server's console
  3. File Transfer - SFTP command line to access the server's file server



Select the copy icon next to 'Ubuntu Console' and and run the command from your local terminal (Windows, MacOS, Linux).
  1. ssh pytorch@130.250.170.17

Using the Ubuntu Console

The login user id will be the application name in lowercase - in this case 'pytorch' for the PyTorch application.
Your initial login will ask you to accept the host fingerprint which is normal and provides enhanced security in the SSH protocol.




From here you can run python3, use SFTP to upload data files and code, or install applications.  You can also see the directories for accessing attached file systems:
  1. personal - archive storage, restricted access to your user only
  2. shared - archive storage, shared for all users in your tenant only
  3. scratch - local attached storage for highest performance and low latency.

Stop the application

From the Application Status page, select 'Actions', and choose either:
  1. Stop - pause the instance and free the vCPU, memory, GPU, and local scratch resources.  The operating system storage will continue to be allocated for restart.
  2. Delete - terminate the application completely, freeing all resources.  Performance and archive storage volumes are always retained.


    • Related Articles

    • Application bundles

      Overview Denvr Dataworks offers a new type of application deployment called "Application Bundles". An application bundles packages together all resources necessary to operate a user application, including: Application code in the form of containers ...
    • Monitoring GPU performance

      Introduction This document will demonstrate several techniques that can be used to observe GPU utilization. GPU monitoring is critical in understanding how effective your application is at utilizing attached GPUs. We will use Ubuntu 20.04 Application ...
    • Generating SSH keys

      Introduction This tutorial will demonstrate how to generate a SSH key pair which is required to access an Application. In addition, this document describes how to access a running Application from multiple different SSH keys. We will use Ubuntu 20.04 ...
    • Transferring data files using SFTP

      Introduction This tutorial will demonstrate use of SFTP (Secure File Transfer Protocol) to transfer files into an application instance. Files can be read/write to the operating system disks or the Denvr Storage platforms using the /data/ filesystem. ...
    • Transferring data files using JupyterLab

      Introduction This tutorial will demonstrate use of Jupyter Lab for file transfer. Files can be read/write to the operating system disks or the Denvr Storage platforms using the /data/ filesystem. Launch Jupyter application For additional ...