|
Eagle Software: Languages, Libraries, Applications, and Tools
This page lists tools and software available on the Eagle SP system at
ORNL. If you have any further questions or comments, please send them to
consult@ccs.ornl.gov.
Note: To find out the version of an IBM software use: lslpp
-l | grep software_name
For other non-IBM software, look in the directory /apps/software_name/prod/machine
and see where the symbolic links points to. Here, machine is for
example rs_aix51_32, for RISK AIX5.1 32 bit implementation, or rs_aix51_64,
also RISK AIX5.1 but 64 bit implementation (valid for the Power4 Cheetah
only).
- xlf, f77, xlf90,
xlf95 - serial IBM Fortran compilers
installed in /usr/bin
- xlf_r, xlf90_r, xlf95_r
- thread-safe IBM Fortran compilers installed in /usr/bin.
These compilers support OpenMP.
- mpxlf, mpxlf90, mpxlf95
- a shell script that compiles Fortran programs while linking in
the Partition Manager, Message Passing Interface (MPI), and Message Passing
Library (MPL) installed in the /usr/bin. Note that this links
to IBM's MPI.
- mpxlf_r, mpxlf90_r, mpxlf95_r
- a shell script that compiles Fortran programs while linking in
the thread-safe Partition Manager, Message Passing Interface (MPI), and
Message Passing Library (MPL) installed in the /usr/bin. Note
that this links to IBM's MPI.
- xxlf - an x-windows interfaces
to the xlf compiler, located in /usr/bin
For more information on the Fortran compilers, consider the following
- xlc - IBM C compiler installed
in /usr/bin
- xlC - IBM VisualAge C++ compiler
installed in /usr/bin. This version supports templates and
the Standard Template Library.
- xlc_r - thread-safe IBM C
compiler installed in the /usr/bin. xlc_r supports OpenMP
- xlC_r - thread-safe IBM VisualAge
C++ compiler installed in the /usr/bin. This version supports
templates and the Standard Template Library.
- mpcc - a shell script that
compiles C programs while linking in the LoadLeveler, Message Passing
Interface (MPI), and LAPI installed in the /usr/bin. mpcc
links with IBM's version of MPI.
- mpcc_r - a shell script that
compiles C programs while linking to the thread-safe LoadLeveler, Message
Passing Interface (MPI), and LAPI installed in /usr/bin.
mpcc_r links with IBM's version of MPI.
For more information on the IBM C compilers, consider the following
- gcc,
g++, and g77 - GNU
Project C, C++ and F77 compilers installed in /usr/local/apps/gcc.
- gdb, - GNU Project debugger
installed in /usr/local/apps/gdb.
For more information on the GNU C compilers, consider the following
The default version of Java is 1.4. You may also find Java 1.3 in /usr/java130.
- javac - IBM Java class compiler
installed in /usr/java14_64/bin
- java - IBM Java interpreter
installed in /usr/java14_64/bin
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 interpreter is installed in /usr/bin.
For more information, consult the Perl home page.
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/local/bin
For more information, consult the Python home page.
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.
Version 8 of Tcl and Tk are installed on the Eagle in /usr/local/lib.
For more information, consult Tcl/Tk Information. There are also man pages on Tcl/Tk
like man tk and man n info.
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.
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
- Global Arrays
- Overture
- POOMA
- Code Execution Tools
- CUMULVS
- Globus
- PAWS
- SILOON
- TAU
- Library Development Tools
- ATLAS & PHiPAC
- Nexus
- PADRE
- PETE
See The ACTS Toolkit for more information.
ARPACK is a collection of Fortran77 subroutines designed to solve
large scale eigenvalue problems.
The package is designed to compute a few eigenvalues and corresponding
eigenvectors of a general n by n matrix A. It is most appropriate for large
sparse or structured matrices A where structured means that a matrix-vector
product w = Av requires order n rather than the usual order n2 floating point
operations. This software is based upon an algorithmic variant of the Arnoldi
process called the Implicitly Restarted Arnoldi Method (IRAM). When the matrix
A is symmetric it reduces to a variant of the Lanczos process called the
Implicitly Restarted Lanczos Method (IRLM). These variants may be viewed
as a synthesis of the Arnoldi/Lanczos process with the Implicitly Shifted
QR technique that is suitable for large scale problems. For many standard
problems, a matrix factorization is not required. Only the action of the
matrix on a vector is needed.
ARPACK software is capable of solving large scale symmetric, nonsymmetric,
and generalized eigenproblems from significant application areas. The software
is designed to compute a few (k) eigenvalues with user specified features
such as those of largest real part or largest magnitude. Storage requirements
are on the order of n*k locations. No auxiliary storage is required. A set
of Schur basis vectors for the desired k-dimensional eigen-space is computed
which is numerically orthogonal to working precision. Numerically accurate
eigenvectors are available on request
For more information see the ARPACK homepage
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 the Eagle at /usr/apps/lib/libaztec.a.
The Aztec header files are located in /usr/apps/include and named
az_aztec.h, az_aztec_defs.h, and az_aztecf.h.
For more information see the AZTEC homepage
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.
There are basically two BLACS libraries installed. One version comes
from IBM and is found in /usr/lib. In actuality, IBM provides a
libblacs.a and a libblacssmp.a. The libblacssmp.a must be used if you use
a reentrant compiler (_r). There is also a locally compiled BLACS library
in /usr/apps/lib. This library is actually composed of three different
libraries: libblacsF77init.a, libblacsCinit.a, and libblacs.a. The BLACS
library is typically used when using the ScaLAPACK library. In this case,
if you use the ScaLAPACK from /usr/apps/lib, then use the BLACS
in that same directory. If you use ScaLAPACK type solvers from PESSL, then
use the BLACS in /usr/lib.
For example, to compile and link your program(file.c of file.f) to the
BLACS libraries, you must use the following:
f77 -o file file.f -L/usr/apps/lib -lblacsF77init -lblacs
or
xlc -o file file.c -L/usr/apps/lib -lblacsCinit -lblacs
based on the language you used.
For more information see the BLACS
Home Page.
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.
BLAS is in ESSL, so please see the ESSL info below
for information on linking.
For more information see the BLAS Home
Page .
The Engineering and Scientific Subroutine Library (ESSL) is a library
of mathematical subroutines that have been highly optimized for the SP family
of machines and so run much faster than equivalent routines from other libraries.
On the Eagle, the ESSL routines are installed in /usr/lib and
there are 3 different libraries that you could link to:
- libessl_r.a for a thread-safe
library,
- libessl.a for a standard serial
library, or
- libesslsmp.a for a shared-memory
parallel library.
If you want Parallel ESSL go to PESSL
There are several ESSL resources
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 /usr/local/lib
and named libfftpack.a. Note that ESSL also contains FFT routines.
For more information see the FFTPACK home page.
FFTW is a C subroutine library for computing the Discrete Fourier Transform
(DFT) in one or more dimensions, of both real and complex data, and of arbitrary
input size.
Many benchmarks show that FFTW's performance is typically superior to
that of other publicly available FFT software. Moreover, FFTW's performance
is portable: the program will perform well on most architectures without
modification.
FFTW appears to be the fastest program most of the time for in-order
transforms, especially in the multi-dimensional and real-complex cases. Hence
the name, "FFTW," which stands for the somewhat whimsical title of "Fastest
Fourier Transform in the West." Please visit the benchFFT home page for
a more extensive survey of the results
For more information see the FFTW home page.
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. There are two HDF formats, HDF (4.x and previous releases) and HDF5.
These formats are completely different and NOT compatible.
For more information see the HDF home
page.
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. That's why you normally
have to link with the libessl.a library
also. For example, you may compile your file.f file as follows:
f77 -O4 -qnoipa -o file file.f -L/usr/apps/lib -llapack
-lessl
Note that some of the LAPACK functionality is also in the ESSL library.
LAPACK is installed in /usr/apps/lib.
For more information on LAPACK, consult the LAPACK Home Page.
The Mathematical Acceleration SubSystem (MASS) consists of libraries
of tuned mathematical intrinsic functions. MASS is currently at version
3.0. Each MASS version includes the material from pervious versions that
has not been changed, except that Version 3.0 no longer includes the library
that runs only on POWER2 processors. The POWER2 library remains available
in Version 2.7 of MASS. MASS has a
- scalar library (libmass.a)
- general vector library (libmassv.a)
- vector library tuned for POWER3 architecture (libmassvp3.a)
- vector library tuned for POWER4 architecture (libmassvp4.a)
MASS libraries can be found in /usr/local/lib. The MASS header
file massv.h can be found in /usr/local/include.
For more information see the IBM MASS web
page.
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.
For more information consult the METIS manual.
The Message Passing Interface (MPI) is a subroutine library for
writing distributed memory parallel programs that conform to a vendor-independent
standard and so are portable to many platforms. There are mpcc
and mpxlf compilers on the Eagle, which are scripts that compile
C and Fortran programs while linking them with an IBM version of MPI library
libmpi.a. There are also threaded compilers mpcc_r and
mpxlf_r which link to the thread-safe IBM MPI library libmpi_r.a.
These are installed under /usr/lpp/ppe.poe/lib. If you use the
IBM mp-compilers, you do not need to explicitly link to the MPI library.
For more information see the following resources
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 of NetCDF is installed on the Eagle. The NetCDF executable
is located at /usr/local/bin.
Several NetCDF libraries are available and they are listed below.
- The C++ library is available at /usr/local/lib32/libnetcdf_c++.a
with a symbolic link to this library available at /usr/local/lib/libnetcdf_c++.a.
- The C, F77, and F90 library is available at /usr/local/lib32/r4i4/libnetcfd.a
with a symbolic link at /usr/local/lib/libnetcdf_c.a and
/usr/local/lib/libnetcdf_real4.a.
- The F77 library for codes compiled with "-qautodbl=dbl4", that is
codes that use 8-byte reals and 4-byte integers, is available at
/usr/local/lib32/r8i4/libnetcfd.a with a symbolic link at
/usr/local/lib/libnetcdf_real8.a.
You can access the C include files and the F90 ".mod" files using the following
compiler option:
-I/usr/local/include
More information is available at NetCFD
Online Info and with the online man pages for
netcdf, netcdf.3f, netcdf.3f90, ncdump, ncgen, ncview
NetCDF Operators (NCO) is a suite of operators that take NetCDF
files as input, perform an operation on the file, and then output a NetCDF
file. Version 2.0 is available on the Eagle. The NCO executable is available
at /usr/local/bin and the NCO library is installed in /usr/local/lib/libnco.a.
For more information see
- NCO Info
- Documentation on NCO is available at /usr/local/lib/nco
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 eagle, the PAPI library has been installed in
/apps/PAPI/prod/rs3_aix51/.
For more information see
the PAPI Homepage
PARMETIS provides parallel graph partitioning and sparse matrix reordering.
It provides the following key components: static graph partitioning, dynamic
graph partitioning, and fill-reducing reordering. It is available as an
MPI library. The Parmetis library is installed in /apps/PARMETIS,
but with links in /usr/apps/lib. It's also available in /usr/local/ACTS/PARMETIS.
For more information consult the PARMETIS manual.
Parallel Basic Linear Algebra Subroutines (PBLAS) for distributed
memory MIMD computers. There are two libraries that contain PBLAS routines.
IBM provides PBLAS routines in their PESSL library, and the PBLAS routines
are also in the ScaLAPACK library libscalapack.a found in /usr/apps/lib.
It is suggested that if you use the PBLAS in PESSL, that you use it in
conjunction with the PESSL ScaLAPACK and the BLACS in /usr/lib. If
you use ScaLAPACK from /usr/apps/lib, then you will automatically
get the PBLAS in the same library.
To compile and link your code with the PBLAS libraries, you must use the
following flags based on the language you used. For Fortran programs,
-L/usr/apps/lib -lscalapack -lblacsF77init -lblacs -lessl
For C programs use,
-L/usr/apps/lib -lscalapack -lblacsCinit -lblacs -lessl
For more information see
Parallel ESSL (PESSL) is a scalable mathematical subroutine library
that supports parallel processing applications running on the SP or workstation
clusters. Parallel ESSL supports the Single Program Multiple Data (SPMD)
programming model, where the programs running the parallel task are identical.
The tasks, however, work on different sets of data. PESSL contains ScaLAPACK-like
solvers and PBLAS routines. This library is usually used in conjunction
with IBM's BLACS library.
The PESSL routines are installed in /usr/lib. Programs are
usually compiled with the option -lpessl. If you compile your code
with the thread-safe compilers, then link with the libpesslsmp.a
PESSL library using -lpesslsmp. For the sequential library, see ESSL.
For additional information see IBM Documentation on ESSL.
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.
The PETSC library is installed on the Eagle at /apps/PETSC and
/usr/local/ACTS/PETSC. Both version 2.1.5 and 2.1.6 are available.
Unlike the other software packages, the PETSC installation retains the directory
structure of the package. There are no symbolic links to its archive and
header files. To use the package, you are required to specify the path of
the files.
For more information see the following:
PVODE actually refers to a trio of closely related solvers:
- PVODE for systems of ordinary differential equations
- KINSOL for systems of nonlinear algebraic equations
- IDA for systems of differential-algebraic equations
PVODE is a solver for large systems of ordinary differential equations on
parallel machines. It contains methods for the solution of both stiff and
non-stiff initial value problems. The PVODE library is installed in /apps/PVODE,
but with links in /usr/apps/lib. It's also available in /usr/local/ACTS/PVODE.
For more information see the following:
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.
The freely available version of ScaLAPACK from Netlib is installed in
/usr/apps/lib. There are also ScaLAPACK type solvers in PESSL.
To compile and link your code with the ScaLAPACK libraries, you must use
the following linker flags:
-L/usr/apps/lib -lscalapack -lblacsF77init -lblacs -lessl
or
-L/usr/apps/lib -lscalapack -lblacsCinit -lblacs -lessl
based on which language you used.
See the ScaLAPACK Home Page for more information.
SuperLU is a general purpose library for the direct solution of
large, sparse, nonsymmetric systems of linear equations on high performance
machines.
The library routines will perform an LU decomposition with partial pivoting
and triangular system solves through forward and back substitution. The
LU factorization routines can handle non-square matrices but the triangular
solves are performed only for square matrices. The matrix columns may be
preordered (before factorization) either through library or user supplied
routines. This preordering for sparsity is completely separate from the
factorization. Working precision iterative refinement subroutines are provided
for improved backward stability. Routines are also provided to equilibrate
the system, estimate the condition number, calculate the relative backward
error, and estimate error bounds for the refined solutions.
SuperLU package comes in three different flavors:
- SuperLU for sequential machines
- SuperLU_MT for shared memory parallel machines
- SuperLU_DIST for distributed memory
The SuperLU library is installed in /apps/SUPERLU, but with
links in /usr/local/lib. It's also available in /usr/local/ACTS/SUPERLU.
It has the same directory structures as the other ACTS libraries. Example
codes, make files, and LoadLeveler batch scripts can be found under examples/.
The distributed version, SUPERLU_DIST_2.0, was installed in /apps/SUPERLU_DIST.
For more information see the SuperLU web page.
TurboMPI is a small library of collective functions from the MPI
API (such as broadcast, reduce, allreduce, barrier, alltoall) that are optimized
for running MPI applications on shared memory nodes.
The Turbo library will work with any MPI application. To use it, simply
link you MPI application with the Turbo library (-lturbo):
mpxlf90_r your_mpi_code.f -lturbo
Version 2.0.0 contains
mpi_barrier mpi_allreduce mpi_reduce mpi_bcast mpi_alltoall mpi_alltoallv
There are several environment variables allowing to control Turbompi behavior:
MPJ_SHM_SIZE size in MBytes of the shared segment on each node (default 160) MPJ_MTAB max number of communicators (default 20) MPJ_MPPN number of processors per node (default 32) MPJ_MNODE number of nodes (default 64)
You can disable a routine by setting to 0 (1 for active) the following variables:
MPJ_BARRIER (default = 1) MPJ_ALLREDUCE (default = 1) MPJ_REDUCE (default = 1) MPJ_BCAST (default = 1) MPJ_ALLTOALL (default = 0) 1:development version, 2:turbompi tested version MPJ_ALLTOALLV (default = 0) MPJ_INFO=1 (default = 0) give information about Turbompi
The TurboMPI library is installed in /usr/apps/lib. You can
find examples in the /apps/TurboMP/2.0.0/Examples directory.
For more information see the IBM TurboMP web page.
TurboSHMEM is a fairly complete implementation of the SHMEM API popularized
by Cray Research for their T3D/E systems. The implementation here uses IBM
Low-Level API (LAPI) technology to obtain optimized one-sided communication
for the put/get operations. This allows applications already written with
the SHMEM API to run on IBM platforms with minimal source code changes.
Due to the evolution of LAPI, not to mention IBM POWER hardware over the
last couple of years, some design decisions were made to simplify the maintenance
of this library. This library is tuned to the current POWER4 hardware and
its supporting software (PE 3.2). Although not optimal for POWER3 systems,
it runs reasonably well on those systems, but is not "feature complete".
Limitations are as follows:
POWER3 - PSSP 3.2 (PE 3.1) -------------------------- (1) No 64-bit support. (2) No shared memory support. (3) Vector data movement now supported.
TurboSHMEM is already enabled to use TurboMPI,
which optimizes the collective functions on shared memory nodes. There is
no need to add the -lturbo library. However, for environment variables associated
with the turbo library, please see the TurboMPI section.
To use TurboSHMEM, use thread-safe compile invocation (e.g., _r versions).
e.g., mpxlf_r -q64 myprogram.f -L. -lsmaf . Use libsmaf
for Fortran and libsmac for C. Then, in order to run the code,
some environment variables must be set.
POWER3: MP_MSG_API=mpi,lapi MP_SHARED_MEMORY=yes MP_EUILIB=us MP_RESD=yes LAPI_USE_SHM=yes
*** NOTE: LAPI cross memory kernel extension must be loaded in order to
use LAPI_USE_SHM environment variable. See PSSP 3.5 admin manual
for details.
To execute the program use "poe a.out" just with any other parallel program.
The TurboSHMEM libraries are installed in /usr/apps/lib. You
can find examples in the /apps/TurboMP/2.0.0/Examples directory.
There are several caveats when using TurboSHMEM. - please consult the README.TurboSHMEM
file in /apps/TurboMP/2.0.0.
For more information see the IBM TurboMP web page.
xldb and dbx --- the IBM debugger for serial programs.
Installed in /usr/bin.
See IBM Parallel Environment for AIX: Debugging and Visualizing
for more information on debugging.
Ensight is a tool for all Types of Engineering Analysis, Visualisation
and Communication.
For more information see the Ensight
web page.
The GNU Image Manipulation Program gimp is a freely distributed
piece of software for tasks like photo retouching and image composition and
authoring. It can be used as a simple paint program, an expert quality photo
retouching program, an online batch processing system, a mass production
image renderer, an image format converter, etc. It has most of the functionality
of Photoshop but without the cost. GIMP also comes with extensive documentation
for both users and programmers, including a manual, tutorials, examples of
various features, links to other GIMP-related sites, and an extensive list
of plug-ins.
For more information see the gimp web page.
gnuplot is a command-driven interactive function plotting program.
It can be used to plot functions and data points in both two- and three-dimensional
plots in many different formats.
For more information see the Gnuplot
web page.
grace Grace is a WYSIWYG 2D plotting tool. Its capabilities are
roughly similar to GUI-based programs like Sigmaplot or Microcal Origin plus
script-based tools like Gnuplot or Genplot. Its strength lies in the fact
that it combines the convenience of a graphical user interface with the power
of a scripting language which enables it to do sophisticated calculations
or perform automated tasks.
Grace is a descendant of ACE/gr, also known as Xmgr. For more information
see the Grace web page.
The Grid Analysis and Display System (GrADS) is an interactive desktop
tool that is used for easy access, manipulation, and visualization of earth
science data. The format of the data may be either binary, GRIB, NetCDF,
or HDF-SDS (Scientific Data Sets). GrADS has been implemented worldwide on
a variety of commonly used operating systems and is freely distributed over
the Internet.
The GrADS executables available in /usr/local/bin are the following:
- gradsc
- gradsdods
- gradshdf
- gradsnc
- gribmap
- gribscan
- gxeps
- gxps
- gxtran
- stnmap
- wgrib
See the GRaDS online
documentation for more information. Note that a short tutorial is available
in /usr/local/apps/grads/1.8/example.
The Hardware Performance Monitor (HPM) toolkit is suite of tools
for monitoring the hardware performance counters during execution of a program.
The HPM toolkit consists of three parts:
hpmcount is a simple-to-use standalone utility that starts an application
and provides summary utilization data for the entire run.
libhpm, rather, is an interface that can be used to obtain utilization
statistics for certain regions of code. The libhpm interface stores output
in two files: one that is a plain text file that looks similar to the hpmcount
output and the other which is designed to be visualized by the hpmviz
utility.
See HPM Introduction and the HPM_README.html for more information.
Also, there are examples in /apps/HPM/prod/doc/example.
NetCDF Viewer (NCView) is a visual browser for netCDF format files. Typically
you would use ncview to get a quick and easy, push-button look at your netCDF
files. You can view simple movies of the data, view along various dimensions,
take a look at the actual data values, change color maps, invert the data,
etc.
The ncview executable is in /usr/local/bin. You can also view
and man page on ncview by typing man ncview.
For more information see the NCView home
page.
Open Visualization Data Explorer (OpenDX) is an application and
development software package for visualizing data, especially 3D data from
simulations or acquired from observations. It uses a Graphical User Interface
based on X windows and Motif. It comes with a complete set of standard visualization
tools for looking at data. These tools include cutting planes, vector line
traces, volume rendering, and isosurface/isocontour tools.
For more information see the OpenDX web
page.
pdbx is a command-line parallel debugger built on dbx.
See IBM Parallel Environment for AIX: Debugging and Visualizing
or "man pdbx" for more information on debugging.
TotalView is a source-level, X-windows GUI debugger for single- and
multi-process programs. It works with Fortran and Fortran 90, C, and C++.
It can be used for parallel programs that run under POE with hand-coded
MPI calls. It also has facilities for multi-process thread-based parallel
programs such as OpenMP.
The Totalview parallel debugger is located at /apps/toolsworks/totalview.
The following are online Totalview resources:
xmgr is a 2-D plotting tool for numerical data. The last public
release was 4.1.2. The xmgrace tool supercedes
it.
xmgrace is a WYSIWYG 2-D plotting tool for numerical data.
For more information, see the Grace home page.
The xprofiler tool is an extended graphical user interface profiler.
To use the xprofiler tool, the source code has to be compiled with the
-pg option. Then use xprofiler after the execution of the
compiled program. xprofiler is installed in /usr/bin.
For more information, see Profiling parallel programs with Xprofiler (IBM).
prof and gprof --- the IBM serial and parallel execution
profilers installed in the /usr/bin
See IBM Parallel Environment for AIX: Debugging and Visualizing
for more information on profiling.
All Gnu libraries are installed in /usr/local/gnu/, but have links
in /usr/local/lib so that the actual location does not need to
be known.
DejaGnu is a framework for testing other programs. Its purpose is to provide
a single front end for all tests. Think of it as a custom library of Tcl
procedures crafted to support writing a test harness. A Test Harness is
the testing infrastructure that is created to support a specific program
or tool. Each program can have multiple testsuites, all supported by a single
test harness. DejaGnu is written in Expect, which in turn uses Tcl -- Tool
command language. For more information see the Dejagnu Web Page.
A group of utilities that displays difference between and among text files.
'diff' outputs the difference between two files producing no ouput if the
files are identical. If the file are binary (non-text) it reports only that
they are different. 'cmp' shows the offsets and file numbers where two files
differ; it can also show, all the characters that differ between the two
files. 'sdiff' merges two files interactively. 'diff3' shows differences
among three files.
For more information see the Diffutiles Web
Page.
jpeg (pronounced "jay-peg") is a standardized image compression mechanism.
JPEG stands for Joint Photographic Experts Group, the original name of the
committee that wrote the standard. JPEG is designed for compressing either
full-color or gray-scale images of natural, real-world scenes. It works
well on photographs, naturalistic artwork, and similar material; not so well
on lettering, simple cartoons, or line drawings. JPEG handles only still
images.
The libjpeg.a library is available in /usr/local/lib.
For more information see the Independent JPEG
Group Web Page.
The Portable Application Code Toolkit (PACT) is a toolkit than can be used
to create portable applications. PACT is LLNL environment of choice for handling
unique data, portable computing environments, and for converting data for
visualization.
The PACT toolkit is only available in /apps/pact. For more information
see the PACT Web Page.
The Portable Network Graphics (PNG) format provides a portable, well-compressed,
well-specified standard for lossless bitmapped image files. Although the
initial motivation for developing PNG was to replace GIF (Graphics Interchange
Format), the design provides some useful new features not available in GIF,
with minimal cost to developers. It has two major uses: the World Wide Web
(WWW) and image-editing.
For more information see the PNG Web Page.
sprng provides both FORTRAN and C (also C++) interfaces for the use of the
parallel random number generators. The current version has all the generators
in one library. A complete documentation is not available yet. Please consult
the old documentations and the interface at SPRNG home.
The GNU Text Utilities are the basic text-manipulation utilities of the
GNU operating system.
For more information see the Textutiles Web Page.
ungif is a library for reading and writing gif images. The save functionality
uses an uncompressed gif algorithm to avoid the Unisys LZW patent. This
library is based heavily on Eric Raymond's libgif package and implements
a superset of that_library's API.
For more information see the libungif Web
Page.
zlib is a free, general-purpose, lossless data-compression library
for use on virtually any computer hardware and operating system. The zlib
data format is itself portable across platforms. Unlike the LZW compression
method used in Unix compress(1) and in the GIF image format, the compression
method currently used in zlib essentially never expands the data. (LZW can
double or triple the file size in extreme cases.) zlib's memory footprint
is also independent of the input data and can be reduced, if necessary,
at some cost in compression.
The libz.a library is available in /usr/local/lib. For
more information see the zlib Web Page.
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.6 version is installed in /apps/NWChem/4.6/rs3_aix51_32_LAPI/bin/,
and its data files reside in /apps/NWChem/4.6/rs3_aix51_32_LAPI/data.
There is a link to the NWChem executable in /usr/local/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:
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
The LoadLeveler is a batch scheduling system available through
IBM for the SP, which provides the facility for building, submitting and
processing serial or parallel (MPI and LAPI) batch jobs within a network
of machines.
Other LoadLeveler Resources
The Parallel Operating Environment (poe) is used to to compile,
run, and monitor parallel programs under the Parallel Environment (PE).
The POE starts LoadLeveler, which in turn allocates nodes to your program.
Depending on how your environment variables are set, specific nodes can
be requested with a host.list file or LoadLeveler can choose nodes that
are available. Poe is installed in /usr/bin/poe.
Other POE Resources
xloadl is a graphical interface for monitoring usage of the Eagle
SP system.
xloadl is located at /usr/lpp/LoadL/full/bin/xloadl.
|