The Tufts High Performance Compute (HPC) cluster delivers 35,845,920 cpu hours and 59,427,840 gpu hours of free compute time per year to the user community.
Teraflops: 60+ (60+ trillion floating point operations per second) cpu: 4000 cores gpu: 6784 cores Interconnect: 40GB low latency ethernet
For additional information, please contact Research Technology Services at tts-research@tufts.edu
Basic Linux
Linux information FAQs
Â
Where do I find basic unix/linux resources?
There are many web based tutorials and howto's for anything linux oriented. Some sites of interest:
linux-tutorial, Unix info , linux.org
What are some of the basic linux and related commands?
Most usage is centered around a dozen or so commands:
ls, more, less, cat, nano, pwd, cd, man, bsub, bkill, bjobs, ps, scp, ssh, cp, chmod, rm, mkdir, passwd, history, zip, unzip, tar, df, du, head, tail, grep |
---|
Â
See the man pages for complete documentation. Here is a short description of some.
Basic Unix Commands
Action Needed | Command | Usage |
---|---|---|
Display contents of a file | cat | cat filename |
Copy a file | cp | cp [-op] source destination |
Change file protection | chmod | chmod mode filename or |
Change working directory | cd | cd pathname |
Display file (/w pauses) | more | more filename |
Display first page of text | less | less filename |
Display help | man | man command or |
Rename a file | mv | mv [-op] filename1 filename2 or |
Compare file | diff | diff file1 file2 |
Delete file | rm | rm [-op] filename |
Create a directory | mkdir | mkdir directory_name |
Delete a directory /w files in it | rmdir -r | rm -r directory_name |
Delete a directory | rmdir | rmdir directory_name |
Display a list of files | ls | ls [-op] directory_name |
Change the password | passwd | passwd |
Display a long list (details) | ls -l | ls -l directory_name |
Display current directory | pwd | pwd |
Display mounted filesystems | df | df |
What text editors are available?
nano, nedit, vi, vim, emacs |
---|
Â
How do I strip out ^M embedded characters in my files I transferred from my PC?
Use the dos2unix command on the file. There is man page documentation available for further info. Also check this page for additional tips.
> man dos2unix
What is a man page?
man pages are linux/unix style text based documentation. For example, to obtain documentation on the command cat:
> man cat
> xman
is the command for the x-based interface to man.
> man man
is the man documentation.
> man -k graphics
finds all related commands concerning graphics.
Are the compute nodes named differently from the old cluster compute nodes?
Yes. You should not hard code the names anywhere.
How can I verify that my requested storage is mounted?
Use the df command.
How can I view my most recent files?
> ls -ltÂ
Â
I sometime notice that my job duration can vary when I rerun a program with exactly the same inputs, condition, etc... Why?
The cluster has a mix of several different Intel CPUs and motherboard combinations. The absolute performance potential is similar among them but given the mix of other jobs sharing nodes, your results will vary. This is not something that is predictable when the cluster is well loaded.
How do I convert mixed case file names in a directory to lower case?
Issue the following in the directory of interest:
> find . -name "A-Z" | cut -c 3- - | awk '{print $1,tolower($1)}' | xargs -i echo "mv {}" | csh |
---|
Â
This will find everything with uppercase letters and rename it to the
same thing with all lowercase.
How do I uncompress and extract many .gz and corresponding tar files?
> ls -1 *.gz | xargs -n 1 -r -I {} tar zxf {} |
---|
Sometimes I get a cryptic message about too many open files, what is that?
There are several resource settings associated with a default account. To see the settings:
-bash-3.2$ ulimit -a
The default setting is 2048 for the open files parameter. A user may increase it up to 10K in 1024 increments. To set it to 4096:
-bash-3.2$ ulimit -n 4096
However, this shows what has happened on the headnode only.
Since jobs execute on compute nodes you should include this in a simple shell script along with your sbatch command, so that the new setting takes effect on the compute node as well.
Sometimes I would like to have multiple shells available on the login node, how do I do this?
There are many ways. Most often you may just login two or more times from your desktop. Or, refer to the slurm section with examples using srun.Â
It is best not to ssh into the cluster while you are on the login node of the cluster.
Â
I compiled a program locally in my account and I would like to add the location of the executables to my PATH, how do I do this?
Suppose your software directory is located in you home directory and your username is jdoe02. Your software directory is flight_program/ and there is a bin subdirectory located within containing executables.
$PATH is a global environmental variable defined for the cluster for general access to important locations. You may add to it by pre-pending the path you wish to be searched.
PATH=/cluster/home/j/d/jdoe02/flight_program/bin:$PATH export PATH |
---|
To see if it got updated:
> printenv | grep PATH |
---|
Â
Â
Â
Â
Â
Â
For additional information, please contact Research Technology Services at tts-research@tufts.edu