© Copyright 1995 Maui High Performance Computing Center.

Glossary

Select a letter to move to that section in the glossary:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

-A-

AIX
Abbreviation for Advanced Interactive Executive, IBM's licensed version of the UNIX operating system. AIX is particularly suited to support technical computing applications, including high function graphics and floating point computations.

AIXwindows Environment/6000
It is a graphical user interface (GUI) for the RISC System/6000. It has the following components:

* A graphical user interface and toolkit based on OSF/Motif
* Enhanced X-Windows, and enhanced version of the MIT X Window System
* Graphics Library (GL), a graphical interface library for the applications programmer which is compatible with Silicon Graphics' GL interface.

Amdahl's Law
A relationship stated by Gene Amdahl that states that potential program speedup is defined by the fraction of code (f) which can be parallelized:

	                     1
	    speedup   =   -------- 
	                   1  - f

ANSI
American National Standards Institute. Institution that sets standard in the computer industry for languages, data formats, and a variety of other issues.

application
The use to which a data processing system is put; for example, a payroll application, an airline reservation application.

ATM (Asychronous Transmission Mode)
A network protocol.

AXIOM
A symbolic algebra system, featuring a high level graphical user interface in front of a knowledge based core. A complete hypertext users' guide is included; from Numerical Algorithms Group.

-B-

bandwidth
The time (t) required to send W words between any two processors is:

t = L + W/B

where L = latency and B = hardware bitstream rate in words per second.

batch nodes
The nodes used by Loadleveler, the batch queuing system, for the scheduling of batch jobs.

block distribution
Technique for distributing one dimensional data arrays to different processors in a parallel application that gives the first group or block of values to the first processor, the second values to the second processor, and so on. Each processor ends up with one contiguouse group of data values. See cyclic distribution.

block-block distribution
Technique for distributing two dimensional data arrays to different processors in a parallel application that gives a rectangular block of data values to each processor.

block-cyclic distribution
Technique for distributing two dimensional data arrays to different processors in a parallel application that gives a one or more columns or rows of data values to each processor. Whether rows or columns are distributed depends on the progamming language used.

browser
Client software used for locating and viewing publicly available files on the Internet.

-C-

C
A general purpose programming language. It was formalized by ANSI standards committee for the C language in 1984 and by Uniforum in 1983.

cache
One or more high speed memories where instructions or data are held after retreiving from the main instruction or data memories. Cache memory can be accessed in fewer cycles than can main memory.

circuit switched network
Network message protocol in which messages traverse a previously configured and reserved circuit in the network. The circuit remains reserved for transmitting message packets until it is unreserved by another control packet.

client
A function that requests services from a server, and makes them available to the user. See server.

cluster
A group of processors interconnected through a high speed network that can be used for high performance computing. It provides excellent price/performance.

CMOS
Complementary Metal-Oxide Semiconductor. Chip technology used for IBM RS/6000 processors.
Communication SubSystem (CSS)
The Communication SubSystem (CSS) is the set of library routines which implement either of the above communication protocols.

control workstation
RISC System/6000 workstation that provides system management and monitoring to an SP system. Optional on SP2 since all nodes are full AIX installed.

course-grained parallelism
All processors execute a large number of instructions between communication cycles. See granularity.

CPU (Central Processing Unit)
Part of a computer that does the processing of data, including arithmetic and logical operations on numbers and the movement of data in the general purpose registers.

cyclic-block distribution
Technique for distributing two dimensional data arrays to different processors in a parallel application that gives a one or more columns or rows of data values to each processor. Whether rows or columns are distributed depends on the progamming language used.

cyclic distribution
Technique for distributing one dimensional data arrays to different processors in a parallel application that gives the first value to the first processor, the second value to the second processor, and so on until all the data values have been given to the processors. Method is similar to dealing cards from a deck to players. See block distribution.

-D-

data dependency
A condition which exists when there is multiple use of the same storage location. Data dependencies can prohibit parallel execution.

Data Explorer
IBM's visualization system and toolkit. Provides the means of applying analysis and advanced visualization techniques and the capability of distributing visualization modules across several workstations.

dbx
Symbolic debuggers for C, Fortran, Pascal, and Cobol programs running under the AIX operating system and the POE environment. See pdbx.

deadlock
A condition where two or more processes are waiting for an event or communication from one of the other processes.

