NCCS | User Info | search  


SGI Software: Languages, Libraries, Applications, and Tools

This page lists tools and software available on the SGI Altix system at ORNL. If you have any further questions or comments, please send them to consult@ccs.ornl.gov.

Note: To get a list all software provided by SGI in rpms, use "rpm -qa" - note that this is a very long list. To view the list of Intel compilers available on Ram, use: module avail. A module list will show the currently loaded modules. Typically this will be the intel compilers, possible SGI tools, and any patched linux software that is not officially supported by SGI yet. For other software installed by CCS, look in directories of the form /apps/<software_name>/prod/<machine>. Here,machine is ia64_rh7 or ia64_efc8034, where the ia64 represents SGI-Ram's Intel 64 bit Itanium processor and rh7 represents RedHat 7.3 and efc8034 represents version 8034 of the Intel Fortran compiler.


Languages

SGI Intel Fortran

SGI Intel C and C++

Perl

Perl is a high-level programming language. It is primarily derived from the C programming language. It has process, file and text manipulation facilities that make it particularly well-suited for tasts involving quick prototyping, system utilities, software tools, system management tasks, database access, graphical programming and web programming. The Perl 5.6.1 interpreter is installed in /usr/bin/perl.

For more information, consult the Perl home page.

Python

Python is an interpreted, interactive, object-oriented programming language. It incorporate modules, exceptions, dynamic typing, high level dynamic data types, and classes. The Python interpreter is available in /usr/bin/python

For more information, consult the Python home page.

Tcl/Tk

Tcl (Tool Control Language) is an interpreted scripting language that is mostly used for building graphical user interfaces.

Tk is a graphical toolkit that gives one access to many of the graphics primitives of the underlying windowing system, as well as providing access to many types of widgets, such as buttons, scrollbars, menus, and text boxes.

Several versions of Tcl and Tk are installed on Ram in /usr/lib and Tcl can be found in /usr/bin/tcl.

For more information, consult Tcl/Tk Information. There are also man pages on Tcl/Tk :
  man tk,   man tcl   and   man n info .


Libraries

ACTS

The Advanced Computational Testing and Simulation (ACTS) Toolkit is a set of DOE-developed software tools that make it easier for programmers to write high performance scientific applications for parallel computers.
NOTE: Most ACTS Toolkit routines are currently NOT installed on Ram. Work is underway to obtain better tuned versions. We're expecting an SGI-version of PETSc in the near future.

ACTS is divided into 4 areas in which there are several software tools each. Currently, we only have some of the ACTS Toolkit installed. In the list below, those tools listed with a link are installed.

  • Numerical Tools
  • Code Development Tools
  • Code Execution Tools
    • CUMULVS
    • Globus
    • PAWS
    • SILOON
    • TAU
  • Library Development Tools
    • ATLAS & PHiPAC
    • Nexus
    • PADRE
    • PETE

See The ACTS Toolkit for more information.

AZTEC

AZTEC is a massively parallel iterative solver library for solving sparse linear systems. Aztec is easy-to-use and efficient. Its simplicity is attained through its use of a global distributed matrix.

The Aztec library is installed on Ram at /opt/public/lib/libaztec.a. The Aztec header files are located in /opt/public/include and named az_aztec.h, az_aztec_defs.h, and az_aztecf.h.

For more information see the AZTEC homepage

BLACS

The Basic Linear Algebra Communication Subprograms (BLACS), is a library constructed by the ScaLAPACK team. It is intended for use in numerical programming where communication involves two-dimensional portions of arrays. BLACS is built on top of the MPI libraries. The BLACS library is typically used when using the ScaLAPACK library.

SGI provides all the BLACS routines within its Scientific Computing Software Library (SCSL) routines for distributed memory (SDSM).

For example, to compile and link your program (file.c of file.f) using the BLACS libraries, use the following:

efc -o file file.f -lsdsm -lscs -lmpi
or
ecc -o file file.c -lsdsm -lscs -lmpi

For more information see "man intro_blacs".

BLAS

BLAS, the Basic Linear Algebra Subprograms, are portable and efficient routines that perform vector and matrix operations. The Level 1 BLAS do vector-vector operations, the Level 2 BLAS do matrix-vector operations, and the Level 3 BLAS do matrix-matrix operations. Because of their efficiency, BLAS routines are commonly used in the development of high-quality linear-algebra software such as LAPACK and LINPACK.

SGI provides all the BLAS routines within its Scientific Computing Software Library (SCSL).

For example, to compile and link your program (file.c of file.f) using the BLAS libraries, use the following:

efc -o file file.f -lscs
or
ecc -o file file.c -lscs
The goto-BLAS are available on Ram in /opt/public/lib

For more information see the BLAS Home Page .

FFTs

The Scientific Computing Software Library (SCSL) contains many Fast Fourier Transform routines. The SCSL FFT library consists of routines that perform mixed-radix fast Fourier transforms (FFTs), as well as convolution for Finite Impulse Response (FIR) and correlation routines. When compiling your code be sure to link with -lscs .

