Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “matrix multiplication”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 73 records · Page 4

NAS Experiences of Porting CM Fortran Codes to HPF on IBM SP2 and SGI Power Challenge

Current Connection Machine (CM) Fortran codes developed for the CM-2 and the CM-5 represent an important class of parallel applications. Several users have employed CM Fortran codes in production mode on the CM-2 and the CM-5 for the last five to six years, constituting a heavy investment in terms of cost and time. With Thinking Machines Corporation's decision to withdraw from the hardware business and with the decommissioning of many CM-2 and CM-5 machines, the best way to protect the substantial investment in CM Fortran codes is to port the codes to High Performance Fortran (HPF) on highly parallel systems. HPF is very similar to CM Fortran and thus represents a natural transition. Conversion issues involved in porting CM Fortran codes on the CM-5 to HPF are presented. In particular, the differences between data distribution directives and the CM Fortran Utility Routines Library, as well as the equivalent functionality in the HPF Library are discussed. Several CM Fortran codes (Cannon algorithm for matrix-matrix multiplication, Linear solver Ax=b, 1-D convolution for 2-D datasets, Laplace's Equation solver, and Direct Simulation Monte Carlo (DSMC) codes have been ported to Subset HPF on the IBM SP2 and the SGI Power Challenge. Speedup ratios versus number of processors for the Linear solver and DSMC code are presented.

Saini, Subhash↗

Performance of BLAS 3, FFTs and NAS Parallel Benchmarks on Cray T3D

Recently, a Cray T3D Emulator has been made available on the Cray Y-MP and C90 computers. The Pittsburgh Supercomputer Center has acquired a CRAY T3D system and many other centers like Jet Propulsion Laboratory (JPL) will have it by the end of 1994. The Cray T3D system is the firstphase system in Cray Research, Inc.'s (CRI) three-phase massively parallel processing (MPP) program. This system features a heterogeneous architecture that closely couples DEC's ALPHA microprocessors and CRI's parallel-vector technology, i.e. the Cray Y-MP and Cray C90. The Cray T3D Emulator will give prospective users a valuable experience in developing high performance applications on the MPP system. This emulator runs programs written in CRI's MPP Fortran programming model (data sharing and work sharing) or Parallel Virtual Machine (PVM) programming model. It will help the users to study data layout, data locality, and data reference patterns thereby providing feedback which will enable one to write more efficient parallel codes. An overview of the Cray T3D hardware, software, and three of its available programming models is presented.The Cray Fortran Programming Model comprising (a) Data Sharing, (b) Worksharing and (c) Message Passing, will be discussed with examples. We have also implemented distributed BLAS 3 (matrix-matrix multiplication) in data parallel model (using only CSHIFT); worksharing model using block distribution and collapsed distribution; and message passing model using PVM. We have also implemented 2D and 3D FFTs for radix-2 using PVM. The performance of NAS Parallel 'Benchmarks (NPB) on CRAY T3D will be compared with other highly parallel systems such as CM-5, Paragon, C90 etc.

Saini, Subhash↗

Floating-Point Modules Targeted for Use with RC Compilation Tools

Reconfigurable Computing (RC) has emerged as a viable computing solution for computationally intensive applications. Several applications have been mapped to RC system and in most cases, they provided the smallest published execution time. Although RC systems offer significant performance advantages over general-purpose processors, they require more application development time than general-purpose processors. This increased development time of RC systems provides the motivation to develop an optimized module library with an assembly language instruction format interface for use with future RC system that will reduce development time significantly. In this paper, we present area/performance metrics for several different types of floating point (FP) modules that can be utilized to develop complex FP applications. These modules are highly pipelined and optimized for both speed and area. Using these modules, and example application, FP matrix multiplication, is also presented. Our results and experiences show, that with these modules, 8-10X speedup over general-purpose processors can be achieved.

Sahin, Ibrahin↗

A Measurement and Simulation Based Methodology for Cache Performance Modeling and Tuning