decomposition
The programming procedure for restructuring a problem into smaller tasks to be performed in parallel. See domain decomposition. and functional decomposition.

default
An alternative value, or option that is assumed when none has been specified.

distributed memory
Hardware architecture in which multiple processors operate independently but each has it own private memory. See shared memory.

DMA (direct memory access)
An I/O technique that uses hardware logic for speeding data into and out of memory from external devices without the need for the processing units to generate addresses for every memory location.

domain decomposition
A programming decomposition technique in which the problem's data domains is partitioned and distributed to multiple processors for simultaneous execution. See decomposition.

-E-

ECC (error checking code)
Hardware that checks for errors in data words as they are read from memory. Single bit errors are corrected and double bit errors are detected.

embarassingly parallel
A problem that is ideally suited to a parallel processing system, leading to exception performance when compared to a sequential processing system.

ESCON
Enterprise Systems Connection. A type of communications connection frequently used with IBM S/390.

ESSL (Engineering and Scientific Subroutine Library)
IBM's library of mathematical subroutines for scientific computing. These subroutines have been tuned to exploit the RS/6000 architectures to achieve the best possible performance over a range of problem sizes.

ethernet
A high speed local area network that allows a large number of computers to communicate thru a single cable. See LAN (local area network).

-F-

f90
A portable FORTRAN90 product from Numerical Algorithms Group (NAG). Translates programs written in Fortran 77 or Fortran 90 into executable programs, relocatable binary modules, assembler source files or C source files. Supports the full ANSI/ISO standard for FORTRAN 90.

FCS (Fiber Channel Standard)
A fiber obtic network standard.

FDDI (Fiber optic Data Distribution Interface)
A cable interface capable of transmitting data at 100 Mbps (million bits per second). Originally specified for fiber lines.

file
A set of related records treated as a unit, for example, in stock control, a file could consist of a set of invoices.

fine-grained parallelism
All processors execute a small number of instructions between communication cycles. See granularity.

FMA instruction
The combined floating point multiply and add instruction.

foreign host
Any host on the network other than the local host. Also called remote host. See local host.

FORGE XHPF
A parallelizing pre-compiler for high performance Fortran from Applied Parallel Research. A Distributed Memory Parallelizer (DMP) and other parallel tools are included.

FPR (floating point register)
Very high speed storage area for 32-bit and 64-bit double precision floating point data connected to the floating point multiply and add units.

FPU (floating point unit)
The part of the processor that executes instructions on floating point data.

frame
An SP cabinet containing rack mounted processors. The SP2 has from 4 to 16 processors per frame.

FrameMaker
A professional level desk-top publishing package, which combines word processing and page layout capabilities.

FTP (File Transfer Protocol)
A protocol that transfers files between the local host and a remote host or between two remote hosts.

functional decomposition
A programming decomposition technique in which the problem is decomposed into tasks which can be distributed to multiple processors for simultaneous execution. See decomposition.

FXU (fixed point unit)
The part of the processor that executes instructions on fixed point (integer) data including memeory address generation.

-G-

Genstat 5
Numerical Algorithms Group's statistical package that provides the standard major analyses plus advanced capabilities including design of experiments and monotonic regression.

GFLOPS (Giga FLOPS)
Billions of Floating Point Operations per Second, a metric for high peformance computers.

Ghostview
A gnu software product for viewing postscript files on X-window monitor.

GL
Originally SGI's hardware dependent Graphics Library, now ported to OGL, the Open Graphics Library, a set of standard functional interfaces that can be hosted anywhere that has any graphics capabilities.

Gopher
Gopher is a public domain distributed document delivery system. It allows users to retrieve files without needing to know which Internet host contains the files or in what directory the files are stored.

GPR (general purpose register)
Very high speed storage area for 32-bit fixed point data connected to the arithmetic and logical units.

granularity
The ratio between the amount of computation each processor does and the amount of interprocessor communication which takes place. See fine-grained parallelism. and course-grained parallelism.

GUI
Graphics User Interface, providing multiple windows and iconic representations of system capabilities. Users typically select system services using a mouse to guide a sprite to point and click on a selected icon.

-H-

hierarchical memories
Hardware architecture in which multiple processors share memory within a group of processors and several groups communicate through a larger memory.

