Contents
- How do I get access to Beocat?
- How do I login to Beocat?
- How do I transfer files to or from Beocat
- How do I compile my programs?
- How do I checkpoint jobs with Berkeley Lab Checkpoint/Restart (BLCR)?
- How do I submit jobs to the queue?
- How are the filesystems on Beocat set up?
- Additional tools
- How to get help
How do I get access to Beocat?
You will first need a Kansas State eID. You can request one here https://eid.k-state.edu if you do not have one already. After you have recieved your eID, send an email to beocat@cis.ksu.edu with your name, department, degree level, research area, and research advisor.
How do I login to Beocat?
When you have received login rights to Beocat with your eID, then you can proceed to log in to the system. Beocat currently only offers access through SSH (Secure Shell).
Windows
For logging in from Windows, I recommend using PuTTY http://putty.nl. The download page will have many options, you want putty.exe. After downloading, there is no setup, simply double click on the exectuable. You will be greeted with the following settings window.
Enter beocat.cis.ksu.edu in the 'hostname' text box and make sure the 'SSH' radio button is checked. You may wish to save these settings under a name such as 'beocat' to save typing on future logins. After you have entered that information, hit 'Ok' and you will be prompted to save the host's key in the cache.
Click 'Yes' and you will arrive at the login screen.
Enter your login credentials here. Please note that your password will not show up at all, not even the traditional '*****' style.
You are now logged in to Beocat. Your login scripts may display different information.
OSX/Linux/Unix
If you are using OSX, Linux, or Unix, start your favorite terminal emulator. Use the program ssh for connecting to Beocat.
kuffs@[dr-orpheus] ~ % ssh beocat.cis.ksu.edu
or use username@beocat.cis.ksu.edu if your username on your local computer is different from your username on Beocat.
aaron@[dr-orpheus] ~ % ssh kuffs@beocat.cis.ksu.edu Password for kuffs@W2K.CIS.KSU.EDU:
You will prompted for your password. Note that it will not be displayed, not even with '*'s.
After you are logged in via your client you will be greeted with a prompt similar to this.
Last login: Wed Mar 21 00:59:30 2007 from adsl-69-155-228-250.dsl.tpkaks.swbell.net kuffs@[loki] ~ %
You are now ready to start your work on Beocat.
How do I transfer files to or from Beocat
Once you have established how to log in to Beocat, it is likely that you have some files to transfer over from another system.
Windows
For Windows, I recommend WinSCP http://winscp.net. Download it and install it. When you first start it up you will be prompted with the window below.
Fill out the 'Host name' and 'User name' fields with the appropriate values. Optionally, you can also enter your password and save the connection as a bookmark. If you do not enter your password now, you will be prompted for it upon connecting. Click 'Login' and you will be prompted with a host key dialog similar to the one you were presented with in PuTTY.
Click 'Yes' on this one as well.
This is the working window for WinSCP. You can see that your local files are presented in the left-hand pane and your files on Beocat are presented in the right-hand pane. To transfer files or directories from one place to another, simply drag them from one side to the other.
OSX/Linux/Unix
For OSX, Linux, or Unix use the program scp.
Open up a console or virtual terminal and run:
scp local_file beocat.cis.ksu.edu:~/
The same works for directories as well, with the -r flag
scp local_directory beocat.cis.ksu.edu:~/ -r
(As with regular ssh, you will need to include username@ if your Beocat username is not the same as your local username.)
To copy files from Beocat, use a syntax like this:
scp beocat.cis.ksu.edu:~/some_file .
Or for a directory:
scp beocat.cis.ksu.edu:/some_dir . -r
Read the scp manpage for more details.
How do I compile my programs?
Serial programs
Fortran
ifort or gfortran
C/C++
gcc and g++
Parallel programs
Fortran
mpif77 or mpif90
C/C++
mpicc mpi++
Using makefiles
A simple example
More information
How do I checkpoint jobs with Berkeley Lab Checkpoint/Restart (BLCR)?
Information on checkpointing can be gained here: http://support.cis.ksu.edu/BeocatDocs/SunGridEngine#head-e5ead79b61d523530eeaf491746cbc23942f9817
Additional information on BLCR
See the BLCR Users Guide for more information
How do I submit jobs to the queue?
Job submission and other ways to interact with the queue can be found here: http://support.cis.ksu.edu/BeocatDocs/SunGridEngine#head-4f41b9904b0609bc97dd5e3921421a8f47f119df
How are the filesystems on Beocat set up?
Mountpoint |
Local / Shared |
Size |
Filesystem |
Advice |
/home |
Shared |
14TB total, quota'd * |
zfs |
Good enough for most jobs, will be used by default |
/tmp |
Local |
>30GB (varies per node) |
ext2 |
Good for I/O intensive jobs |
* Use 'du -h $HOME' to check your quota limits
Usage Advice
For most jobs you shouldn't need to worry, your default working directory is your homedir and it will be fast enough for most tasks. I/O intensive work should use /tmp, but you will need to remember to copy your files to and from this partition as part of your job script. This is made easier through the $TMPDIR environment variable in your jobs.
Example usage of $TMPDIR in a job script
1 #!/bin/bash
2
3 #copy our input file to $TMPDIR to make processing faster
4 cp ~/experiments/input.data $TMPDIR
5
6 #use the input file we copied over to the local system
7 #generate the output file in $TMPDIR as well
8 ~/bin/my_program --input-file=$TMPDIR/input.data --output-file=$TMPDIR/output.data
9
10 #copy the results back from $TMPDIR
11 cp $TMPDIR/output.data ~/experiments/results.$PBS_JOBID
You need to remember to copy over your data from $TMPDIR as part of your job. That directory and its contents are deleted when the job is complete.
Additional tools
GNU screen
GNU screen is a terminal multiplexer. It allows you to run multiple terminal sessions inside one. Not only that, but it allows you to disconnect and reconnect to your session. That means that if your network connection is interrupted, your work isn't.
GNU Screen is a somewhat complicated program. The following two links have decent writeups that will get you started on using it.
htop process manager
Htop is a better looking and more functional top. It displays processes in many different formats, with and without colorization. It also offers a menu system for selecting these options.
nmon monitor
Nmon stands for "Nigel's Monitor". It is a handy program to monitor various information about the system, all easy selected when it's running.
http://www.ibm.com/developerworks/aix/library/au-analyze_aix/
This is the view you will get when you first start nmon.
As you can see, it has a list of keys to turn on the various monitoring subsystems. When you enable a monitor, its view pane will pop up in the program.
In this next screenshot, I have enabled the CPU, memory, and network monitoring systems.
Nmon also has a tool to create performance reports, called 'nmon analyser'. Check it out at http://www.ibm.com/developerworks/aix/library/au-nmon_analyser/
How to get help
Unix man pages
GNU info system
This documentation