|
More palm/explore links:
+ Quick Start Guide
+ Overview of System Resources
+ Filesystem Access and Policies
+ Programming Environment
+ Batch Queues
+ Software and Tools
|
 |
palm Programming Environment
Intel Compilers: Intel
IPF (Itanium Processor Family) Compilers: C/C++,
Fortran for Linux
- Setting the Environment
Variables
A system called "modules" is
installed on palm to
centralize the location of
licensed products from Intel
and SGI. The following modules
are loaded automatically by
default:
intel-comp.7.1.042, scsl.1.5.1.1, and mpt.1.11.0.0
(in /etc/csh.login for
tcsh/csh and /etc/profile for
sh/ksh/bash)
If you use C shell, issue the following
command to load (or reload) other
modules:
%source /opt/modules/default/init/csh
If you use Bourne shell, issue the
following command to load (or reload)
other modules:
%. /opt/modules/default/init/bash
The following module commands are
useful to remember:
- module
avail: to find out what
other modules are available.
- module
list: to list which
modules are in your environment
- module
purge: to unload all
loaded modulefiles
- module
load module_name:
to load the desired modules.
- module
switch old_module_name
new_module_name: to
switch between different versions
of a software
- Modules
currently available on palm
(descriptions of software follow
in this document):
- gcc-3.2.2
- gcc/g77 version
3.2.2 from GNU
- Installed under /opt/pd/gcc/gcc-3.3.2
- gcc-3.2.3
- gcc/g77 version
3.2.3 from GNU
- Installed under /opt/pd/gcc/gcc-3.2.3
- gcc-3.3
- gcc/g77 version
3.3-20030623 from
GNU
- Installed under /opt/pd/gcc/gcc-3.3-20030623
- gcc-3.3.1
- gcc/g77 version
3.3.1 from GNU
- Installed under /opt/pd/gcc/gcc-3.3.1
- gcc-3.4.3
- gcc/g77 version
3.4.3 from GNU
- Installed under /opt/pd/gcc/gcc-3.4.3
- histx+.1.2a
- SGI histx software
version 1.2a
- Installed under /opt/sgi/histx+/1.2a
- intel-comp.7.1.032
- Intel C/C++ Compiler
version 7.1.032
- Intel Fortran Compiler
version 7.1.035
- Intel Debugger
version 7.22
- Installed under /opt/intel/comp/7.1.032
- intel-comp.7.1.042 (default
loaded for users at login)
- Intel C/C++ Compiler
version 7.1.042
- Intel Fortran Compiler
version 7.1.042
- Intel Debugger
version 7.22
- Installed under /opt/intel/comp/7.1.042
- intel-comp.8.1.021
- Intel C/C++ Compiler
version 8.1.021
- Intel Fortran Compiler
version 8.1.018
- Intel Debugger
version 8.1
- Installed under /opt/intel/comp/8.1.021
- intel-comp.8.1.024
- Intel C/C++ Compiler
version 8.1.024
- Intel Fortran Compiler
version 8.1.021
- Intel Debugger
version 8.1
- Installed under /opt/intel/comp/8.1.024
- intel-comp.8.1.026
- Intel C/C++ Compiler
version 8.1.026
- Intel Fortran Compiler
version 8.1.023
- Intel Debugger
version 8.1
- Installed under /opt/intel/comp/8.1.026
- intel-comp.8.1.029
- Intel C/C++ Compiler
version 8.1.029
- Intel Fortran Compiler
version 8.1.025
- Intel Debugger
version 8.1
- Installed under /opt/intel/comp/8.1.029
- intel-comp.8.1.030
- Intel C/C++ Compiler
version 8.1.030
- Intel Fortran Compiler
version 8.1.026
- Intel Debugger
version 8.1
- Installed under /opt/intel/comp/8.1.030
- intel-comp.9.0.021
- Intel C/C++ Compiler
version 9.0.021
- Intel Fortran Compiler
version 9.0.021
- Intel Debugger
version 9.0-10
- Installed under /opt/intel/comp/9.0.021
- Documentation installed
under /opt/intel/comp/9.0.021/doc
- intel-comp.9.0.023
- Intel C/C++ Compiler
version 9.0.023
- Intel Fortran Compiler
version 9.0.024
- Intel Debugger
version 9.0-11
- Installed under /opt/intel/comp/9.0.024
- Documentation installed
under /opt/intel/comp/9.0.023/doc
- intel-mkl.7.2.1.003
- Intel Math Kernel
Library version 7.2.1.003
- Installed under /opt/intel/mkl/7.2.1.003
- mpt.1.9.1.0
- SGI Message Passing
Toolkit version 1.9.1.0
- Installed under /opt/sgi/mpt/1.9.1.0
- mpt.1.10.1.0
- SGI Message Passing
Toolkit version 1.10.1
- Installed under /opt/sgi/mpt/1.10.1.0
- mpt.1.11.0.0 (default
loaded for users at login)
- SGI Message Passing
Toolkit version 1.11.0.0
- Installed under /opt/sgi/mpt/1.11-100 (Infiniband
is not supported
in mpt prior to 1.11)
- mpt.1.11.1.0
- SGI Message Passing
Toolkit version 1.11.1.0
- Installed under /opt/sgi/mpt/1.11.1.0
- pd-hdf.5-1.6.4
- pd-sun-java-sdk.1.4.2_06
- Sun Java2 SDK version
1.4.2_06 (unsupported)
- Installed under /opt/pd/sun-java-sdk/1.4.2_06
- scsl.1.4.1.0
- SGI Scientific
Library version 1.4.1.0
- Installed under /opt/sgi/scsl/1.4.1.0
- scsl.1.5.1.1 (default
loaded for users at login)
- SGI Scientific
Library version 1.5.1.1
- Installed under /opt/sgi/scsl/1.5.1.1
- C/C++ compiler: ecc (version
7 compilers), and icc (version
8 compilers)
Syntax:
% ecc [option(s)]
prog.{c|C|cc|cpp|cxx|i}
Example: (suggested in HP's Itanium
processor family performance tuning
guide as the "Best Practices" options)
%ecc -O2
-ftz -ipo -IPF_fltacc -IPF_fma
Current default version of C/C++
on palm: ecc of version 9.0
Version 7.1:
The Intel C++ Compiler 7.0 for Linux
is substantially source and object
code compatible with GNU C. Version
7 of the compiler has added more
gcc extensions support, which eases
the porting of applications with
the Intel compiler. This allows you
to recompile your existing software
with the Intel C++ Compiler 7.0 as
a simple way to add performance to
your application. Alternatively,
you can build applications by compiling
specific modules with the Intel C++
Compiler and link them with modules
compiled with GNU C. This is especially
useful if you want to start using
the Intel compiler on a few modules
first. Additionally, the Intel C++
Compiler is compliant with the C++
ABI standard, which enables stronger
binary compatibility with gcc version
3.2. The Intel C++ Compiler 7.0 for
Linux also includes additional language
features that provide the capability
to build the Linux kernel with some
minor modifications. In addition,
the Intel C++ Compiler is substantially
compatible with tools you probably
already use in developing your Linux
applications such as: make, Emacs,
and gdb.
| Top
of Page |
- Fortran compiler: efc (for
version 7), ifort (for version
8)
Syntax:
% efc [option(s)]
prog.{f|for|ftn|f90|fpp}
Example: (suggested in HP's Itanium
processor family performance tuning
guide as the "Best Practices" options)
%efc -O2
-ipo -IPF_fma -ftz -IPF_fltacc
Current default Fortran compiler
on palm: efc of version 7.1.042
Version 7.1:
The Intel Fortran Compiler for Linux
is substantially compatible with widely
used Linux application development
tools such as make, Emacs, and gdb.
In addition, it is substantially source
compatible with Compaq Visual Fortran
6.6. This means you can take your source
code and recompile your applications
with minimal changes to get improved
performance on Linux. Compatibility
is extended into the ability to handle
big endian files. This is a mechanism
to read and write data files in Big
Endian mode. In the technical computing
world, data files will be generated
on various platforms, including systems
that use the big endian model of computing.
This option will allow you to use files
that have been generated on different
platforms with ease.
Version 8.0:
Intel Compiler Fortran Compiler 8.0
is a new generation of Intel Fortran
that combines the best technology from
both Intel Fortran and Compaq Visual
Fortran. The "front-end" of the compiler,
which provides Fortran language features
and Fortran-specific optimizations,
is now derived from that of Compaq
Visual Fortran. The Fortran run-time
library (I/O and non-math intrinsics)
also derives from Compaq Visual Fortran.
The "back-end" is from the latest generation
of Intel's high-performance code generation
and optimization technology to achieve
the best performance on Intel processors.
Note: Use
the following to load the new versions
of Fortran compilers:
module switch intel-comp.7.1.042
intel-comp.8.1.021
- Endian:
IA-64 (Itanium Architecture,
64 bit) provides hardware-level
mechanisms to specify which
endian model should be used
when accessing data, either
big-endian or little-endian.
Little endian results in the
least significant byte of the
load operand being stored in
the least significant byte
of the target operand. Big-endian
results in the most significant
byte of the load operand being
stored in the least significant
byte of the target operand.
The Itanium Family architecture
is endian-agnostic and can
work with both forms.
Little endian is the default. To
use big-endian unformatted files
for I/O, file format conversion is
accomplished by the following operations:
- The READ operation converts
big-endian format to little-endian
format.
- The WRITE operation converts
little endian format to big-endian
format.
To perform the conversion, do the
following:
- Csh:
setenv F_UFMTENDIAN MODE;EXCEPTION
Sh : export F_UFMTENDIAN=MODE;EXCEPTION
MODE = big | little
EXCEPTION = big:ULIST | little:ULIST | ULIST
ULIST = U | ULIST,U
U = decimal | decimal -decimal
MODE defines
the current format of the data, represented
in the files; it can be omitted. The keyword "little" means
that the data have little-endian format and
will not be converted. For IA-32 systems, this
keyword is a default. The keyword "big" means
that the data have big -endian format and will
be converted. This keyword may be omitted together
with the colon.
EXCEPTION is
intended to define the list of
exclusions for MODE;
it can be omitted. EXCEPTION keyword
(little or big) defines data format
in the files that are connected
to the units from the EXCEPTION list.
This value overrides MODE value
for the units listed.
Each list member U is
a simple unit number or a
number of units. The number
of list members is limited
to 64. decimal is a non-negative
decimal number less than 232.
Converted data should have
basic data types, or arrays
of basic data types. Derived
data types are disabled.
Example:
- setenv
F_UFMTENDIAN big
All input/output operations
perform conversion from
big-endian to little-endian
on READ and from little-endian
to big-endian on WRITE.
- setenv
F_UFMTENDIAN "little;big:10,20"
or setenv F_UFMTENDIAN
big:10,20
or setenv F_UFMTENDIAN
10,20
In this case, only on unit numbers 10 and
20 the input/output operations perform
big-little endian conversion.
- setenv
F_UFMTENDIAN "big;little:8"
In this case, on
unit number 8 no
conversion operation
occurs. On all other
units, the input/output
operations perform
big-little endian
conversion.
- setenv
F_UFMTENDIAN 10-20
Define 10, 11, 12, ...19,
20 units for conversion
purposes; on these units,
the input/output operations
perform big-little endian
conversion.
- setenv
FORT_CONVERT55 BIG_ENDIAN
- use '-convert
big_endian' compiler
flag. (only available after
compiler version 8.0.021).
Note: On
the Intel Itanium 2, all code is
stored in little-endian order in
memory.
Note: SGI,
SUN, HP, IBM, Motorola systems store
data in big-endian order, while Intel
and DEC VAX systems store them in
little-endian order.
- Record Length for Unformatted
I/O:
In previous versions (earlier
than version 8) of Intel Fortran,
the default RECL= unit for
UNFORMATTED files was bytes.
Version 8.0 adopts the Compaq
Fortran default unit of four
bytes (a numeric storage unit.)
You can specify one-byte units
by adding the compiler option "-assume
byterecl".
According to "ISO/IEC 1539: 1991
(E) Fortran 90 p. 117", "If the file
is being connected for unformatted
input/output, the length is measured
in processor dependent units." (single
precision words) Thus, intel version
7 compiler and SGI's MIPSpro compilers
aren't standard compliant. Intel
version 8.x is standard compliant
and it provides a switch (-assume
byterecl) to help users port
data generated with non-standard
compliant compilers.
- Some useful options for efc and/or ecc:
- -auto:
Places variables, except
those declared as SAVE,
on the run-time stack (-auto_scalar is
default). Required for
thread safety. If you specify -recursive or -openmp,
the default is -auto.
- -CB or -check
bounds:
Checks array bound
during run time. Available
only after compiler
version 8.0.024
- -check or -check
all: Checks
several run-time conditions,
such as arg_temp_created, bounds, format, output_conversion.
- -convert (with
options): Specifies
the format for unformatted
files containing numeric
data. Options include big_endian, cray, ibm,
etc. Available only
after compiler version
8.0.021.
- -DD, -DX, -DY:
Compiles debugging statements
indicated by the letter D,
or X,
or Y in
column 1 of the source
code.
- -fpe0 or -fep1, or
-fpe3: Available in Version
8 comilers only.
Specifies floating-point exception handling
for the main program at run-time:
-fpe0 - Floating
underflow results in zero; all other floating-point
exceptions abort execution.
-fpe1 - Floating
underflow results in zero; all other floating-point
exceptions produce exceptional values {signed
Infinities or NaNs} and execution continues.
-fpe3 - All
floating-point exceptions produce exceptional
values {signed Infinities, denormals, or NaNs}
and execution continues. This is the default;
it provides full IEEE support. (Also see -ftz.)
- -fpp:
Uses the fpp preprocessor
on Fortran source files.
- -ftz:
Flushes underflows to zero.
Turned on by -O3.
Use this option when the
denormal values are not
critical to application
behavior.
- -g:
Generates symbolic debugging
information and line numbers
in the object code for
use by source-level debuggers.
If you specify the -O2 option
with the -g option,
some of the debugging information
returned may be inaccurate
as a side-effect of optimization.
If you do not make your
optimization choice explicit
when -g is
specified, the -g option
implicitly disables optimization
as if -O0 were
specified.
- -i{2|4|8}:
Defines the default KIND
for interger variables
and constants in 2, 4 and
8 bytes; -i4 is
the default.
- -ip:
Performs inter-procedural
analysis within a file.
- -IPF_fma[-]:
Enables[disables] the combining
of floating point multiplies
and adds/subtracts operations.
- -IPF_fltacc[-]:
Enables[disables] optimizations
that affect floating-point
accuracy.
- -ipo:
Inter-procedural analysis
across files.
- -lifport:
Links libifport.a.
This is used in version
8.
The equivalence in version 7 is -Vaxlib.
- -list :
Prints a source listing
to stdout.
- -mp:
Restricts optimizations
that cause some minor loss
or gain of precision in
floating-point arithmetic
to maintain a declared
level of precision and
to ensure that floating-point
arithmetic more nearly
conforms to the ANSI and
IEEE standards.
- -mp1:
Restricts floating-point
precision to be closer
to declared precision with
less impact to performance
than with -mp option.
The option will ensure
the out-of-range check
of operands of transcendental
functions and improve accuracy
of floating-point compares.
- -mP3OPT_ecg_mm_fp_ld_latency=##:
This is an undocumented
flag. It is useful when
one tries to stretch the
pipeline to improve performance.
If you want the compiler
to stretch the pipeline
with a 20-cycle latency,
then use -mP3OPT_ecg_mm_fp_ld_latency=20.
- -O0:
No optimization.
- -O2:
Default optimization
level. Used for best
overall performance on
typical integer applications
that do not make heavy
use of floating point
math. Enable the following
capabilities for performance
gain:
- constant propagation
- copy propagation
- dead-code elimination
- global register allocation
- global instruction scheduling and control
speculation
- loop unrolling
- optimized code selection
- partial redundancy elimination
- strength reduction/induction variable simplification
- variable renaming
- predication
- software pipelining
- -O3:
Includes more software
pipelining, prefetching,
and loop reorganization.
- -openmp:
Enables the parallelizer
to generate multithreaded
code based on the OpenMP
directives. This option
implies that -fpp and -auto are
ON.
- -openmp_report{0|1|2}:
Controls the OpenMP parallelizers
diagnostic levels. Default
is -openmp_report1.
- -openmp_stubs:
Sets compilation of the
OpenMP programs to be in
sequential mode. The OpenMP
directives are ignored
and a stub OpenMP library
is linked (sequentially).
- -opt_report:
Generates optimizations
report and directs to stderr.
- -parallel:
Enables the auto-parallelizer
to generate multithreaded
code for loops that can
be safely executed in parallel.
- -par_report{0|1|2|3}:
Controls the auto-parallelizer's
diagnostic levels.
- -prof_gen:
Instruments the program
for profiling to get the
execution count of each
basic block. It is used
in phase 1 of the PGO (profile-guided
optimizations) to instruct
the compiler to produce
instrumented code in your
object files in preparation
for instrumented execution.
- -prof_use:
Used in phase 3 of the
PGO to instruct the compiler
to produce a profile-optimized
executable and merges available
dynamic-information (.dyn)
files into a pgopti.dpi file.
- -r4:
Specifies the size of
the real numbers to four
bytes (default).
- -r8 or -autodouble:
Defines real variables
to be REAL(KIND=8).
- -S:
generates assembly listing
.
- -safe_cray_ptr:
No aliasing for Cray pointers.
- -save:
Places variables, except
those declared as AUTOMATIC,
in static memory.
- -stack_temps:
Compiling with -nostack_temps instructs
the compiler to allocate
space in the heap for temporary
arrays. -stack_temps tells
the compiler to allocate
space for temporary arrays
on the runtime stack whenever
possible. Default is -nostack_temps. Using -stack_temps may
improve OpenMP performance.
(needed only for version
7 compiler)
- -static:
Prevents linking with shared
libraries. Use the static
library instead. Use this
option when both dynamic
and static libraries exist
in the same directory.
Note: in
MIPSpro f90, -static has
a different meaning (statically
allocates all local variables).
- -traceback:
Available in Version
8 compilers only.
Tells the compiler to generate extra information
in the object file to allow the display of
source file traceback information at runtime
when a severe error occurs. The default is -notraceback.
- -u, -implicitnone:
Sets IMPLICIT NONE by default
- -V:
Displays compiler version
information.
- -Vaxlib:
Link with portability
library
-Vaxlib has
been replaced by -lifport in
version 8.
Another option is to
add 'USE
IFPORT' to the source
code.
- -w:
Suppresses all warning
messages.
- -WB:
Issue a warning instead
of an error for out-of-bounds
array references
- -zero:
Implicitly initializes
to zero all data that is
uninitialized. Used in
conjunction with -save.
- Filename Extension:
- filename.a:
object library, passed
to ld
- filename.f, filename.ftn, filename.for:
compiled by Intel Fortran
Compiler; assumes fixed
form source
- filename.fpp:
Fortran fixed form source,
preprocessed by the Intel
Fortran preprocessor fpp;
then compiled by the Intel
Fortran Compiler
- filename.f90:
Fortran 90/95 source, compiled
by the Intel Fortran Compiler;
free-form source
- filename.F:
Fortran fixed form source,
passed to preprocessor
(fpp)
and then compiled by the
Intel Fortran Compiler
- filename.s:
assembly file, passed to
the Intel Itanium assembler
- filename.o:
compiled object file, passed
to ld(1)
For more information, read 'man
efc' or 'efc
-help'.
SGI works closely with Intel on the specification
of these compilers to ensure that they can
take advantage of the Altix 3000 family architecture.
GNU Compilers
GNU compilers: C , Fortran 77
gcc-3.2.3 (default), gcc-3.3,
and gcc-3.3.1 are available as
loadable modules on palm.
A GNU compiler with Fortran
extensions to support Fortran
95 is available from the Free
Software Foundation.
| Top
of Page |
Math Libraries
- libimf.a
Intel special-purpose math library functions, including
some transcendentals.
libimf.a is
automaticaly linked by efc and ecc.
- libm.a
Math library compatible with GNU
Note: Specifying -lm on
the link line results in symbol
resolution from glibc's libm.
C/C++
The following C/C++ libraries
are provided with the Intel compilers:
- libguide.a, libguide.so:
for support of OpenMP-based programs
- libsvml.a:
short vector math library
- libirc.a:
Intel's support for Profile-Guided
Optimizations (PGO) and CPU dispatch
- libimf.a, libimf.so:
Intel's math library
- libcprts.a, libcprts.so:
Dinkumware C++ library
- libunwind.a, libunwind.so:
Unwinder library
- libcxa.a, libcxa.so:
Intel's runtime support for C++
feature
MKL
The Intel Math Kernel Library
(MKL) intel-mkl.7.2.1.003 is installed
on palm.
MKL is includes highly optimized,
thread-safe math routines for HPC
science, engineering, and financial
applications that
require maximum performance on
Intel processors.
Library Functionality
* Linear Algebra (BLAS and LAPACK)
* Linear Algebra (Direct and Iterative Sparse Solvers)
* Fast Fourier Transforms (FFTs)
* Vector Math Library
* Vector Statistical Library (random number generators)
info on using the library:
http://www.intel.com/cd/software/products/asmo-na/eng/perflib/mkl/219843.htm
SCSL
SCSL is a comprehensive collection
of scientific and mathematical
functions that have been optimized
for use on the Altix 3000. The
libraries include optimization
of basic linear algebra subprograms
(BLAS), a linear algebra package,
signal processing functions such
as fast Fourier transforms (FFTs),
and liner filtering operations
and other basic solver functions.
More information can be found
through 'man
scsl'.
Note: MKL
and SCSL are very similar in
that they both provide scientific
and mathematical routines such
as BLAS and FFTs.
SCSL version(s) available on palm:
scsl-1.4.1.0
scsl-1.5.1.1
To use SCSL, link one of the
following libraries:
-lscs
-lscs_mp (for
multi-threaded programs)
-lscs_i8
-lscs_i8_mp
MPT
SGI Message Passing Toolkit
is an optimized set of the MPI
and SHMEM parallel programming
libraries. These libraries implement
an innovative "global pointer" construct
that allows jobs to address both
local and remote memory regions,
crossing node boundaries without
a performance penalty. Other
features include:
- MPI 1.2-compliant implementation
- NUMAlink optimizations for
single host
- NUMAlink optimizations for
multi-hosts
- Optimized MPI collectives
- MPI statistics
- Automatic aborted job cleanup
- MPI-2 capabilities
- MPI I/O
- One-sided communication
PUT, GET, FENCE, LOCK/UNLOCK
(ACCUMULATE in mpt 1.8)
- Replacements for deprecated
MPI-1 data types
- C++ bindings
- Generalized requests
- MPI-2 attributes
- SHMEM library
- Simple shared-memory
interfaces
- One-sided "get" and "put" operations
- less overhead and better performances
- more natural interfaces for many applications
- High-performance collective
operations, including reductions
and broadcasts
- Remote global pointer
capability
- Optimized implementations
- Optimized MPI send/recv across
partitions
- MPI one-sided across partitions
- SHMEM across partitions (in
MPT 1.8)
Note: XPMEM
is the driver that allows shared
memory across partitions.
MPT versions available on palm:
- mpt 1.9.1.0
- mpt 1.10.1.0
- mpt.1.11.0.0 (default)
A few tunable optimizations
to try:
- setenv
MPI_STATS
- MPI_BUFS_PER_PROC
- MPI_BUFS_PER_HOST
- MPI_BUFFER_MAX
- MPI_DSM_CPULIST -
to assign ranks to CPUs
- MPI_DSM_VERBOSE -
to display placement information
- Use dplace for
more explicit placement, for
example:
mpirun
-np 4 dplace -s1 -c4-7
a.out
- setenv
MPI_DSM_PPM 1 (Linux
in MPT 1.8) - allows use
of only one process per node,
useful for a memory bound
code
- PAGESIZE_DATA -
use it when encountering lots
of TLB misses
- MPI_DSM_MUSTRUN or MPI_DSM_DISTRIBUTE (in
MPT 1.8) - use it to pin CPUs
Note: MPI_DSM_DISTRIBUTE is
set in the PBS environment
by default (Jan. 28, 2004).
Compiling MPI programs:
- efc prog.f
-lmpi
- ecc prog.c
-lmpi
- g77 -I/usr/include
prog.f -lmpi
- gcc prog.c
-lmpi
Note: The
Intel 7 versions of compiler
do not recognize the environmental
variables used in modules. Fortunately,
a fix was implemented at our
site. If you ever need to use
the -I option
(which adds a directory to include
file search path) and the -L option
(which instructs linker to search
the specified path for the library)
in conjunction with -lmpi,
use the following:
%efc
prog.f -I/opt/sgi/mpt/1.9.1.0/include
-L/opt/sgi/mpt/1.9.1.0/lib
-lmpi
Running MPI Programs:
- Running on a single host
mpirun
-np 32 a.out
- Running on multiple hosts/partitions
mpirun
host1 8 , host2 4 a.out
Note: -lmpi requires
that an executable be launched
with mpirun
- FFIO
This library allows programmers
to control specifics of I/O
transfers to maximize performance.
Consult man
intro_ffio for more
information about FFIO.
- CPU sets and memory placement
These features enable system
services and applications to
specify which CPUs they may
be scheduled on and from which
nodes they may allocate memory.
- Array Services
The Array Services software
package contains a library,
a system daemon, and a set
of commands that enable developers
to define and administer cluster
configurations and manage the
set of jobs running on the
cluster.
| Top
of Page |
|
|
|