We present a cache performance modeling methodology that facilitates the tuning of uniprocessor cache performance for applications executing on shared memory multiprocessors by accurately predicting the effects of source code level modifications. Measurements on a single processor are initially used for identifying parts of code where cache utilization improvements may significantly impact the overall performance. Cache simulation based on trace-driven techniques can be carried out without gathering detailed address traces. Minimal runtime information for modeling cache performance of a selected code block includes: base virtual addresses of arrays, virtual addresses of variables, and loop bounds for that code block. Rest of the information is obtained from the source code. We show that the cache performance predictions are as reliable as those obtained through trace-driven simulations. This technique is particularly helpful to the exploration of various "what-if' scenarios regarding the cache performance impact for alternative code structures. We explain and validate this methodology using a simple matrix-matrix multiplication program. We then apply this methodology to predict and tune the cache performance of two realistic scientific applications taken from the Computational Fluid Dynamics (CFD) domain.

Waheed, Abdul↗

Damage Accumulation in SiC/SiC Composites with 3D Architectures

The formation and propagation of multiple matrix cracks in relatively dense ceramic matrix composites when subjected to increasing tensile stress is necessary for high strength and tough composites. However, the occurrence of matrix cracks at low stresses may limit the usefulness of some non-oxide composite systems when subjected to oxidizing environments for long times at stresses sufficient to cause matrix cracking. For SiC fiber-reinforced composites with two-dimensional woven architectures and chemically vapor infiltrated (CVI) SiC matrix and melt-infiltrated (MI) Si/SiC matrix composites, the matrix cracking behavior has been fairly well characterized for different fiber-types and woven architectures. It was found that the occurrence, degree, and growth of matrix cracks depends on the material properties of the composite constituents as well as other physical properties of the composite or architecture, e.g., matrix porosity and size of the fiber bundle. In this study, matrix cracking in SiC fiber reinforced, melt-infiltrated SiC composites with a 3D orthogonal architecture was determined for specimens tested in tension at room temperature. Acoustic emission (AE) was used to monitor the matrix cracking activity, which was later confirmed by microscopic examination of specimens that had failed. The determination of the exact location of AE demonstrated that initial cracking occurred in the matrix rich regions when a large z-direction fiber bundle was used. For specimens with large z-direction fiber tows, the earliest matrix cracking could occur at half the stress for standard 2D woven composites with similar constituents. Damage accumulation in 3D architecture composites will be compared to damage accumulation in 2D architecture composites and discussed with respect to modeling composite stress-strain behavior and use of these composites at elevated temperatures.

Morscher, Gregory N.↗

A Method for Incorporating Changing Structural Characteristics Due to Propellant Mass Usage in a Launch Vehicle Ascent Simulation

Launch vehicles consume large quantities of propellant quickly, causing the mass properties and structural dynamics of the vehicle to change dramatically. Currently, structural load assessments account for this change with a large collection of structural models representing various propellant fill levels. This creates a large database of models complicating the delivery of reduced models and requiring extensive work for model changes. Presented here is a method to account for these mass changes in a more efficient manner. The method allows for the subtraction of propellant mass as the propellant is used in the simulation. This subtraction is done in the modal domain of the vehicle generalized model. Additional computation required is primarily for constructing the used propellant mass matrix from an initial propellant model and further matrix multiplications and subtractions. An additional eigenvalue solution is required to uncouple the new equations of motion; however, this is a much simplier calculation starting from a system that is already substantially uncoupled. The method was successfully tested in a simulation of Saturn V loads. Results from the method are compared to results from separate structural models for several propellant levels, showing excellent agreement. Further development to encompass more complicated propellant models, including slosh dynamics, is possible.

McGhee, D. S.↗

Forces Associated with Nonlinear Nonholonomic Constraint Equations

A concise method has been formulated for identifying a set of forces needed to constrain the behavior of a mechanical system, modeled as a set of particles and rigid bodies, when it is subject to motion constraints described by nonholonomic equations that are inherently nonlinear in velocity. An expression in vector form is obtained for each force; a direction is determined, together with the point of application. This result is a consequence of expressing constraint equations in terms of dot products of vectors rather than in the usual way, which is entirely in terms of scalars and matrices. The constraint forces in vector form are used together with two new analytical approaches for deriving equations governing motion of a system subject to such constraints. If constraint forces are of interest they can be brought into evidence in explicit dynamical equations by employing the well-known nonholonomic partial velocities associated with Kane's method; if they are not of interest, equations can be formed instead with the aid of vectors introduced here as nonholonomic partial accelerations. When the analyst requires only the latter, smaller set of equations, they can be formed directly; it is not necessary to expend the labor to form the former, larger set first and subsequently perform matrix multiplications.

