PicoCluster Tutorial

These instructions should help you connect to and use the PicoCluster.

The Hardware

PicoCluster is a 64-bit, ARM computer with 20 nodes. The login node is pc0, and the other nodes are pc1, pc2, pc3, …, pc17, pc18, and pc19. Each node has 4 cores, and 8 GB of RAM. Thus, PicoCluster has 80 cores in total.

Connecting to PicoCluster

Note: You should be able to connect to PicoCluster from anywhere on campus. It is not accessible off campus.

To connect to PicoCluster, you will use ssh. ssh allows you to remotely and securely log in to a system. If you are on macOS, you should already have ssh. If you are on Windows, you may or may not have it. If you don’t, you can download a program like PuTTY.

After opening Terminal on macOS, or either the Command Prompt or something like PuTTY on Windows, you can connect to PicoCluster by executing the following commands:

  • ssh yourWoffordUsername@picocluster

Your username indicates that it is you logging in, and the hostnames map directly to fixed IP addresses on the local Wofford network for each machine (PicoCluster is 192.168.1.30). If you are using something like PuTTY, you fill in either the hostname or the IP address ahead of time (these are the “server”), then connect, then type your username without the IP address part. It should ask for your password.

You are given a default password of terrier123, so type that as your password. Note that it will look like nothing is being typed at all, but that is correct behavior on Linux-based systems. As soon as you log in, I highly recommend you change your password using the passwd command. If you forget your password, just send me an email, and I can reset your password for you.

Using the Cluster

You are given your own account with a home directory. Type pwd to see the directory you are in (by default, you will be in your home directory). This is your own personal directory to use as you wish. Some other commands to try are ls to print all the files/directories in your current directory, cd to change into a new directory, cd .. to move back a directory, and mkdir to make a new directory. If you ever get lost, you can always get back to your home directory by typing cd ~.

For example, try typing the following commands (in this order, and hitting ENTER after each one):

pwd         # see your current working directory
ls          # see what is in your current working directory
mkdir test  # make a new directory inside your current working directory
cd test     # move into that new directory
pwd         # confirm that you have moved into it
ls          # see what is there (it should be nothing)
cd ..       # go back a directory
pwd         # confirm your went back
ls          # confirm your files/directories are still there

I also recommend to learn a command-line text editor like nano, vim, or emacs. nano is the easiest to get started with.

For example, to make a new plaintext file in the current directory you are in, type nano nameOfFile.

Compiling a C Program

Create a new directory, change into it, then type nano hello.c to make a new C code file. When the editor opens, type:

#import "stdio.h"

int main() {
  printf("Hello, world!\n");
  
  return 0;
}

After you type out that program, hit CTRL+O to save it, and CTRL+X to exit nano.

To compile your program, type gcc -o hello hello.c . To run your program, type ./hello . That’s it!