LAPACK: Footnotes LAPACK: LAPACK Users' Guide Release 2.0 LAPACK: Contents LAPACK: LAPACK Compared with LINPACK and EISPACK LAPACK: Design and Documentation of Argument Lists LAPACK: Structure of the Documentation LAPACK: Order of Arguments LAPACK: Argument Descriptions LAPACK: Option Arguments LAPACK: Problem Dimensions LAPACK: Array Arguments LAPACK: Work Arrays LAPACK: Error Handling and the Diagnostic Argument INFO LAPACK: Determining the Block Size for Block Algorithms LAPACK: LAPACK and the BLAS LAPACK: Matrix Storage Schemes LAPACK: Conventional Storage LAPACK: Packed Storage LAPACK: Band Storage LAPACK: Tridiagonal and Bidiagonal Matrices LAPACK: Unit Triangular Matrices LAPACK: Real Diagonal Elements of Complex Matrices LAPACK: Representation of Orthogonal or Unitary Matrices LAPACK: Installing LAPACK Routines LAPACK: Points to Note LAPACK: Documentation for LAPACK LAPACK: Installing ILAENV LAPACK: Troubleshooting LAPACK: Common Errors in Calling LAPACK Routines LAPACK: Failures Detected by LAPACK Routines LAPACK: Invalid Arguments and XERBLA LAPACK: Computational Failures and INFO > 0 LAPACK: Wrong Results LAPACK: Poor Performance LAPACK: Index of Driver and Computational Routines LAPACK: Notes LAPACK: Availability of LAPACK LAPACK: Index of Auxiliary Routines LAPACK: Notes LAPACK: Quick Reference   Guide to the BLAS LAPACK: Converting from LINPACK or EISPACK LAPACK: Notes LAPACK: LAPACK Working Notes LAPACK: Specifications of Routines LAPACK: Notes LAPACK: References LAPACK: Index LAPACK: Installation of LAPACK LAPACK: About this document ... LAPACK: Support for LAPACK LAPACK: Known Problems in LAPACK LAPACK: Other Related Software LAPACK: LAPACK++ LAPACK: CLAPACK LAPACK: List of Tables LAPACK: ScaLAPACK LAPACK: LAPACK routines exploiting IEEE arithmetic LAPACK: Contents of LAPACK LAPACK: Structure of LAPACK LAPACK: Levels of Routines LAPACK: Data Types and Precision LAPACK: Naming Scheme LAPACK: Driver Routines LAPACK: Linear Equations LAPACK: Linear Least Squares (LLS) Problems LAPACK: Preface to the Second Edition LAPACK: Generalized Linear Least Squares (LSE and GLM) Problems LAPACK: Standard Eigenvalue and Singular Value Problems LAPACK: Symmetric Eigenproblems (SEP) LAPACK: Nonsymmetric Eigenproblems (NEP) LAPACK: Singular Value Decomposition (SVD) LAPACK: Generalized Eigenvalue and Singular Value Problems LAPACK: Generalized Symmetric Definite Eigenproblems (GSEP) LAPACK: Generalized Nonsymmetric Eigenproblems (GNEP) LAPACK: Generalized Singular Value Decomposition (GSVD) LAPACK: Computational Routines LAPACK: Preface to the First Edition LAPACK: Linear Equations LAPACK: Orthogonal Factorizations and Linear Least Squares Problems LAPACK: QR Factorization LAPACK: LQ Factorization LAPACK: QR Factorization with Column Pivoting LAPACK: Complete Orthogonal Factorization LAPACK: Other Factorizations LAPACK: Generalized Orthogonal Factorizations and Linear Least Squares Problems LAPACK: Generalized QR Factorization LAPACK: Generalized RQ factorization LAPACK: Guide LAPACK: Symmetric Eigenproblems LAPACK: Nonsymmetric Eigenproblems LAPACK: Eigenvalues, Eigenvectors and Schur Factorization LAPACK: Balancing LAPACK: Invariant Subspaces and Condition Numbers LAPACK: Singular Value Decomposition LAPACK: Generalized Symmetric Definite Eigenproblems LAPACK: Generalized Nonsymmetric Eigenproblems LAPACK: Generalized (or Quotient) Singular Value Decomposition LAPACK: Performance of LAPACK LAPACK: Essentials LAPACK: Factors that Affect Performance LAPACK: Vectorization LAPACK: Data Movement LAPACK: Parallelism LAPACK: The BLAS as the Key to Portability LAPACK: Block Algorithms and their Derivation LAPACK: Examples of Block Algorithms in LAPACK LAPACK: Factorizations for Solving Linear Equations LAPACK: QR Factorization LAPACK: Eigenvalue Problems LAPACK: LAPACK LAPACK: LAPACK Benchmark LAPACK: Accuracy and Stability LAPACK: Sources of Error in Numerical Calculations LAPACK: Further Details: Floating point arithmetic LAPACK: How to Measure Errors LAPACK: Further Details: How to Measure Errors LAPACK: Further Details: How Error Bounds Are Derived LAPACK: Standard Error Analysis LAPACK: Improved Error Bounds LAPACK: Error Bounds for Linear Equation Solving LAPACK: Problems that LAPACK can Solve LAPACK: Further Details: Error Bounds for Linear Equation Solving LAPACK: Error Bounds for Linear Least Squares Problems LAPACK: Further Details: Error Bounds for Linear Least Squares Problems LAPACK: Error Bounds for Generalized Least Squares Problems LAPACK: Error Bounds for the Symmetric Eigenproblem LAPACK: Further Details: Error Bounds for the Symmetric Eigenproblem LAPACK: Error Bounds for the Nonsymmetric Eigenproblem LAPACK: Further Details: Error Bounds for the Nonsymmetric Eigenproblem LAPACK: Overview LAPACK: Balancing and Conditioning LAPACK: Computers for which LAPACK is Suitable LAPACK: Computing s and sep LAPACK: Error Bounds for the Singular Value Decomposition LAPACK: Further Details: Error Bounds for the Singular Value Decomposition LAPACK: Error Bounds for the Generalized Symmetric Definite Eigenproblem LAPACK: Further Details: Error Bounds for the Generalized Symmetric Definite Eigenproblem LAPACK: Error Bounds for the Generalized Nonsymmetric Eigenproblem LAPACK: Error Bounds for the Generalized Singular Value Decomposition LAPACK: Further Details: Error Bounds for the Generalized Singular Value Decomposition LAPACK: Error Bounds for Fast Level 3 BLAS LAPACK: Documentation and Software Conventions LAPACK: Contents LAPACK: Contents LAPACK: LAPACK Users' Guide Release 2.0 LAPACK: Band Storage LAPACK: Tridiagonal and Bidiagonal Matrices LAPACK: Generalized factorization MPI: Footnotes MPI: Contents MPI: Document Notation MPI: Gather, Vector Variant MPI: Examples Using MPI_GATHERV MPI: Scatter MPI: An Example Using MPI_SCATTER MPI: Scatter: Vector Variant MPI: Examples Using MPI_SCATTERV MPI: Gather to All MPI: An Example Using MPI_ALLGATHER MPI: Gather to All: Vector Variant MPI: All to All Scatter/Gather MPI: Procedure Specification MPI: All to All: Vector Variant MPI: Global Reduction Operations MPI: Reduce MPI: Predefined Reduce Operations MPI: MINLOC and MAXLOC MPI: All Reduce MPI: Reduce-Scatter MPI: Scan MPI: User-Defined Operations for Reduce and Scan MPI: The Semantics of Collective Communications MPI: Semantic Terms MPI: Communicators MPI: Introduction MPI: Division of Processes MPI: Avoiding Message Conflicts Between Modules MPI: Extensibility by Users MPI: Safety MPI: Overview MPI: Groups MPI: Communicator MPI: Communication Domains MPI: Processes MPI: Compatibility with Current Practice MPI: Group Management MPI: Group Accessors MPI: Group Constructors MPI: Group Destructors MPI: Communicator Management MPI: Communicator Accessors MPI: Communicator Constructors MPI: Communicator Destructor MPI: Safe Parallel Libraries MPI: Types of MPI Calls MPI: Caching MPI: Introduction MPI: Caching Functions MPI: Intercommunication MPI: Introduction MPI: Intercommunicator Accessors MPI: Intercommunicator Constructors MPI: Process Topologies MPI: Introduction MPI: Virtual Topologies MPI: Opaque Objects MPI: Overlapping Topologies MPI: Embedding in MPI MPI: Cartesian Topology Functions MPI: Cartesian Constructor Function MPI: Cartesian Convenience Function: MPI_DIMS_CREATE MPI: Cartesian Inquiry Functions MPI: Cartesian Translator Functions MPI: Cartesian Shift Function MPI: Cartesian Partition Function MPI: Cartesian Low-level Functions MPI: Named Constants MPI: Graph Topology Functions MPI: Graph Constructor Function MPI: Graph Inquiry Functions MPI: Graph Information Functions MPI: Low-level Graph Functions MPI: Topology Inquiry Functions MPI: An Application Example MPI: Environmental Management MPI: Implementation Information MPI: Environmental Inquiries MPI: Choice Arguments MPI: Tag Values MPI: Host Rank MPI: I/O Rank MPI: Clock Synchronization MPI: Timers and Synchronization MPI: Initialization and Exit MPI: Error Handling MPI: Error Handlers MPI: Error Codes MPI: Interaction with Executing Environment MPI: Language Binding MPI: Independence of Basic Runtime Routines MPI: Interaction with Signals in POSIX MPI: The MPI Profiling Interface MPI: Requirements MPI: Discussion MPI: Logic of the Design MPI: Miscellaneous Control of Profiling MPI: Examples MPI: Profiler Implementation MPI: MPI Library Implementation MPI: Fortran 77 Binding Issues MPI: Systems With Weak symbols MPI: Systems without Weak Symbols MPI: Complications MPI: Multiple Counting MPI: Linker Oddities MPI: Multiple Levels of Interception MPI: Conclusions MPI: Design Issues MPI: Why is MPI so big? MPI: Should we be concerned about the size of MPI? MPI: Introduction MPI: C Binding Issues MPI: Why does MPI not guarantee buffering? MPI: Portable Programming with MPI MPI: Dependency on Buffering MPI: Collective Communication and Synchronization MPI: Ambiguous Communications and Portability MPI: Heterogeneous Computing with MPI MPI: MPI Implementations MPI: Extensions to MPI MPI: References MPI: About this document ... MPI: Point-to-Point Communication MPI: Introduction and Overview MPI: Blocking Send and Receive Operations MPI: Blocking Send MPI: Send Buffer and Message Data MPI: Message Envelope MPI: Comments on Send MPI: Blocking Receive MPI: Receive Buffer MPI: The Goals of MPI MPI: Message Selection MPI: Return Status MPI: Comments on Receive MPI: Datatype Matching and Data Conversion MPI: Type Matching Rules MPI: Type MPI_CHARACTER MPI: Data Conversion MPI: Comments on Data Conversion MPI: Semantics of Blocking Point-to-point MPI: Buffering and Safety MPI: Who Should Use This Standard? MPI: Multithreading MPI: Order MPI: Progress MPI: Fairness MPI: Example - Jacobi iteration MPI: Send-Receive MPI: Null Processes MPI: Nonblocking Communication MPI: Request Objects MPI: Posting Operations MPI: What Platforms are Targets for Implementation? MPI: Completion Operations MPI: Examples MPI: Freeing Requests MPI: Semantics of Nonblocking Communications MPI: Order MPI: Progress MPI: Fairness MPI: Buffering and resource limitations MPI: Comments on Semantics of Nonblocking Communications MPI: Multiple Completions MPI: What is Included in MPI? MPI: Probe and Cancel MPI: Persistent Communication Requests MPI: Communication-Complete Calls with Null Request Handles MPI: Communication Modes MPI: Blocking Calls MPI: Nonblocking Calls MPI: Persistent Requests MPI: Buffer Allocation and Usage MPI: Model Implementation of Buffered Mode MPI: Comments on Communication Modes MPI: What is Not Included in MPI? MPI: User-Defined Datatypes and Packing MPI: Introduction MPI: Introduction to User-Defined Datatypes MPI: Datatype Constructors MPI: Contiguous MPI: Vector MPI: Hvector MPI: Indexed MPI: Hindexed MPI: Struct MPI: Version of MPI MPI: Use of Derived Datatypes MPI: Commit MPI: Deallocation MPI: Relation to count MPI: Type Matching MPI: Message Length MPI: Address Function MPI: Lower-bound and Upper-bound Markers MPI: Absolute Addresses MPI: Pack and Unpack M MPI: MPI Conventions and Design Choices MPI: Derived Datatypes vs Pack/Unpack MPI: Collective Communications MPI: Introduction and Overview MPI: Operational Details MPI: Communicator Argument MPI: Barrier Synchronization MPI: Broadcast MPI: Example Using MPI_BCAST MPI: Gather MPI: Examples Using MPI_GATHER MPI: The Complete Reference MPI: The Complete Reference PVM: Contents PVM: Footnotes PVM: Trends in Distributed Computing PVM: Libpvm   PVM: Direct Message Routing   PVM: Multicasting   PVM: Task Environment PVM: Environment Variables   PVM: Standard Input and Output   PVM: Tracing   PVM: Debugging   PVM: Console Program   PVM: Resource Limitations   PVM: PVM Overview PVM: In the PVM Daemon PVM: In the Task PVM: Multiprocessor Systems   PVM: Message-Passing Architectures PVM: Shared-Memory Architectures   PVM: Optimized Send and Receive on MPP PVM: Other Packages PVM: Advanced Topics PVM: XPVM   PVM: Network View   PVM: Space-Time View   PVM: Other Views PVM: Porting PVM to New Architectures   PVM: Unix Workstations   PVM: Multiprocessors   PVM: Troubleshooting PVM: Getting PVM Installed PVM: Set PVM_ROOT PVM: On-Line Manual Pages PVM: Building the Release PVM: Errors During Build PVM: The p4 System PVM: Compatible Versions PVM: Getting PVM Running PVM: Pvmd Log File PVM: Pvmd Socket Address File PVM: Starting PVM from the Console PVM: Starting the Pvmd by Hand PVM: Adding Hosts to the Virtual Machine PVM: PVM Host File PVM: Shutting Down PVM: Compiling Applications PVM: Express PVM: Header Files PVM: Linking PVM: Running Applications PVM: Spawn Can't Find Executables PVM: Group Functions PVM: Memory Use PVM: Input and Output PVM: Scheduling Priority PVM: Resource Limitations PVM: Debugging   and Tracing   PVM: MPI PVM: Debugging the System   PVM: Runtime Debug Masks   PVM: Tickle the Pvmd PVM: Starting Pvmd under a Debugger PVM: Sane Heap PVM: Statistics PVM: History of PVM Versions PVM: References PVM: Index PVM: About this document ... PVM: The Linda System PVM: The PVM System PVM: Using PVM PVM: How to Obtain the PVM Software PVM: A Bit of History PVM: Setup to Use PVM PVM: Setup Summary PVM: Starting PVM PVM: Common Startup Problems PVM: Running PVM Programs PVM: PVM Console Details PVM: Host File Options PVM: Basic Programming Techniques PVM: Common Parallel Programming Paradigms PVM: Crowd Computations PVM: Who Should Read This Book? PVM: Tree Computations PVM: Workload Allocation PVM: Data Decomposition   PVM: Function Decomposition   PVM: Porting Existing Applications to PVM   PVM: PVM User Interface PVM: Process Control   PVM: Information PVM: Dynamic Configuration   PVM: Signaling   PVM: Typographical Conventions PVM: Setting and Getting Options     PVM: Message Passing   PVM: Message Buffers   PVM: Packing Data   PVM: Sending and Receiving Data     PVM: Unpacking Data   PVM: Dynamic Process Groups   PVM: Program Examples PVM: Fork-Join   PVM: Fork Join Example PVM: The Map PVM: Dot Product   PVM: Example program: PSDOT.F PVM: Failure   PVM: Example program: failure.c PVM: pvm3/book PVM: Matrix Multiply   PVM: Example program: mmult.c PVM: One-Dimensional Heat Equation   PVM: Example program: heat.c PVM: Example program: heatslv.c PVM: Different Styles of Communication PVM: Comments and Questions PVM: How PVM Works PVM: Components PVM: Task Identifiers PVM: Architecture Classes PVM: Message Model PVM: Asynchronous Notification PVM: PVM Daemon and Programming Library PVM: PVM Daemon PVM: Programming Library PVM: Messages PVM: Acknowledgments PVM: Fragments and Databufs PVM: Messages in Libpvm PVM: Messages in the Pvmd   PVM: Pvmd Entry Points PVM: Control Messages   PVM: PVM Daemon   PVM: Startup   PVM: Shutdown   PVM: Host Table   and Machine Configuration   PVM: Host File PVM: Introduction PVM: Tasks PVM: Wait Contexts   PVM: Fault Detection and Recovery PVM: Pvmd' PVM: Starting Slave Pvmds PVM: Resource Manager   PVM: Libpvm Library PVM: Language Support PVM: Connecting to the Pvmd   PVM: Protocols   PVM: Heterogeneous Network Computing PVM: Messages PVM: Pvmd-Pvmd   PVM: Pvmd-Task   and Task-Task   PVM: Message Routing   PVM: Pvmd PVM: Packet Buffers   PVM: Message Routing   PVM: Packet Routing   PVM: Refragmentation   PVM: Parallel Virtual Machine: A Users' Guide and Tutorial for Networked Parallel Computing PVM: Parallel Virtual Machine: A Users' Guide and Tutorial for Networked Parallel Computing PVM: Matrix Multiply   PVM: Pvmd and Foreign Tasks   PVM: Control Messages   PVM: Pvmd Entry Points PVM: Resource Manager   PVM: Environment Variables   PVM: Environment Variables   PVM: Standard Input and Output   TEMPLATES: Footnotes TEMPLATES: How to Use This Book TEMPLATES: Overview of the Methods TEMPLATES: Sparse Incomplete Factorizations TEMPLATES: Generating a CRS-based - Incomplete Factorization TEMPLATES: CRS-based Factorization Solve TEMPLATES: CRS-based Factorization Transpose Solve TEMPLATES: Generating a CRS-based Incomplete Factorization TEMPLATES: Parallelism TEMPLATES: Inner products TEMPLATES: Overlapping communication and computation TEMPLATES: Fewer synchronization points TEMPLATES: Vector updates TEMPLATES: Stationary Iterative Methods TEMPLATES: Matrix-vector products TEMPLATES: Preconditioning TEMPLATES: Discovering parallelism in sequential preconditioners. TEMPLATES: More parallel variants of sequential preconditioners. TEMPLATES: Fully decoupled preconditioners. TEMPLATES: Wavefronts in the Gauss-Seidel and Conjugate Gradient methods TEMPLATES: Blocked operations in the GMRES method TEMPLATES: Remaining topics TEMPLATES: The Lanczos Connection TEMPLATES: Block and -step Iterative Methods TEMPLATES: The Jacobi Method TEMPLATES: Reduced System Preconditioning TEMPLATES: Domain Decomposition Methods TEMPLATES: Overlapping Subdomain Methods TEMPLATES: Non-overlapping Subdomain Methods TEMPLATES: Further Remarks TEMPLATES: Multiplicative Schwarz Methods TEMPLATES: Inexact Solves TEMPLATES: Nonsymmetric Problems TEMPLATES: Choice of Coarse Grid Size TEMPLATES: Multigrid Methods TEMPLATES: Convergence of the Jacobi method TEMPLATES: Row Projection Methods TEMPLATES: Obtaining the Software TEMPLATES: Overview of the BLAS TEMPLATES: Glossary TEMPLATES: Notation TEMPLATES: References TEMPLATES: Index TEMPLATES: About this document ... TEMPLATES: The Gauss-Seidel Method TEMPLATES: The Successive Overrelaxation Method TEMPLATES: Choosing the Value of TEMPLATES: The Symmetric Successive Overrelaxation Method TEMPLATES: Notes and References TEMPLATES: Nonstationary Iterative Methods TEMPLATES: Author's Affiliations TEMPLATES: Conjugate Gradient Method (CG) TEMPLATES: Theory TEMPLATES: Convergence TEMPLATES: Implementation TEMPLATES: Further references TEMPLATES: MINRES and SYMMLQ TEMPLATES: Theory TEMPLATES: CG on the Normal Equations, CGNE and CGNR TEMPLATES: Theory TEMPLATES: Generalized Minimal Residual (GMRES) TEMPLATES: Acknowledgments TEMPLATES: Theory TEMPLATES: Implementation TEMPLATES: BiConjugate Gradient (BiCG) TEMPLATES: Convergence TEMPLATES: Implementation TEMPLATES: Quasi-Minimal Residual (QMR) TEMPLATES: Convergence TEMPLATES: Implementation TEMPLATES: Conjugate Gradient Squared Method (CGS) TEMPLATES: Convergence TEMPLATES: Contents TEMPLATES: Implementation TEMPLATES: BiConjugate Gradient Stabilized (Bi-CGSTAB) TEMPLATES: Convergence TEMPLATES: Implementation TEMPLATES: Chebyshev Iteration TEMPLATES: Comparison with other methods TEMPLATES: Convergence TEMPLATES: Implementation TEMPLATES: Computational Aspects of the Methods TEMPLATES: A short history of Krylov methods TEMPLATES: List of Figures TEMPLATES: Survey of recent Krylov methods TEMPLATES: Preconditioners TEMPLATES: The why and how TEMPLATES: Cost trade-off TEMPLATES: Left and right preconditioning TEMPLATES: Jacobi Preconditioning TEMPLATES: Block Jacobi Methods TEMPLATES: Discussion TEMPLATES: SSOR preconditioning TEMPLATES: Incomplete Factorization Preconditioners TEMPLATES: Introduction TEMPLATES: Creating an incomplete factorization TEMPLATES: Solving a system with an incomplete factorization preconditioner TEMPLATES: Point incomplete factorizations TEMPLATES: Fill-in strategies TEMPLATES: Simple cases: and - TEMPLATES: Special cases: central differences TEMPLATES: Modified incomplete factorizations TEMPLATES: Vectorization of the preconditioner solve TEMPLATES: Parallelizing the preconditioner solve TEMPLATES: Block factorization methods TEMPLATES: Why Use Templates? TEMPLATES: The idea behind block factorizations TEMPLATES: Approximate inverses TEMPLATES: The special case of block tridiagonality TEMPLATES: Two types of incomplete block factorizations TEMPLATES: Blocking over systems of partial differential equations TEMPLATES: Incomplete LQ factorizations TEMPLATES: Polynomial preconditioners TEMPLATES: Preconditioners from properties of the differential equation TEMPLATES: Preconditioning by the symmetric part TEMPLATES: The use of fast solvers TEMPLATES: What Methods Are Covered? TEMPLATES: Alternating Direction Implicit methods TEMPLATES: Related Issues TEMPLATES: Complex Systems TEMPLATES: Stopping Criteria TEMPLATES: More Details about Stopping Criteria TEMPLATES: When or is not readily available TEMPLATES: Estimating TEMPLATES: Stopping when progress is no longer being made TEMPLATES: Accounting for floating point errors TEMPLATES: Data Structures TEMPLATES: Iterative Methods TEMPLATES: Survey of Sparse Matrix Storage Formats TEMPLATES: Compressed Row Storage (CRS) TEMPLATES: Compressed Column Storage (CCS) TEMPLATES: Block Compressed Row Storage (BCRS) TEMPLATES: Compressed Diagonal Storage (CDS) TEMPLATES: Jagged Diagonal Storage (JDS) TEMPLATES: Skyline Storage (SKS) TEMPLATES: Matrix vector products TEMPLATES: CRS Matrix-Vector Product TEMPLATES: CDS Matrix-Vector Product TEMPLATES:Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods PCW: Contents PCW: Foreword PCW: 1 Introduction PCW: 1.1 Introduction PCW: 1.2 The National Vision for ParallelComputation PCW: 1.3 Caltech Concurrent Computation Program PCW: 1.4 How Parallel Computing Works PCW: 2 Technical Backdrop PCW: 2.1 Introduction PCW: 2.2 Hardware Trends PCW: 2.2.1 Parallel Scientific Computers Before 1980 PCW: 2.2.2 Early 1980s PCW: 2.2.3 Birth of the Hypercube PCW: 2.2.4 Mid-1980s PCW: 2.2.5 Late 1980s PCW: 2.2.6 Parallel Systems-1992 PCW: 2.3 Software PCW: 2.3.1 Languages and Compilers PCW: 2.3.2 Tools PCW: 2.4 Summary PCW: 3 A Methodology for Computation PCW: 3.1 Introduction PCW: The Process of Computation and ComplexSystems PCW: Examples of Complex Systems and TheirSpace-Time Structure PCW: 3.4 The Temporal Properties of ComplexSystems PCW: 3.5 Spatial Properties of Complex Systems PCW: 3.6 Compound Complex Systems PCW: 3.7 Mapping Complex Systems PCW: 3.8 Parallel Computing Works? PCW: 4 Synchronous Applications I PCW: 4.1 QCD and the Beginning of CP PCW: 4.2 Synchronous Applications PCW: 4.3 Quantum Chromodynamics PCW: 4.3.1 Introduction PCW: 4.3.2 Monte Carlo PCW: 4.3.3 QCD PCW: 4.3.4 Lattice QCD PCW: 4.3.5 Concurrent QCD Machines PCW: 4.3.6 QCD on the Caltech Hypercubes PCW: 4.3.7 QCD on the Connection Machine PCW: 4.3.8 Status and Prospects PCW: 4.4 Spin Models PCW: 4.4.1 Introduction PCW: 4.4.2 Ising Model PCW: 4.4.3 Potts Model PCW: 4.4.4 XY Model PCW: 4.4.5 O(3) Model PCW: 4.5 An Automata Model of Granular Materials PCW: 4.5.1 Introduction PCW: 4.5.2 Comparison to Particle Dynamics Models PCW: 4.5.3 Comparison to Lattice Gas Models PCW: 4.5.4 The Rules for the Lattice Grain Model PCW: 4.5.5 Implementation on a Parallel Computer PCW: 4.5.6 Simulations PCW: 4.5.7 Conclusion PCW: Express and CrOS - Loosely Synchronous Message Passing PCW: 5.1 Multicomputer Operating Systems PCW: 5.2 A ``Packet'' History of Message-passingSystems PCW: 5.2.1 Prehistory PCW: 5.2.2 Application-driven Development PCW: 5.2.3 Collective Communication PCW: 5.2.4 Automated Decomposition-whoami PCW: 5.2.5 ``Melting''-a Non-crystalline Problem PCW: 5.2.6 The Mark III PCW: 5.2.7 Host Programs PCW: 5.2.8 A Ray Tracer-and an ``Operating System'' PCW: 5.2.9 The Crystal Router PCW: 5.2.10 Portability PCW: 5.2.11 Express PCW: 5.2.12 Other Message-passing Systems PCW: 5.2.13 What Did We Learn? PCW: 5.2.14 Conclusions PCW: 5.3 Parallel Debugging PCW: 5.3.1 Introduction and History PCW: 5.3.2 Designing a Parallel Debugger PCW: 5.3.3 Conclusions PCW: 5.4 Parallel Profiling PCW: 5.4.1 Missing a Point PCW: 5.4.2 Visualization PCW: 5.4.3 Goals in Performance Analysis PCW: 5.4.4 Overhead Analysis PCW: 5.4.5 Event Tracing PCW: 5.4.6 Data Distribution Analysis PCW: 5.4.7 CPU Usage Analysis PCW: 5.4.8 Why So Many Separate Tools? PCW: 5.4.9 Conclusions PCW: 6 Synchronous Applications II PCW: 6.1 Computational Issues in SynchronousProblems PCW: Convectively-Dominated Flows and theFlux-Corrected Transport Technique PCW: 6.2.1 An Overview of the FCT Technique PCW: 6.2.2 Mathematics and the FCT Algorithm PCW: 6.2.3 Parallel Issues PCW: 6.2.4 Example Problem PCW: 6.2.5 Performance and Results PCW: 6.2.6 Summary PCW: Magnetism in the High-TemperatureSuperconductor Materials PCW: 6.3.1 Introduction PCW: 6.3.2 The Computational Algorithm PCW: 6.3.3 Parallel Implementation and Performance PCW: 6.3.4 Physics Results PCW: 6.3.5 Conclusions PCW: Phase Transitions in Two-dimensionalQuantum Spin Systems PCW: 6.4.1 The case of : Antiferromagnetic Transitions PCW: Origin of the Interaction PCW: Simulation Results PCW: Theoretical Interpretation PCW: Comparison with Experiments PCW: The Case of : Quantum XY Model and theTopological Transition PCW: A Brief History PCW: Evidence for the Transition PCW: Implications PCW: A Hierarchical Scheme for SurfaceReconstruction and Discontinuity Detection PCW: 6.5.1 Multigrid Method with Discontinuities PCW: 6.5.2 Interacting Line Processes PCW: Generic Look-up Table and Specific Parametrization PCW: Pyramid on a Two-Dimensional Mesh of Processors PCW: 6.5.5 Results for Orientation Constraints PCW: 6.5.6 Results for Depth Constraints PCW: 6.5.7 Conclusions PCW: 6.6 Character Recognition by Neural Nets PCW: 6.6.1 MLP in General PCW: 6.6.2 Character Recognition using MLP PCW: 6.6.3 The Multiscale Technique PCW: 6.6.4 Results PCW: 6.6.5 Comments and Variants on the Method PCW: An Adaptive Multiscale Scheme for Real-Time Motion Field Estimation PCW: 6.7.1 Errors in Computing the Motion Field PCW: 6.7.2 Adaptive Multiscale Scheme on a Multicomputer PCW: 6.7.3 Conclusions PCW: 6.8 Collective Stereopsis PCW: 7 Independent Parallelism PCW: 7.1 Embarrassingly Parallel Problem Structure PCW: 7.2 Dynamically Triangulated Random Surfaces PCW: 7.2.1 Introduction PCW: 7.2.2 Discretized Strings PCW: 7.2.3 Computational Aspects PCW: 7.2.4 Performance of String Program PCW: 7.2.5 Conclusion PCW: 7.3 Numerical Study of High-T Spin Systems PCW: 7.4 Statistical Gravitational Lensing PCW: 7.5 Parallel Random Number Generators PCW: Parallel Computing in Neurobiology: The GENESIS Project PCW: 7.6.1 What Is Computational Neurobiology? PCW: 7.6.2 Parallel Computers? PCW: Problems with Most Present Day Parallel Computers PCW: 7.6.4 What is GENESIS? PCW: 7.6.5 Task Farming PCW: 7.6.6 Distributed Modelling via the Postmaster Element PCW: Full Matrix Algorithms and Their Applications PCW: 8.1 Full and Banded Matrix Algorithms PCW: 8.1.1 Matrix Decomposition PCW: 8.1.2 Basic Matrix Arithmetic PCW: 8.1.3 Matrix Multiplication for Banded Matrices PCW: 8.1.4 Systems of Linear Equations PCW: 8.1.5 The Gauss-Jordan Method PCW: 8.1.6 Other Matrix Algorithms PCW: 8.1.7 Concurrent Linear Algebra Libraries PCW: 8.1.8 Problem Structure PCW: 8.1.9 Conclusions PCW: Quantum Mechanical Reactive ScatteringUsing a High-Performance ParallelComputer PCW: 8.2.1 Introduction PCW: 8.2.2 Methodology PCW: 8.2.3 Parallel Algorithm PCW: 8.2.4 Results and Discussion PCW: Studies of Electron-Molecule Collisions onDistributed-Memory Parallel Computers PCW: 8.3.1 Introduction PCW: 8.3.2 The SMC Method and Its Implementation PCW: 8.3.3 Parallel Implementation PCW: 8.3.4 Performance PCW: Mark IIIfp PCW: Intel Machines PCW: 8.3.5 Selected Results PCW: 8.3.6 Conclusion PCW: 9 Loosely Synchronous Problems PCW: 9.1 Problem Structure PCW: Geomorphology by Micromechanical Simulations PCW: Plasma Particle-in-Cell Simulation of anElectron Beam Plasma Instability PCW: 9.3.1 Introduction PCW: 9.3.2 GCPIC Algorithm PCW: 9.3.3 Electron Beam Plasma Instability PCW: Performance Results for One-DimensionalElectrostatic Code PCW: 9.3.5 One-Dimensional Electromagnetic Code PCW: 9.3.6 Dynamic Load Balancing PCW: 9.3.7 Summary PCW: 9.4 Computational Electromagnetics PCW: LU Factorization of Sparse, Unsymmetric Jacobian Matrices PCW: 9.5.1 Introduction PCW: 9.5.2 Design Overview PCW: 9.5.3 Reduced-Communication Pivoting PCW: 9.5.4 New Data Distributions PCW: 9.5.5 Performance Versus Scattering PCW: 9.5.6 Performance PCW: Order 13040 Example PCW: Order 2500 Example PCW: 9.5.7 Conclusions PCW: Concurrent DASSL Applied to Dynamic Distillation Column Simulation PCW: 9.6.1 Introduction PCW: 9.6.2 Mathematical Formulation PCW: 9.6.3 proto-Cdyn - Simulation Layer PCW: Template Structure PCW: Problem Preformulation PCW: 9.6.4 Concurrent Formulation PCW: Overview PCW: Single Integration Step PCW: The Integration Computations PCW: Single Residuals PCW: Jacobian Computation PCW: Exploitation of Latency PCW: The LU Factorization PCW: Forward- and Back-solving Steps PCW: Residual Communication PCW: 9.6.5 Chemical Engineering Example PCW: 9.6.6 Conclusions PCW: 9.7 Adaptive Multigrid PCW: 9.7.1 Introduction PCW: 9.7.2 The Basic Algorithm PCW: 9.7.3 The Adaptive Algorithm PCW: 9.7.4 The Concurrent Algorithm PCW: 9.7.5 Summary PCW: 9.8 Munkres Algorithm for Assignment PCW: 9.8.1 Introduction PCW: 9.8.2 The Sequential Algorithm PCW: 9.8.3 The Concurrent Algorithm PCW: Optimization Methods for Neural Nets:Automatic Parameter Tuning and FasterConvergence PCW: 9.9.1 Deficiencies of Steepest Descent PCW: 9.9.2 The ``Bold Driver'' Network PCW: The Broyden-Fletcher-Goldfarb-Shanno One-StepMemoryless Quasi-Newton Method PCW: 9.9.4 Parallel Optimization PCW: 9.9.5 Experiment: the Dichotomy Problem PCW: 9.9.6 Experiment: Time Series Prediction PCW: 9.9.7 Summary PCW: 10 DIME Programming Environment PCW: DIME: Portable Software for Irregular Meshes for Parallel or SequentialComputers PCW: 10.1.1 Applications and Extensions PCW: 10.1.2 The Components of DIME PCW: 10.1.3 Domain Definition PCW: 10.1.4 Mesh Structure PCW: 10.1.5 Refinement PCW: 10.1.6 Load Balancing PCW: 10.1.7 Summary PCW: DIMEFEM: High-level Portable Irregular-Mesh Finite-Element Solver PCW: 10.2.1 Memory Allocation PCW: 10.2.2 Operations and Elements PCW: 10.2.3 Navier-Stokes Solver PCW: 10.2.4 Results PCW: 10.2.5 Summary PCW: 11 Load Balancing and Optimization PCW: 11.1 Load Balancing as an Optimization Problem PCW: 11.1.1 Load Balancing a Finite-Element Mesh PCW: 11.1.2 The Optimization Problem and Physical Analogy PCW: 11.1.3 Algorithms for Load Balancing PCW: 11.1.4 Simulated Annealing PCW: 11.1.5 Recursive Bisection PCW: 11.1.6 Eigenvalue Recursive Bisection PCW: 11.1.7 Testing Procedure PCW: 11.1.8 Test Results PCW: 11.1.9 Conclusions PCW: Applications and Extensions of the Physical Analogy PCW: 11.3 Physical Optimization PCW: An Improved Method for the Travelling Salesman Problem PCW: 11.4.1 Background on Local Search Heuristics PCW: Background on Markov Chains and SimulatedAnnealing PCW: 11.4.3 The New Algorithm-Large-Step Markov Chains PCW: 11.4.4 Results PCW: Irregular Loosely Synchronous Problems PCW: 12.1 Irregular Loosely Synchronous Problems Are Hard PCW: Simulation of the Electrosensory System of the Fish Gnathonemus petersii PCW: 12.2.1 Physical Model PCW: 12.2.2 Mathematical Theory PCW: 12.2.3 Results PCW: 12.2.4 Summary PCW: 12.3 Transonic Flow PCW: 12.3.1 Compressible Flow Algorithm PCW: 12.3.2 Adaptive Refinement PCW: 12.3.3 Examples PCW: 12.3.4 Performance PCW: 12.3.5 Summary PCW: 12.4 Tree Codes for N-body Simulations PCW: 12.4.1 Oct-Trees PCW: 12.4.2 Computing Forces PCW: 12.4.3 Parallelism in Tree Codes PCW: 12.4.4 Acquiring Locally Essential Data PCW: 12.4.5 Comments on Performance PCW: Fast Vortex Algorithm and ParallelComputing PCW: 12.5.1 Vortex Methods PCW: 12.5.2 Fast Algorithms PCW: 12.5.3 Hypercube Implementation PCW: 12.5.4 Efficiency of Parallel Implementation PCW: 12.5.5 Results PCW: 12.6 Cluster Algorithms for Spin Models PCW: 12.6.1 Monte Carlo Calculations of Spin Models PCW: 12.6.2 Cluster Algorithms PCW: 12.6.3 Parallel Cluster Algorithms PCW: 12.6.4 Self-labelling PCW: 12.6.5 Global Equivalencing PCW: 12.6.6 Other Algorithms PCW: 12.6.7 Summary PCW: 12.7 Sorting PCW: 12.7.1 The Merge Strategy PCW: 12.7.2 The Bitonic Algorithm PCW: 12.7.3 Shellsort or Diminishing Increment Algorithm PCW: 12.7.4 Quicksort or Samplesort Algorithm PCW: Hierarchical Tree-Structures as Adaptive Meshes PCW: 12.8.1 Introduction PCW: 12.8.2 Adaptive Structures PCW: 12.8.3 Tree as Grid PCW: 12.8.4 Conclusion PCW: 13 Data Parallel C and Fortran PCW: 13.1 High-Level Languages PCW: 13.1.1 High Performance Fortran Perspective PCW: Problem Architecture and Message-Passing Fortran PCW: 13.1.3 Problem Architecture and Fortran 77 PCW: A Software Tool for Data Partitioning and Distribution PCW: 13.2.1 Is Any Assistance Really Needed? PCW: 13.2.2 Overview of the Tool PCW: 13.2.3 Dependence-based Data Partitioning PCW: 13.2.4 Mapping Data to Processors PCW: Communication Analysis and Performance Improvement Transformations PCW: 13.2.6 Communication Analysis Algorithm PCW: 13.2.7 Static Performance Estimator PCW: 13.2.8 Conclusion PCW: 13.3 Fortran 90 Experiments PCW: 13.4 Optimizing Compilers by Neural Networks PCW: 13.5 ASPAR PCW: 13.5.1 Degrees of Difficulty PCW: 13.5.2 Various Parallelizing Technologies PCW: 13.5.3 The Local View PCW: 13.5.4 The ``Global'' View PCW: 13.5.5 Global Strategies PCW: 13.5.6 Dynamic Data Distribution PCW: 13.5.7 Conclusions PCW: 13.6 Coherent Parallel C PCW: 13.7 Hierarchical Memory PCW: 14 Asynchronous Applications PCW: Asynchronous Problems and a Summary of Basic Problem Classes PCW: 14.2 Melting in Two Dimensions PCW: 14.2.1 Problem Description PCW: 14.2.2 Solution Method PCW: 14.2.3 Concurrent Update Procedure PCW: 14.2.4 Performance Analysis PCW: 14.3 Computer Chess PCW: 14.3.1 Sequential Computer Chess PCW: The Evaluation Function PCW: Quiescence Searching PCW: Iterative Deepening PCW: The Hash Table PCW: The Opening PCW: The Endgame PCW: 14.3.2 Parallel Computer Chess: The Hardware PCW: 14.3.3 Parallel Alpha-Beta Pruning PCW: Analysis of Alpha-Beta Pruning PCW: Global Hash Table PCW: 14.3.4 Load Balancing PCW: 14.3.5 Speedup Measurements PCW: 14.3.6 Real-time Graphical Performance Monitoring PCW: 14.3.7 Speculation PCW: 14.3.8 Summary PCW: High-Level Asynchronous Software Systems PCW: 15.1 Asynchronous Software Paradigms PCW: MOOS II: An Operating System forDynamic Load Balancing on the iPSC/1 PCW: 15.2.1 Design of MOOSE PCW: 15.2.2 Dynamic Load-Balancing Support PCW: 15.2.3 What We Learned PCW: 15.3 Time Warp PCW: 16 The Zipcode Message-Passing System PCW: 16.1 Overview of Zipcode PCW: 16.2 Low-Level Primitives PCW: 16.2.1 CE/RK Overview PCW: 16.2.2 Interface with the CE/RK system PCW: 16.2.3 CE Functions PCW: CE Programs PCW: 16.2.4 RK Calls PCW: 16.2.5 Zipcode Calls PCW: Zipcode Class-Independent Calls PCW: Mailer Creation PCW: Predefined Mailer Classes PCW: Y-Class PCW: Z-Class PCW: L-Class PCW: G1-Class PCW: G2-Class PCW: Letter-Generating Primitives PCW: Letter-Consuming Primitives PCW: G3-Class PCW: 16.3 High-Level Primitives PCW: 16.3.1 Invoices PCW: 16.3.2 Packing and Unpacking PCW: 16.3.3 The Packed-Message Functions PCW: 16.3.4 Fortran Interface PCW: 16.4 Details of Execution PCW: 16.4.1 Initialization/Termination PCW: 16.4.2 Process Creation/Destruction PCW: 16.5 Conclusions PCW: MOVIE - Multitasking Object-oriented Visual Interactive Environment PCW: 17.1 Introduction PCW: 17.1.1 The Beginning PCW: 17.1.2 Towards the MOVIE System PCW: 17.1.3 Current Status and Outlook PCW: 17.2 System Overview PCW: 17.2.1 The MOVIE System in a Nutshell PCW: 17.2.2 MovieScript as Virtual Machine Language PCW: 17.2.3 Data-Parallel Computing PCW: 17.2.4 Model for MIMD-parallelism PCW: 17.2.5 Distributed Computing PCW: 17.2.6 Object Orientation PCW: 17.2.7 Integrated Visualization Model PCW: DPS/NeWS PCW: X/Motif/OpenLook PCW: AVS/Explorer PCW: 3D MOVIE PCW: Integration PCW: 17.2.8 ``In Large'' Extensibility Model PCW: 17.2.9 CASE Tools PCW: MetaDictionary PCW: C Language Naming Conventions PCW: MetaIndex PCW: Makefile Model PCW: Documentation Model PCW: 17.2.10 Planned MOVIE Applications PCW: Machine Vision PCW: Neural Networks PCW: Databases PCW: Global Change PCW: High Energy Physics Data Analysis PCW: Expert Systems PCW: Command and Control PCW: Virtual Reality PCW: 17.3 Map Separates PCW: 17.3.1 Problem Specification PCW: 17.3.2 Test Case PCW: 17.3.3 Segmentation via RGB Clustering PCW: 17.3.4 Comparison with JPL Neural Net Results PCW: 17.3.5 Edge Detection via Zero Crossing PCW: 17.3.6 Towards the Map Expert System PCW: 17.3.7 Summary PCW: The Ultimate User Interface: VirtualReality PCW: 17.4.1 Overall Assessment PCW: 17.4.2 Markets and Application Areas PCW: 17.4.3 VR at Syracuse University PCW: 17.4.4 MOVIE as VR Operating Shell PCW: Complex System Simulation and Analysis PCW: 18.1 MetaProblems and MetaSoftware PCW: 18.1.1 Applications PCW: 18.1.2 Asynchronous versus Loosely Synchronous? PCW: 18.1.3 Software for Compound Problems PCW: ISIS: An Interactive Seismic ImagingSystem PCW: 18.2.1 Introduction PCW: 18.2.2 Concepts of Interactive Imaging PCW: 18.2.3 Geologist-As-Analyst PCW: 18.2.4 Why Interactive Imaging? PCW: 18.2.5 System Design PCW: 18.2.6 Performance Considerations PCW: 18.2.7 Trace Manager PCW: 18.2.8 Display Manager PCW: 18.2.9 User Interface PCW: 18.2.10 Computation PCW: 18.2.11 Prototype System PCW: 18.2.12 Conclusions PCW: 18.3 Parallel Simulations that Emulate Function PCW: 18.3.1 The Basic Simulation Structure PCW: 18.3.2 The Run-Time Environment-the Centaur Operating System PCW: 18.3.3 SDI Simulation Evolution PCW: Simulation Framework and Synchronization Control PCW: 18.4 Multitarget Tracking PCW: 18.4.1 Nature of the Problem PCW: 18.4.2 Tracking Techniques PCW: Single-Target Tracking PCW: Multitarget Tracking PCW: 18.4.3 Algorithm Overview PCW: 18.4.4 Two-dimensional Mono Tracking PCW: Two-dimensional Track Extensions PCW: Two-dimensional Report Formation PCW: Track Initialization PCW: 18.4.5 Three-dimensional Tracking PCW: Track Extension Associations PCW: 19 Parallel Computing in Industry PCW: 19.1 Motivation PCW: 19.2 Examples of Industrial Applications PCW: 20 Computational Science PCW: 20.1 Lessons PCW: 20.2 Computational Science PCW: Selected Biographic Information PCW: References PCW: Index PCW: About this document ...