HIPPI (HIgh Performance Parallel Interface)
A high speed interface usually used to connect point-to- point. Transfer speeds are usually quoted at 100 MBps (million bytes per second).
host
A computer connected to a network, and providing an access method to that network. A host provides end-user services.

host list file
A file called that specifies the actual (specific) nodes on which you wish to run your job. Use a host list file if you want specific node allocation that you choose instead of the Resource Manager.

HSML (Harwell Sparse Matrix Library)
A library of mathematical subroutines for solving sparse matrix problems from Numerical Algorithms Group.

-I-

IEEE 754
Standard of the Institute of Electical and Electronic Engineers that defines the structure of floating point numbers and how arithmentic, conversion and rounding operations may be performed.

IMSL CMATH
The C compatible mathematical library from International Mathematical and Statistical Library company.

IMSL CSTAT
The C compatible statistical library from International Mathematical and Statistical Library company.

InfoExplorer
IBM provided software that supports both an ascii and X-based facility for accessing and searching much of IBM's product documentation.

I/O (Input/Output)
The process of bringing data into memory from an external device or sending data out from memory to an external device.

IP (Internet Protocol)
A slower method of communication between SP2 nodes than User Space Protocol. Can be used with ethernet or the high performance switch. See US (user space protocol). and ethernet.

IRIS Explorer
An object oriented visual programming environment for application development. It provides modules which are self contained operations for data input. The software is supplied by Numerical Algorithms Group for the RS/6000 environment.

-J-

-K-

kapc
A source-to-source optimizing C preprocessor that discovers opportunities to optimize the code. From Kuck and Associates, Inc. for IBM C.

kapf
A Fortran source-to-source preprocessor which restructures Fortran code for improved scalar performance and better utilization of the memory hierarchy of IBM RS6000 RISC workstations. From Kuck and Associates, Inc. for IBM Fortran.

kernel
The core portion of the UNIX operating system which controls the resources of the CPU and allocates them to users. The kernel is memory-resident, is said to be in "kernel mode" and is protected from user tampering by the hardware.

KHOROS
KHORAL Research's integrated software development environment for information processing and visualization based on UNIX and the X Window System.

-L-

LAN (local area network)
A group of computers, terminals and shared resources connected in a geographically local, usually within a kilometer or so.

LAPACK
A public domain library of mathematical subroutines. It replaces both LINPACK and EISPACK.

latency
The amount of time spent in communications establishing a connection between processors before any data is actually sent.

LaTeX
A structured text formatting and typesetting macro package. The LaTeX macros encourage writers to think about the content of their documents, rather than the form. It contains all the capabilities of TeX.

Linda
Parallel programming language based on a Virtual Shared Memory Model. Combines the coordination language of Linda with the programming languages of C (C-Linda) and Fortran (F-Linda) to offer a parallel application development environment from Scientific Computing Associates, Inc.

load balancing
The distribution of tasks amongst multiple processors such that all processors finish their tasks at approximately the same time, thus reducing idle time in any of the processors.

load leveler
IBM's batch queueing system. Load Leveler allows for the building, submitting, and processing of batch jobs in a dynamic environment.

local host
The host on the network that the user is logged into. See remote host.

login nodes
Nodes where a user is place when logging into an SP2, identical to the interactive nodes.

loop unrolling
A software technique used to improve performance by removing small loops. The procedure duplicates the contents of the loop the number of times the loop would have executed to eliminate the often costly branch instruction at the end of the loop.

-M-

Mathematica
A symbolic algebra, plotting and graphics package from Wolfram Research.

Matlab
A linear algebra manipulator and viewer package.

master/worker
A programming model in which one processor, the master, in a group controls the tasks assigned to the other processors, the workers, in the group.

menu
A display of a list of available functions for selection by the user.

message passing
The method of communication among processor nodes operating in parallel with distributed memory.

MFLOPS (Mega FLOPS)
Millions of Floating Point Operations per Second, a metric for high peformance computers.

MIMD (Multiple Instruction - Multiple Data)
A parallel programming model in which a different processors execute either the same or different programs on different sets of data. See SIMD.

Mosaic
Internet "browser" for locating and viewing publicly available files, particularly the World Wide Web (WWW) information retrieval system. Mosaic was developed by the National Center for Supercomputing Applications (NCSA) at the University of Illinois.

Motif
Usually called OSF/Motif. The UNIX industry's standard user interface originally developed by the Open Software Foundation (OSF). Motif is based on the X-Window system and is a Presentation Manager look- alike. Motif is available for all IBM AIX workstations.

