Getting started

From DeepSense Docs
Jump to: navigation, search
Getting Started with DeepSense 

1. Request access to DeepSense

If you belong to an approved DeepSense project but do not yet have an account then send an email to support@deepsense.ca with the subject "DeepSense Account Request" and provide your:

 a) First and last name
 b) Faculty of Computer Science username or requested FCS username
 c) Dalhousie BannerID
 d) Project ID
 e) Project leader
 f) Reason for requesting the account.

2. Change your password

If you require a new FCS username then your initial password is your BannerID. Please change it immediately upon receiving access to DeepSense.

You can change your password at https://www.cs.dal.ca/csid

Alternatively, you can contact cshelp@cs.dal.ca to reset your password.

3. Logging on

DeepSense has two login nodes, login1.deepsense.ca and login2.deepsense.ca . You can access these through SSH with your username and password from any computer on campus.

For example, if your userid is user1, you can connect to deepsense by typing ssh user1@login1.deepsense.ca just like logging on to any other network computer.

From off campus you’ll need to use the Dalhousie VPN (https://wireless.dal.ca/vpnsoftware.php). If you are not a Dalhousie staff, student, or faculty but require offsite access and cannot use the Dalhousie VPN then contact your project leader or support@deepsense.ca to make different arrangements.

The login nodes are intended for testing and compiling code. Please don’t run long or intensive computation on these nodes. Keep reading for instructions on how to submit compute jobs to dedicated compute nodes.

4. Transfer data

For more information, see Transferring Data.

Deepsense has two protocol nodes, protocol1.deepsense.ca and protocol2.deepsense.ca . You can connect to these using the SAMBA transfer protocol, e.g. smb://protocol1.deepsense.ca with your username and password. Please contact your project leader or support@deepsense.ca if you need help transferring large amounts of data.

Data transferred through the protocol nodes will be located in the shared /data directory .

See Storage policies for more information about the available shared file systems, storage policies, and backup policies.

5. Configure your environment

DeepSense compute and management nodes are IBM Power8 computers (ppc64le) running Redhat Enterprise Linux. See Resources for more details on the available nodes.

5.1 Loading a python environment

You have two options for using python on DeepSense. You can use the systemwide python install, managed by DeepSense administrators. This is recommended for users new to Linux. You will need to contact DeepSense support to have additional software packages installed in the systemwide python.

Alternatively, you can install an Anaconda python environment or other software in your home directory. This allows you to install or update packages or software without requesting and waiting for DeepSense staff.

Systemwide python (managed by DeepSense)

DeepSense nodes have anaconda2 python installed in /opt/anaconda2. To use this systemwide python add a parameter to your .bashrc file in your home directory:

echo ". /opt/anaconda2/etc/profile.d/conda.sh" >> ~/.bashrc

Then source your .bashrc file: source ~/.bashrc

To load the python2 environment run conda activate

To use python3 you can activate the py36 environment: conda activate py36

You can add either line to your .bashrc file to automatically load the desired environment when you log in.

Local python install (managed by individual user)

See Installing local software for more information.

6. Running compute jobs

DeepSense has two different methods of submitting compute jobs.

6.1 Load Sharing Facility (LSF)

LSF is a set of command line tools for submitting compute jobs. You may be familiar with other similar software such as Sun Grid Engine or SLURM.

LSF jobs are submitted using the bsub command.

You can examine the progress of your currently running jobs with the bjobs command.

You can examine the available compute nodes and their available resources with the bhosts command.

For more information about using LSF see LSF.

6.2 Conductor with Spark (CWS)

CWS is an IBM web-based graphical interface for creating and running Apache Spark compute jobs.

To use CWS, connect to the IBM Spectrum Computing Cluster Management Console at https://ds-mgm-02.deepsense.cs.dal.ca:8443. Log in with your username and password.

Note that currently you need to accept a self-signed web certificate. In the future this will be fixed.

For more information about using CWS see CWS.

7. Deep Learning packages and other available software

DeepSense has a variety of Deep Learning packages installed as part of IBM PowerAI including Tensorflow, Caffe, and PyTorch. These packages are installed in /opt/DL/ on each compute node and typically need to be activated before using them, e.g. source /opt/DL/tensorflow/bin/tensorflow-activate.

Deep Learning packages are typically used on the GPU nodes but some deep learning packages can also be used on the login nodes and CPU-only nodes. This can be useful for testing your code or running CPU-bound workloads. To use the deep learning packages on the login or compute nodes you will also need to load the GPU libraries with source /opt/DL/cudnn/bin/cudnn-activate. Note that some deep learning packages may fail if run without a GPU, e.g. Caffe currently requires a GPU.

For a brief tutorial including running Caffe and Tensorflow in a Jupyter notebook see Getting started with Deep Learning.

See Available software for the current list of installed software. If you require additional software you are welcome to install it locally in your home directory or contact DeepSense support.

8. Technical and research support

DeepSense has a dedicated support team of research scientists ready to help you with technical questions, installing software, or even research questions.

If you can't find the answer to your question on this wiki or need more extensive help then send an email to support@deepsense.ca .

See Technical support for more information about the support available.