Roithmayr, Carlos M.↗

NASA Tech Briefs, February 2004

Topics include: Simulation Testing of Embedded Flight Software; Improved Indentation Test for Measuring Nonlinear Elasticity; Ultraviolet-Absorption Spectroscopic Biofilm Monitor; Electronic Tongue for Quantitation of Contaminants in Water; Radar for Measuring Soil Moisture Under Vegetation; Modular Wireless Data-Acquisition and Control System; Microwave System for Detecting Ice on Aircraft; Routing Algorithm Exploits Spatial Relations; Two-Finger EKG Method of Detecting Evasive Responses; Updated System-Availability and Resource-Allocation Program; Routines for Computing Pressure Drops in Venturis; Software for Fault-Tolerant Matrix Multiplication; Reproducible Growth of High-Quality Cubic-SiC Layers; Nonlinear Thermoelastic Model for SMAs and SMA Hybrid Composites; Liquid-Crystal Thermosets, a New Generation of High-Performance Liquid-Crystal Polymers; Formulations for Stronger Solid Oxide Fuel-Cell Electrolytes; Simulation of Hazards and Poses for a Rocker-Bogie Rover; Autonomous Formation Flight; Expandable Purge Chambers Would Protect Cryogenic Fittings; Wavy-Planform Helicopter Blades Make Less Noise; Miniature Robotic Spacecraft for Inspecting Other Spacecraft; Miniature Ring-Shaped Peristaltic Pump; Compact Plasma Accelerator; Improved Electrohydraulic Linear Actuators; A Software Architecture for Semiautonomous Robot Control; Fabrication of Channels for Nanobiotechnological Devices; Improved Thin, Flexible Heat Pipes; Miniature Radioisotope Thermoelectric Power Cubes; Permanent Sequestration of Emitted Gases in the Form of Clathrate Hydrates; Electrochemical, H2O2-Boosted Catalytic Oxidation System; Electrokinetic In Situ Treatment of Metal-Contaminated Soil; Pumping Liquid Oxygen by Use of Pulsed Magnetic Fields; Magnetocaloric Pumping of Liquid Oxygen; Tailoring Ion-Thruster Grid Apertures for Greater Efficiency; and Lidar for Guidance of a Spacecraft or Exploratory Robot.

Source record↗

Implementation of a Digital Signal Processing Subsystem for a Long Wavelength Array Station

This paper describes the implementation of a Digital Signal Processing (DP) subsystem for a single Long Wavelength Array (LWA) station.12 The LWA is a radio telescope that will consist of many phased array stations. Each LWA station consists of 256 pairs of dipole-like antennas operating over the 10-88 MHz frequency range. The Digital Signal Processing subsystem digitizes up to 260 dual-polarization signals at 196 MHz from the LWA Analog Receiver, adjusts the delay and amplitude of each signal, and forms four independent beams. Coarse delay is implemented using a first-in-first-out buffer and fine delay is implemented using a finite impulse response filter. Amplitude adjustment and polarization corrections are implemented using a 2x2 matrix multiplication

Long Wavelength Array↗

A Walsh Function Module Users' Manual

The solution of partial differential equations (PDEs) with Walsh functions offers new opportunities to simulate many challenging problems in mathematical physics. The approach was developed to better simulate hypersonic flows with shocks on unstructured grids. It is unique in that integrals and derivatives are computed using simple matrix multiplication of series representations of functions without the need for divided differences. The product of any two Walsh functions is another Walsh function - a feature that radically changes an algorithm for solving PDEs. A FORTRAN module for supporting Walsh function simulations is documented. A FORTRAN code is also documented with options for solving time-dependent problems: an advection equation, a Burgers equation, and a Riemann problem. The sample problems demonstrate the usage of the Walsh function module including such features as operator overloading, Fast Walsh Transforms in multi-dimensions, and a Fast Walsh reciprocal.

Gnoffo, Peter A.↗

Simulating and Detecting Radiation-Induced Errors for Onboard Machine Learning