mpcc
A command that invokes the cc compiler for compilation and links in the Partition Manager initialization routines.

MPI (Message Passing Interface)
A standard portable message-passing library developed in 1993 by a group of parallel computer vendors, software writers, and application scientists. Available to both Fortran and C programs and available on a wide variety of parallel machines. Target platform is a distributed memory system such as the SP.

MPL (Message Passing Library)
Part of IBM's SP Parallel Operating Environment. Designed to provide a simple and efficient set of well understood operations for coordination and communication among processors in a parallel application. See Parallel Operating Environment.

MPMD (Multiple Program - Multiple Data)
A parallel programming model in which different, but related, programs are run on different sets of data. See SPMD.

mpxlc
IBM's parallel C compiler. Not actually a compiler, but a script which performs tasks necessary for the IBM parallel environment and then calls xlc.

mpxlf
IBM's parallel Fortran compiler. Not actually a compiler, but a script which performs tasks necessary for the IBM parallel environment and then calls xlf.

-N-

NAG F77 and C Libraries
FORTRAN 77 and C libraries of mathematical subroutines for scientific computing from Numerical Algorithms Group. The routines available in the C library are a subset of those available in the F77 library.

NAG FORTRAN 90 Library
A numerical procedure library for Fortran 90 language from Numerical Algorithms Group (NAG).

NAG Graphics Library
FORTRAN graphical subroutine library designed to complement the mathematical libraries from Numerical Algorithms Group. An easy-to-use display and plotting facilities with emphasis on the accuracy of representation are featured.

network
An interconddected group of nodes, lines, and terminals. A network provides the ability to transmit data to and receive data from other systems and users.

NFS (network file system)
A scheme in which files on one host in a network can be made available to other hosts on the network.

node
In a network, the point where one or more functional units interconnect transmission lines. A computer location defined in a network.

nodeid
The specific symbolic name assigned to a node during network definition.

-O-

OSL (Optimization Subroutine Library)
IBM's subroutine library and graphical user interface for solving problems in mathematical optimization.

-P-

packet switched network
Network message protocol in which the message packets are self-routing. Each message packet contains a header that incorporates the routing information

Partition
The group of processor nodes on which you run your program.

Partition Manager
The Partition Manager establishes and controls your partition. It consists of a set of subroutines that are linked into your program and an Internet daemon process called pmd.

pdbx
Command that invokes the debugger - the command-line interface of the POE debugging facility. This facility is based on the DBX debugger, but adds function specific to parallel programming. See dbx.