Type   man fft  for more information, or you can type   man -k fft  to find out about all the available FFT routines on Ram.

For additional information see the Scientific Computing Software Library .

FFTPack

FFTPACK is a package of Fortran subprograms for the fast Fourier transform of periodic and other symmetric sequences. It includes complex, real, sine, cosine, and quarter-wave transforms. The library is in /opt/public/lib and named libfftpack.a. (These are actually symlinks to /apps/FFTPACK/prod/ia64_efc8034/lib/). Note that ESSL also contains FFT routines.

If you link with -lfftpack the compiler should automatically find the appropriate library.

For more information see the FFTPACK home page.

FFTW

The FFTW routines, version 2.1.5 are available in /opt/public/lib and the include files are in /opt/public/include. If you wish to see the source or use the 3.0.1 version, you can go to /apps/FFTW/version/ia64_rh73/

For additional information see the FFTW home page.

Global Arrays

The Global Arrays (GA) toolkit provides an efficient and portable "shared-memory" programming interface for distributed-memory computers. Each process in a MIMD parallel program can asynchronously access logical blocks of physically distributed dense multi-dimensional arrays, without need for explicit cooperation by other processes. Unlike other shared-memory environments, the GA model exposes to the programmer the non-uniform memory access (NUMA) characteristics of the high performance computers and acknowledges that access to a remote portion of the shared data is slower than to the local portion. The locality information for the shared data is available, and a direct access to the local portions of shared data is provided.

Global Arrays have been designed to complement rather than substitute for the message-passing programming model. The programmer is free to use both the shared-memory and message-passing paradigms in the same program, and to take advantage of existing message-passing software libraries. Global Arrays are compatible with the Message Passing Interface (MPI).

For more information on Global Arrays, see the Global Arrays Home Page.

goto-BLAS

Fast BLAS implementation for Intel processors. For more information, see High Performance BLAS by K. Goto .

HDF

HDF stands for Hierarchical Data Format. It is designed to be a portable file format for scientific data management. The HDF software includes I/O libraries and tools for analyzing, visualizing, and converting scientific data. Only HDF5 is available on Ram at this time as a module. Use "module avail" to see what is available.

For more information see the HDF home page.

LAPACK

LAPACK provides routines for solving systems of simultaneous linear equations, least-squares solutions of linear systems of equations, eigenvalue problems, and singular value problems. The associated matrix factorizations (LU, Cholesky, QR, SVD, Schur, generalized Schur) are also provided, as are related computations such as reordering of the Schur factorizations and estimating condition numbers. Dense and banded matrices are handled, but not general sparse matrices. In all areas, similar functionality is provided for real and complex matrices, in both single and double precision.

The LAPACK routines are built upon the BLAS routines. They are all included within SGI's Scientific Computing Software Library (SCSL).

For example, you may compile your file.f file as follows:

efc -o file file.f -lscs

For more information on LAPACK, consult the LAPACK Home Page.

METIS

METIS provides serial graph partitioning and sparse matrix reordering. It provides the following key components: graph partitioning, mesh partitioning, and fill-reducing reordering. It is available both as a set of stand-alone programs and as a library.

The Metis library is available on Ram in /opt/public/lib/libmetis.a. You can compile your code with Metis by simply adding the "-lmetis" flag.

For more information consult the METIS homepage .

MKL

The Intel Math Kernel Library (MKL) (with a trial license on Ram, Nov 03) is a highly optimized library including BLAS, LAPACK, DFTs, VML, VSL, subroutines and optimized for Itanium2.

For more information see the following resources

MPT

The Message Passing Toolkit Library (MPT) is a subroutine library on Ram for MPI. The MPI implementations in SGI® Message Passing Toolkit (MPT) are fully compliant with the current MPI 1.2 specification. MPT contains a number of MPI-2 features, and additional highly sought MPI-2 features continue to be added. MPT also includes SHMEM library routines.

For more information see the following resources

NCARG Graphics

NCAR Graphics is a Fortran- and C-based software package for scientific visualization. It is comprised of

  • a library containing over two dozen Fortran/C utilities for drawing contours, maps, vectors, streamlines, weather maps, surfaces, histograms, X/Y plots, annotations, and more
  • an ANSI/ISO standard version of GKS, with both C and FORTRAN callable entries
  • a math library containing a collection of C and Fortran interpolators and approximators for one-dimensional, two-dimensional, and three-dimensional data
  • applications for displaying, editing, and manipulating graphical output
  • map databases
  • hundreds of FORTRAN and C examples
  • demo programs
  • compilation scripts
For more information see the NCAR Graphics home page.

NetCDF

Network Common Data Form (NetCDF) is an interface for array-oriented data access and a library that provides an implementation of the interface. Version 3.5 is installed as a module. Use "module avail" to see what is available.

More information is available at NetCDF Online Info and with the online man pages (after loading a netcdf module) for