Spacecraft processors and memory are subjected to high radiation doses and therefore employ radiation-hardened components. However, these components are orders of magnitude more expensive than typical desktop components, and they lag years behind in terms of speed and size. We have integrated algorithm-based fault tolerance (ABFT) methods into onboard data analysis algorithms to detect radiation-induced errors, which ultimately may permit the use of spacecraft memory that need not be fully hardened, reducing cost and increasing capability at the same time. We have also developed a lightweight software radiation simulator, BITFLIPS, that permits evaluation of error detection strategies in a controlled fashion, including the specification of the radiation rate and selective exposure of individual data structures. Using BITFLIPS, we evaluated our error detection methods when using a support vector machine to analyze data collected by the Mars Odyssey spacecraft. We found ABFT error detection for matrix multiplication is very successful, while error detection for Gaussian kernel computation still has room for improvement.

data analysis↗

COxSwAIN: Compressive Sensing for Advanced Imaging and Navigation

The COxSwAIN project focuses on building an image and video compression scheme that can be implemented in a small or low-power satellite. To do this, we used Compressive Sensing, where the compression is performed by matrix multiplications on the satellite and reconstructed on the ground. Our paper explains our methodology and demonstrates the results of the scheme, being able to achieve high quality image compression that is robust to noise and corruption.

Kurwitz, Richard↗

A Systematic Approach to Hardware Qualification

A systematic approach for the development of a hardware qualification approach is described. This approach stems from the need to break the "Catch-22" of not being able to fly new technology because it hasn't flown. A physics of failure approach is used to identify failure modes and the impact and likelihood of these failures on the mission requirements is plotted in a Requirements Matrix. These same failure modes are plotted against the effectiveness of the available Preventions, Analyses, Control and Tests (PACTs) at screening for, or eliminating, these failure modes in a Test Effectiveness Matrix. Matrix multiplication results in a ranked set of PACTs which can be sorted according to cost and redundancy with other PACTs. This, and other information which results from the process, will allow project managers to make more informed decisions regarding the cost and risk tradeoffs inherent in any qualification program.

hardware↗

Accuracy/Computation Performance of a New Trilateration Scheme for GPS-Style Localization

We recently introduced a new geometric trilateration (GT) method for GPS-style positioning. Preliminary singlepoint analysis using simplistic error assumptions indicates that the new scheme delivers almost indistinguishable localization accuracy as the traditional Newton-Raphson (NR) approach. Also, the same computation procedure can be used to perform high-accuracy relative positioning between a reference vehicle and an arbitrary number of target vehicles. This scheme has the potential to enable a) new mission concepts in collaborative science, b) in-situ navigation services for human Mars missions, and c) lower cost and faster acquisition of GPS signals for consumer-grade GPS products. The new GT scheme differs from the NR scheme as follows: 1. The new scheme is derived from Pythagoras Theorem, whereas the NR method is based on the principle of linear regression. 2. The NR method uses the absolute locations (xi, yi, zi)’s of the GPS satellites as input to each step of the localization computation. The GT method uses the Directional Cosines Ui’s from Earth’s center to the GPS satellite Si. 3. Both the NR method and the GT method iterate to converge to a localized solution. In each iteration step, multiple matrix operations are performed. The NR method constructs a different matrix in each iterative step, thus requires performing a new set of matrix operations in each step. The GT scheme uses the same matrix in each iteration, thus requiring computing the matrix operations only once for all subsequent iterations. In this paper, we perform an in-depth comparison between the GT scheme and the NR method in terms of a) GPS localization accuracy in the GPS operation environment, b) its sensitivity with respect to systematic errors and random errors, and c) computation load required to converge to a localization solution.

Lee, Charles↗

Optical implementation of systolic array processing

Algorithms for matrix vector multiplication are implemented using acousto-optic cells for multiplication and input data transfer and using charge coupled devices detector arrays for accumulation and output of the results. No two dimensional matrix mask is required; matrix changes are implemented electronically. A system for multiplying a 50 component nonnegative real vector by a 50 by 50 nonnegative real matrix is described. Modifications for bipolar real and complex valued processing are possible, as are extensions to matrix-matrix multiplication and multiplication of a vector by multiple matrices.