POE (IBM's Parallel Operating Environment)
Software environment for development and execution of parallel fortran, C and C++ programs. Consists of parallel message passing library (MPL), visualization tool (VT) and parallel debuggers and profilers. See MPL and VT.

pool
See processor pool

processor pool
The processor nodes are divided into disjoint pools by the systems administrator. You may request that your parallel tasks run on specific pools.

Program Marker Array
An X-Windows run-time analysis tool. The window consists of a number of small squares called lights that change color under program control

PVMe
An optimized version of PVM from IBM.

PVM
A public domain message passing library called Parallel Virtual Machine from Oak Ridge National Laboratory.

-Q-

quad-word
128-bit contiguous memory locations, contains 4 32-bit words or 2 64-bit double precision words.

-R-

remote host
Any host on the network other than the local host. Also called foreign host. See local host.

Resource Manager
The Resource Manager keeps track of the nodes that are currently processing a parallel task.

RISC
Reduced Instruction Set Computing (RISC), the technology for today's high performance personal computers and workstations, was invented in 1975.

rlogin
A command that logs into a specified remote host and connects your local terminal to the remote host.

RS-232
The serial cables used to connect computers and terminals to modems are commonly called RS-232 cables; technically, they confrom to the Electronics Industries Association (EIA) RS-232 standard.

-S-

ScaLapack
Beta test version of a public domain library of parallel mathematical subroutines.

SCSI (Small Computer Systems Interface)
SCSI, pronounced "scuzzy", is a standard interface to disk and tape controllers for small peripherals.

SCU (storage control unit)
The part of the processor that controls the main memory.

sequential programming
Traditional programming technique for serial, as opposed to parallel, computers.

server
(1) A function that provides services for users. A machine may run client and server processes at the same time. (2) A machine that provides resources to the network. It provides a network service, such as disk storage and file transfer, or a program that uses such a service. See client.

shared memory
Hardware architecture in which multiple processors operate independently but share the same memory resources. See distributed memory.

SIMD (Single Instruction - Multiple Data)
A parallel programming model in which a multiple processors execute exactly the same instructions at exactly the same time, however each processor operates on different sets of data. See MIMD.

SISD (Single Instruction - Single Data)
A sequential programming model in which a single processor executes a single program on a single data set. See SIMD.

SPMD (Single Program Multiple Data)
A parallel programming model in which different processors execute the same program on different sets of data. See MIMD.

stride
The number of data units, words for example, between successive accesses to an array of data.

superscalar
Hardware designs that makes possible the simultaneous processing of multiple instructions.

switch frame
An SP2 frame containing only switch elements and no compute nodes.

System Status Array
An X-Windows analysis tool that lets you quickly survey the utilization of processor nodes. Each node appears as a colored square, different colors representing high or low utilization.

System Support Program
SP2 System management and monitoring software for the system administrator.

-T-

T1
An internet link that transmits at 1.54 Mbps (million bits per second). At MHPCC the T1 link to Albuquerque serves as a backup to the T3 link.

T3
An internet link that transmits data at a rate of 45Mbps (million bits per second). At MHPCC the T3 link is the primary link to the mainland.

telnet
A command that connects the local host with a remote host.

TeX
TeX formats text and command files and outputs typesetter independent files. It is supported by several specific formatting systems including LaTeX.

thin node
An SP2 node configuration in which the 66 MHz version has 64 Kbytes data cache, maximum 512 Mbytes of memory and one 9 Gbyte disk. See wide node.

token ring
A 4 to 16 Mbps (million bits per second) network, developed by IBM, that uses a ring topology, where the nodes are attached in a closed loop, and a token-passing method which allows each node in turn time to transmit.

TROFF
Troff formats text files for printing on a phototypesetting or comparable device. The required postprocessing macro packages (man,me,mm,mptx,ms,mv) format the troff command output for the targeted device.

-U-

unit stride
Condition in which successive access to an array of data accesses every data element one after the other. See stride.

US (User Space Protocol)
A fast method of communication between SP2 nodes. Can be used only with the high performance switch. See IP (internet protocol).

-V-

VAST
Preprocessor for IBM's Fortran compiler.

VT

-W-

wide node
An SP2 node configuration that has 256 Kbytes data cache, maximum 2048 Mbytes of memory and one 18 Gbyte disk. See thin node.

wormhole routing
A network switching method in which the switch elements need not buffer an entire packet when that packet cannot proceed. Instead, buffering occurs on sub-packet basis and blocked packets may be stored across multiple switch elements.

WWW (World Wide Web)
A client/server distributed hypermedia information retreival system developed by CERN (the European Laboratory for Particle Physics). This system aims to give global access to a large universe of documents.

-X-

X
See X Window System.

xhpf
The subset HPF (High Performance Fortran) compiler created by Applied Parallel Research.

xlc
IBM's C compiler.

xlC
IBM's C++ product which includes C and C++ compilers, a browser, a HeapView debugger, a test coverage analyzer, and a set of C++ class libraries.

xlf
IBM's Fortran compiler which supports the full FORTRAN 90 instruction set.

xpdbx
This command invokes the xpdbx debugger - the X-Windows interface of the PE debugging facility. This facility is based on the DBX debugger, but adds function specific to parallel programming. See pdbx.

XPVM
A graphical console and monitor utility developed for PVM at Oak Ridge National Laboratory.

X-terminal
An interactive graphics terminal designed to support client applications of the X Window System. See X Window System.

xv
xv is the most common image viewer for the X Windows version of Mosaic.

X Window System
The UNIX industry's graphics windowing standard that provides simultaneous views of several executing programs or processes on high resolution graphics displays.

-Y-

-Z-

zero-cycle branch
A hardware optimization technique employed in the SP2 that reduces instruction execution time. The FXU (fixed point units) and FPU (floating point units) receive an uninterrupted supply of intructions from the ICU (instruction cache unit), in effect they do not see the branches. See FPU and FXU.


© Copyright 1995 Maui High Performance Computing Center.
Last Revised: 5/1/95 William Smith (williams@mhpcc.edu)