netcdf, ncdump, ncgen, ncview

PAPI

The Performance API (PAPI) is a standard application programming interface for accessing hardware performance counters available on most modern microprocessors. PAPI provides two interfaces to the underlying counter hardware; a simple, high-level interface for the acquisition of simple measurements and a fully programmable, low level interface directed towards users with more sophisticated needs.

On ram, the PAPI library has been installed in /apps/PAPI/prod/ia64_rh3.

For more information see the PAPI Homepage

PBLAS

Parallel Basic Linear Algebra Subroutines (PBLAS) for distributed memory MIMD computers.

SGI provides the PBLAS routines within its Scientific Computing Software Library (SCSL) routines for distributed memory (SDSM).

For example, to compile and link your program (file.c of file.f) using the PBLAS libraries, use the following:

efc -o file file.f -lsdsm -lscs -lmpi
or
ecc -o file file.c -lsdsm -lscs -lmpi

For more information see "man intro_scalapack".

PETSC

PETSC, the Portable, Extensible Toolkit for Scientific computation, provides sets of tools for the parallel (as well as serial), numerical solution of PDEs that require solving large-scale, sparse nonlinear systems of equations. PETSc includes nonlinear and linear equation solvers that employ a variety of Newton techniques and Krylov subspace methods. PETSc provides several parallel sparse matrix formats, including compressed row, block compressed row, and block diagonal storage.

Version 2.1.6 of the PETSC library is available on Ram in /apps/PETSC/petsc-2.1.6/lib.

For more information see the following:

ScaLAPACK

ScaLAPACK is a library of high-performance linear algebra routines for distributed-memory message-passing MIMD computers and networks of workstations supporting PVM and/or MPI.

SGI provides the ScaLAPACK within its Scientific Computing Software Library (SCSL) routines for distributed memory (SDSM).

For example, to compile and link your program (file.c of file.f) using ScaLAPACK, use the following:

efc -o file file.f -lsdsm -lscs -lmpi
or
ecc -o file file.c -lsdsm -lscs -lmpi

For more information see "man intro_scalapack".

SCSL

SGI's Scientific Computing Software Library (SCSL) is a collection of high-performance routines that provide support for mathematical and numerical techniques used in scientific and technical computing.

You can link to the SCSL simply with -lscs . The SCSL contains several sets of routines, including the 3 levels of BLAS, the BLACS, LAPACK, many FFTs, some Sparse Direct Solvers, and some Sparse Iterative Solvers.

SHMEM

SHMEM is a fairly complete implementation of the SHMEM API popularized by Cray Research for their T3D/E systems. SGI has incorporated the SHMEM subroutine within its MPT (Message Passing Toolkit) package.

For more information see the Message Passing Toolkit.


Tools

CDAT

The Climate Data Analysis Tools (CDAT) package is available on Ram, but not by default. CDAT is developed by the DOE Program for Climate Model Diagnosis and Intercomparison for analysis of climate data.

To use CDAT, you must load the module.

module load CDAT
See the online CDAT documentation for more information.
http://esg.llnl.gov/cdat/

gdb

gdb is a free, GNU general-purpose debugger installed in /usr/bin/gdb.
For more information on gdb, type man gdb .

Histx

Histx is a set of tools used to assist with application performance analysis. This release contains a profiling tool that can sample either instruction pointer or call stack on either timer interrupts or performance monitor counter overflows, two tools for reporting performance monitor event counts, and three filters. These tools run only on SGI Altix3000 systems.

Since this package needs LD_LIBRARY_PATH set when used, Histx was set up as a module.

For more information, please consult SGI Histx page.


Applications

NWChem

NWChem is a high performance computational chemistry software. It is designed to run on high-performance parallel supercomputers as well as conventional workstation clusters. The 4.5 version is installed in /apps/NWChem/4.5/ia64_rh7/bin/, and its data files reside in /apps/NWChem/4.5/ia64_rh7/data. There is a link to the NWChem executable in /opt/public/bin which should automatically be in every user's path. Thus, specifying the path to the executable is not necessary.

For more information, consult the following resources:

GAMESS

General Atomic and Molecular Electronic Structure System (GAMESS) does a wide range of chemical computations. The script used to run GAMESS is called "rungms" and there is a link to it placed in /opt/public/bin, which should automatically be in every user's path. The command "gmshelp" provides some information about the use of GAMESS. Additional information can be found on the GAMESS homepage.

Environment

HSI

Hierarchical Storage Interface (hsi) is a friendly interface for the users of HPSS. For more information on hsi, type "hsi help" on one of the login nodes or click on the link below.

Other HSI resources

PBS

PBS is the "Portable Batch System" job scheduler used on the Altix system.

For additional PBS information, please use



ornl | nccs | ccs | computers | disclaimer

URL http://www.ccs.ornl.gov/Ram/software-desc.html
Updated: Friday, 22-Apr-2005 16:57:08 EDT
consult@ccs.ornl.gov