Computations

These are the guidelines for running computations on the department computer system. This page contains:

  • A list of the computers available for computations
  • A description of how you must start the computations
  • What you should be aware of when storing large amounts of data

Where to run

If you have access to a fast stand-alone PC in your office, we encourage running your computations on this computer. In addition, you can access the following computers with SSH:

Host name Operating system CPUs Memory Available compilers
syvert Linux (Ubuntu 7.10) 8 Intel CPUs
(2×Quad-core Xeon 3.0 GHz)
16 GB GNU Fortran/C/C++
schwarz FreeBSD 6.2-RELEASE 2 Intel CPUs
(2×Xeon 3.06 GHz)
4 GB GNU Fortran/C/C++
lie Solaris 9 12 UltraSPARC CPUs
(6×UltraSPARC IV 1.2 GHz)
24 GB Sun Studio 10 Fortran/C/C++
and GNU Fortran/C/C++

How to start the computations

All computations running on syvert, schwarz and lie must be started by adding the special command compute before the command that starts the computation. (You may also use the special command beregning, these are equivalent. The example below uses beregning).

Examples:

lie:~$ beregning matlab
lie:~$ beregning ./a.out
lie:~$ beregning matlab -nojvm mysim.m
lie:~$ beregning ./ns -N 8 -T 10 init.dat > sim.out

and so on. The compute/beregning command makes sure that your computation is run with the right priority, so that you don't have to worry about using more than your share of CPU.

Compiling your code

To make your computations run as fast as possible:

  • If you're running your own C/C++/Fortran code (as opposed to code written in R or Matlab), it is highly recommended to turn on optimizing in the compiler.
  • On lie, compile using Sun Studio instead of the GNU compilers, if possible. Sun Studio may give a speedup in the range of 5-10 times faster code, compared to the GNU compilers.

The following compilers are available:

Host Compiler Command
syvert GNU C compiler 4.1
GNU C compiler 4.2
GNU C++ compiler 4.1
GNU C++ compiler 4.2
GNU Fortran 4.2
gcc -O2
gcc-4.2 -O3 -march=native
g++ -O2
g++-4.2 -O3 -march=native
gfortran -O3 -march=native
schwarz GNU C compiler 3.4
GNU C compiler 4.2
GNU C++ compiler 3.4
GNU C++ compiler 4.2
GNU Fortran 3.4
gcc -O2
gcc42 -O3 -march=native
g++ -O2
g++42 -O3 -march=native
f77 -O2
lie Sun Studio 10 C
Sun Studio 10 C++
Sun Studio 10 Fortran
GNU C compiler 3.4
GNU C++ compiler 3.4
GNU Fortran 3.4
cc -fast
CC -fast
f77 -fast, f90 -fast, f95 -fast
gcc -O2
g++ -O2
g77 -O2

How to store your data

  • Data sets and computation results should be stored in your scratch directory /global/work/<username> (replace <username> with your login name). This directory is accessible from all our Unix computers. It is also accessible from Windows as \\mamba.math.ntnu.no\work\<username>. Some hosts also have a scratch directory named /work that can be used for this purpose. While /work is not shared (not accessible from Windows or from other Unix hosts), it is noticeably faster than /global/work, so for disk-intensive processes, /work is preferred.
  • Beware that these directories are not backed up, but on the other hand, there's more space and no restrictions on usage (as long as the space you occupy is related to your computations).
  • Please do not store large data sets and results in your home directory. Files in your home directory are backed up by a central backup system to prevent data loss. Large datasets or easily reproducable result files from computations put an unneccessarily large load on the servers and backup systems, not to mention financial cost on the department as backup is quite expensive.
  • However: If the computation produces results you are going to publish, or data you for other reasons can't risk to lose, you may of course save the data to your home directory. In this case, move the data to your home directory when the computation is finished. Computations should never use your home directory as working directory - please use /work or /global/work for that.



2008-05-15 12:36, Per Kristian Hove
NTNU, 7491 Trondheim, tlf. 73 59 50 00. Kontakt oss
Ansvarlig redaktør: Informasjonsdirektør Christian Fossen