Caulfield, H. J.↗

Parallelization of the Physical-Space Statistical Analysis System (PSAS)

Atmospheric data assimilation is a method of combining observations with model forecasts to produce a more accurate description of the atmosphere than the observations or forecast alone can provide. Data assimilation plays an increasingly important role in the study of climate and atmospheric chemistry. The NASA Data Assimilation Office (DAO) has developed the Goddard Earth Observing System Data Assimilation System (GEOS DAS) to create assimilated datasets. The core computational components of the GEOS DAS include the GEOS General Circulation Model (GCM) and the Physical-space Statistical Analysis System (PSAS). The need for timely validation of scientific enhancements to the data assimilation system poses computational demands that are best met by distributed parallel software. PSAS is implemented in Fortran 90 using object-based design principles. The analysis portions of the code solve two equations. The first of these is the "innovation" equation, which is solved on the unstructured observation grid using a preconditioned conjugate gradient (CG) method. The "analysis" equation is a transformation from the observation grid back to a structured grid, and is solved by a direct matrix-vector multiplication. Use of a factored-operator formulation reduces the computational complexity of both the CG solver and the matrix-vector multiplication, rendering the matrix-vector multiplications as a successive product of operators on a vector. Sparsity is introduced to these operators by partitioning the observations using an icosahedral decomposition scheme. PSAS builds a large (approx. 128MB) run-time database of parameters used in the calculation of these operators. Implementing a message passing parallel computing paradigm into an existing yet developing computational system as complex as PSAS is nontrivial. One of the technical challenges is balancing the requirements for computational reproducibility with the need for high performance. The problem of computational reproducibility is well known in the parallel computing community. It is a requirement that the parallel code perform calculations in a fashion that will yield identical results on different configurations of processing elements on the same platform. In some cases this problem can be solved by sacrificing performance. Meeting this requirement and still achieving high performance is very difficult. Topics to be discussed include: current PSAS design and parallelization strategy; reproducibility issues; load balance vs. database memory demands, possible solutions to these problems.

Larson, J. W.↗

Accuracy and speed in computing the Chebyshev collocation derivative

We studied several algorithms for computing the Chebyshev spectral derivative and compare their roundoff error. For a large number of collocation points, the elements of the Chebyshev differentiation matrix, if constructed in the usual way, are not computed accurately. A subtle cause is is found to account for the poor accuracy when computing the derivative by the matrix-vector multiplication method. Methods for accurately computing the elements of the matrix are presented, and we find that if the entities of the matrix are computed accurately, the roundoff error of the matrix-vector multiplication is as small as that of the transform-recursion algorithm. Results of CPU time usage are shown for several different algorithms for computing the derivative by the Chebyshev collocation method for a wide variety of two-dimensional grid sizes on both an IBM and a Cray 2 computer. We found that which algorithm is fastest on a particular machine depends not only on the grid size, but also on small details of the computer hardware as well. For most practical grid sizes used in computation, the even-odd decomposition algorithm is found to be faster than the transform-recursion method.

Don, Wai-Sun↗

Parallel Preconditioning for CFD Problems on the CM-5

Up to today, preconditioning methods on massively parallel systems have faced a major difficulty. The most successful preconditioning methods in terms of accelerating the convergence of the iterative solver such as incomplete LU factorizations are notoriously difficult to implement on parallel machines for two reasons: (1) the actual computation of the preconditioner is not very floating-point intensive, but requires a large amount of unstructured communication, and (2) the application of the preconditioning matrix in the iteration phase (i.e. triangular solves) are difficult to parallelize because of the recursive nature of the computation. Here we present a new approach to preconditioning for very large, sparse, unsymmetric, linear systems, which avoids both difficulties. We explicitly compute an approximate inverse to our original matrix. This new preconditioning matrix can be applied most efficiently for iterative methods on massively parallel machines, since the preconditioning phase involves only a matrix-vector multiplication, with possibly a dense matrix. Furthermore the actual computation of the preconditioning matrix has natural parallelism. For a problem of size n, the preconditioning matrix can be computed by solving n independent small least squares problems. The algorithm and its implementation on the Connection Machine CM-5 are discussed in detail and supported by extensive timings obtained from real problem data.

Simon, Horst D.↗