Search NASA⌕ Search

SEARCH · Search NASA

Results for “task parallelism”

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 685 records · Page 38

Review of image correlation systems - Hybrid and optical

The operating principles, design, and development histories of three image correlation systems, the Portable Correlator Unit (PCU), the Miniature Correlator Unit (MCU), and the Coherence Interferometer (CI) are reviewed. The PCU and MCU are compact versions of the classical Vander Lught filter optical correlator, essentially parallel optical processors by light valve; the CI is a white-light correlator which functions entirely by interfering light waves, with electronic detection only at the final output, and thus represents a parallel optical processor by rotational-shear interferometer. Details of the design and construction are discussed and illustrated with drawings and photographs. Also considered are applications of the MCU to NASA tasks such as rendezvous and docking on the Mars Rover and Sample Return mission, autonomous robotic exploration of planetary surfaces, and compression and pattern-recognition of remote-sensing data.

Breckinridge, James B.↗

Operations automation using the Link Monitor and Control Operator Assistant

The Link Monitor and Control Operator Assistant (LMC OA) is a knowledge-based prototype system which uses AI techniques to provide semiautomated monitor and control functions to support operations of the Deep Space Network (DSN) 70-m antenna at the Goldstone Deep Space Communications Complex (DSCC). The manual and time-consuming process of configuring the 70-m antenna and its associated communications and processing equipment, known as precalibration, is an overhead activity; the time spent in precalibration is time which cannot be spent supporting actual mission operations. Therefore, the major goal of the LMC OA task is to demonstrate techniques that reduce precalibration time, decrease operations overhead, and increase the availability of this valuable and oversubscribed NASA resource. The LMC OA prototype was tested in a parallel, experimental mode at the Goldstone DSCC performing semiautomated precalibration using the actual operational equipment. This test demonstrated that a reduction of 40 percent in precalibration time can be achieved with the LMC OA prototype.

Lee, Lorrine F.↗

Mississippi State University Center for Air Sea Technology FY95 Research Program

The Mississippi State University (MSU) Center for Air Sea Technology (CAST) evolved from the Institute for Naval Oceanography's (INO) Experimental Center for Mesoscale Ocean Prediction (ECMOP) which was started in 1989. MSU CAST subsequently began operation on 1 October 1992 under an Office of Naval Research (ONR) two-year grant which ended on 30 September 1994. In FY95 MSU CAST was successful in obtaining five additional research grants from ONR, as well as several other research contracts from the Naval Oceanographic Office via NASA, the Naval Research Laboratory, the Army Corps of Engineers, and private industry. In the past, MSU CAST technical research and development has produced tools, systems, techniques, and procedures that improve efficiency and overcome deficiency for both the operational and research communities residing with the Department of Defense, private industry, and university ocean modeling community. We continued this effort with the following thrust areas: to develop advanced methodologies and tools for model evaluation, validation and visualization, both oceanographic and atmospheric; to develop a system-level capability for conducting temporally and ; spatially scaled ocean simulations driven by or are responsive to ocean models, and take into consideration coupling to atmospheric models; to continue the existing oceanographic/atmospheric data management task with emphasis on distributed databases in a network environment, with database optimization and standardization, including use of Mosaic and World Wide Web (WWW) access; and to implement a high performance parallel computing technology for CAST ocean models

Yeske, Lanny↗

Displacement based multilevel structural optimization

Multidisciplinary design optimization (MDO) is expected to play a major role in the competitive transportation industries of tomorrow, i.e., in the design of aircraft and spacecraft, of high speed trains, boats, and automobiles. All of these vehicles require maximum performance at minimum weight to keep fuel consumption low and conserve resources. Here, MDO can deliver mathematically based design tools to create systems with optimum performance subject to the constraints of disciplines such as structures, aerodynamics, controls, etc. Although some applications of MDO are beginning to surface, the key to a widespread use of this technology lies in the improvement of its efficiency. This aspect is investigated here for the MDO subset of structural optimization, i.e., for the weight minimization of a given structure under size, strength, and displacement constraints. Specifically, finite element based multilevel optimization of structures (here, statically indeterminate trusses and beams for proof of concept) is performed. In the system level optimization, the design variables are the coefficients of assumed displacement functions, and the load unbalance resulting from the solution of the stiffness equations is minimized. Constraints are placed on the deflection amplitudes and the weight of the structure. In the subsystems level optimizations, the weight of each element is minimized under the action of stress constraints, with the cross sectional dimensions as design variables. This approach is expected to prove very efficient, especially for complex structures, since the design task is broken down into a large number of small and efficiently handled subtasks, each with only a small number of variables. This partitioning will also allow for the use of parallel computing, first, by sending the system and subsystems level computations to two different processors, ultimately, by performing all subsystems level optimizations in a massively parallel manner on separate processors. It is expected that the subsystems level optimizations can be further improved through the use of controlled growth, a method which reduces an optimization to a more efficient analysis with only a slight degradation in accuracy. The efficiency of all proposed techniques is being evaluated relative to the performance of the standard single level optimization approach where the complete structure is weight minimized under the action of all given constraints by one processor and to the performance of simultaneous analysis and design which combines analysis and optimization into a single step. It is expected that the present approach can be expanded to include additional structural constraints (buckling, free and forced vibration, etc.) or other disciplines (passive and active controls, aerodynamics, etc.) for true MDO.

Striz, Alfred G.↗

Automated Euler and Navier-Stokes Database Generation for a Glide-Back Booster

The past two decades have seen a sustained increase in the use of high fidelity Computational Fluid Dynamics (CFD) in basic research, aircraft design, and the analysis of post-design issues. As the fidelity of a CFD method increases, the number of cases that can be readily and affordably computed greatly diminishes. However, computer speeds now exceed 2 GHz, hundreds of processors are currently available and more affordable, and advances in parallel CFD algorithms scale more readily with large numbers of processors. All of these factors make it feasible to compute thousands of high fidelity cases. However, there still remains the overwhelming task of monitoring the solution process. This paper presents an approach to automate the CFD solution process. A new software tool, AeroDB, is used to compute thousands of Euler and Navier-Stokes solutions for a 2nd generation glide-back booster in one week. The solution process exploits a common job-submission grid environment, the NASA Information Power Grid (IPG), using 13 computers located at 4 different geographical sites. Process automation and web-based access to a MySql database greatly reduces the user workload, removing much of the tedium and tendency for user input errors. The AeroDB framework is shown. The user submits/deletes jobs, monitors AeroDB's progress, and retrieves data and plots via a web portal. Once a job is in the database, a job launcher uses an IPG resource broker to decide which computers are best suited to run the job. Job/code requirements, the number of CPUs free on a remote system, and queue lengths are some of the parameters the broker takes into account. The Globus software provides secure services for user authentication, remote shell execution, and secure file transfers over an open network. AeroDB automatically decides when a job is completed. Currently, the Cart3D unstructured flow solver is used for the Euler equations, and the Overflow structured overset flow solver is used for the Navier-Stokes equations. Other codes can be readily included into the AeroDB framework.

Chaderjian, Neal M.↗

Processing CCD Images to Detect Transits of Earth-Sized Planets: Maximizing Sensitivity While Achieving Reasonable Downlink Requirements

We have performed end-to-end laboratory and numerical simulations to demonstrate the capability of differential photometry under realistic operating conditions to detect transits of Earth-sized planets orbiting solar-like stars. Data acquisition and processing were conducted using the same methods planned for the proposed Kepler Mission. These included performing aperture photometry on large-format CCD images of an artificial star fields obtained without a shutter at a readout rate of 1 megapixel/sec, detecting and removing cosmic rays from individual exposures and making the necessary corrections for nonlinearity and shutterless operation in the absence of darks. We will discuss the image processing tasks performed `on-board' the simulated spacecraft, which yielded raw photometry and ancillary data used to monitor and correct for systematic effects, and the data processing and analysis tasks conducted to obtain lightcurves from the raw data and characterize the detectability of transits. The laboratory results are discussed along with the results of a numerical simulation carried out in parallel with the laboratory simulation. These two simulations demonstrate that a system-level differential photometric precision of 10-5 on five- hour intervals can be achieved under realistic conditions.

Earth-size planets↗

Reaching bandwidth saturation using transparent injection parallelization

Although logically available, applications may not exploit enough instantaneous communication concurrency to maximize network utilization on HPC systems. This is exacerbated in hybrid programming models that combine single program multiple data with OpenMP or CUDA. We present the design of a “multi-threaded” runtime able to transparently increase the instantaneous network concurrency and to provide near saturation bandwidth, independent of the application configuration and dynamic behavior. The runtime offloads communication requests from application level tasks to multiple communication servers. The servers use system specific performance models to attain network saturation. Our techniques alleviate the need for spatial and temporal application level message concurrency optimizations. Experimental results show improved message throughput and bandwidth by as much as 150% for 4 KB messages on InfiniBand and by as much as 120% for 4 KB messages on Cray Aries. For more complex operations such as all-to-all collectives, we observe as much as 30% speedup. This translates into 23% speedup on 12,288 cores for a NAS FT implemented using FFTW. We observe as much as 76% speedup on 1500 cores for an already optimized UPC+OpenMP geometric multigrid application using hybrid parallelism. For the geometric multigrid GPU implementation, we observe as much as 44% speedup on 512 GPUs.

Chaimov, Nicholas↗

Evaluation of Crew-Centric Onboard Mission Operations Planning and Execution Tool: Year 2

Currently, mission planning for the International Space Station (ISS) is largely affected by ground operators in mission control. The task of creating a week-long mission plan for ISS crew takes dozens of people multiple days to complete, and is often created far in advance of its execution. As such, re-planning or adapting to changing real-time constraints or emergent issues is similarly taxing. As we design for future mission operations concepts to other planets or areas with limited connectivity to Earth, more of these ground-based tasks will need to be handled autonomously by the crew onboard.There is a need for a highly usable (including low training time) tool that enables efficient self-scheduling and execution within a single package. The ISS Program has identified Playbook as a potential option. It already has high crew acceptance as a plan viewer from previous analogs and can now support a crew self-scheduling assessment on ISS or on another mission. The goals of this work, a collaboration between the Human Research Program and the ISS Program, are to inform the design of systems for more autonomous crew operations and provide a platform for research on crew autonomy for future deep space missions. Our second year of the research effort have included new insights on the crew self-scheduling sessions performed by the crew through use on the HERA (Human Exploration Research Analog) and NEEMO (NASA Extreme Environment Mission Operations) analogs. Use on the NEEMO analog involved two self-scheduling strategies where the crew planned and executed two days of EVAs (Extra-Vehicular Activities). On HERA year two represented the first HERA campaign where we were able to perform research tasks. This involved selected flexible activities that the crew could schedule, mock timelines where the crew completed more complex planning exercises, usability evaluation of the crew self-scheduling features, and more insights into the limit of plan complexity that the crew could effectively self-schedule. In parallel we have added in new features and functionality in the Playbook tool based off of our insights from crew self-scheduling in the NASA analogs. In particular this year we have added in the ability for the crew to add, edit, and remove their own activities in the Playbook tool, expanding the type of planning and re-planning possible in the tool and opening up the ability for more free form plan creation. The ability to group and manipulate groups of activities from the plan task list was also added, allowing crew members to add predefined sets of activities onto their mission timeline. In addition we also added a way for crew members to roll back changes in their plan, in order to allow an undo like capability. These features expand and complement the initial self-scheduling features added in year one with the goal of making crew autonomous planning more efficient. As part of this work we have also finished developing the first version of our Playbook Data Analysis Tool, a research tool built to interpret and analyze the unobtrusively collected data obtained during the NASA analog missions through Playbook. This data which includes user click interaction as well as plan change information, through the Playbook Data Analysis Tool, allows us to playback this information as if a video camera was mounted over the crewmember's tablet. While the primary purpose of this tool is to allow usability analysis of crew self-scheduling sessions used on the NASA analog, since the data collected is structured, the tool can automatically derive metrics that would be traditionally tedious to achieve without manual analysis of video playback. We will demonstrate and discuss the ability for future derived metrics to be added to the tool. In addition to the current data and results gathered in year two we will also discuss the preparation and goals of our International Space Station (ISS) onboard technology demonstration with Playbook. This technology demonstration will be preformed as part of the CAST payload starting in late 2016.

onboard planning↗

Comparative analysis of operational forecasts versus actual weather conditions in airline flight planning, volume 3

The impact of more timely and accurate weather data on airline flight planning with the emphasis on fuel savings is studied. This volume of the report discusses the results of Task 3 of the four major tasks included in the study. Task 3 compares flight plans developed on the Suitland forecast with actual data observed by the aircraft (and averaged over 10 degree segments). The results show that the average difference between the forecast and observed wind speed is 9 kts. without considering direction, and the average difference in the component of the forecast wind parallel to the direction of the observed wind is 13 kts. - both indicating that the Suitland forecast underestimates the wind speeds. The Root Mean Square (RMS) vector error is 30.1 kts. The average absolute difference in direction between the forecast and observed wind is 26 degrees and the temperature difference is 3 degree Centigrade. These results indicate that the forecast model as well as the verifying analysis used to develop comparison flight plans in Tasks 1 and 2 is a limiting factor and that the average potential fuel savings or penalty are up to 3.6 percent depending on the direction of flight.

Keitz, J. F.↗

On the Degradation of the Effectiveness of Nonlinear Diffusion Acceleration with Parallel Block Jacobi Splitting

MOOSE's radiation transport module Rattlesnake comprises a first order S N solver that can be accelerated with a flexible Nonlinear Diffusion Acceleration. At each NDA iteration, the streaming and collision operator of the S{sub N} equations are (approximately) inverted using a transport sweep. When executed on multiple processors parallel block Jacobi (PBJ) splitting is utilized lagging the processor sub-domain's incoming angular fluxes making the implemented method asynchronous, i.e. the convergence properties of NDA become dependent on the number of concurrent tasks and details of the partitioning. Within this work, we study the NDA convergence properties for the two-dimensional C5G7 benchmark problem PBJ with p = 1, 2, 4, 8, 12, 16, 24, 32, 48, 60, 72, 96 and 144 concurrent tasks. Rosa studied the convergence properties of PBJ splitting methods with and without transport synthetic acceleration (TSA) in slab geometry and two-dimensional Cartesian geometry, respectively. Rosa's iteration scheme lags both the incoming angular fluxes and the scattering source making it very similar to the method described here. Rosa found by means of Fourier analysis that convergence of unaccelerated PBJ can degrade for optically thin subdomains, i.e. for a large number of processors given a fixed domain size. Depending on the choice of parameters application of TSA can lead to an effective algorithm. In contrast to Rosa's work, this work focuses on PBJ splitting for NDA accelerated solution of the multigroup eigenvalue problem. Later, Zerr and Anistratov used their integral transport matrix method in conjunction with PBJ. This iteration scheme is different as it does not lag the scattering source. Nevertheless, Fourier analysis with Diamond Difference spatial discretization showed that the method degrades with increasing the overall size of the spatial domain while keeping the sub-domain size constant. In the case of an infinite medium, the observed spectral radius becomes unity. These references establish the iterative performance of PBJ for one-group fixed source problems discretized on rectangular cells, but for the Rattlesnake first order NDA method, an emphasis lies on multigroup eigenvalue problems. In this setting, the additional complication arises that the low order equations are not exactly inverted, but only to some iterative criterion. Further, as the low order problem is solved using Jacobian-Free Newton Krylov methods, a suitable preconditioner for the GMRES iterations is required. As the effectiveness of the preconditioners may decrease when more concurrent processes are used, we expect the low order solve to impact the overall effectiveness of the NDA method in parallel execution as well. Therefore, this work focuses on the question of how detrimental the asynchronicity of the high and low order iterative solutions is for the effectiveness of NDA solutions of realistic, unstructured grid, multigroup eigenvalue problems. The iterative convergence properties of Rattlesnake's NDA method for multigroup eigenvalue problems are studied for varying number of concurrent processes. Rattlesnake's NDA method is asynchronous because the high order transport sweep uses PBJ splitting and because the low order solve's preconditioners, algebraic multigrid and additive Schwarz, are asynchronous. We found that up to 144 processes the number of Picard iterations increases by a factor of 2-3 affecting but not destroying NDA's parallel performance for the C5G7 benchmark problem, a representative LWR (light water reactor) configuration. The solution of the NDA low order eigenvalue problem posed greater problems than expected for the solvers currently available in Rattlesnake mainly because of problems to effectively precondition the modified low-order problem. As a matter of fact, the low order problem becomes an advection-diffusion problem. Non-robustness was observed for the AMG preconditioned coarse mesh acceleration for more than 60 concurrent processes, which was fixed by increasing the number of permissible V-cycles per AMG call. For fine mesh acceleration AMG proved to be ineffective and we resorted to ASM. For both AMG and ASM, increasing number of linear iterations per nonlinear are observed when increasing the number of processes, but for ASM this problem appears to be worse. The results from this work also indicate that initial development efforts should be diverted from implementation of a high-order parallel sweeping algorithm to the effective and robust iterative solution of the low order NDA multigroup eigenvalue problem. (authors)

97 MATHEMATICS AND COMPUTING↗

COMPOFF: A Compiler Cost model using Machine Learning to predict the Cost of OpenMP Offloading

The HPC industry is inexorably moving towards an era of extremely heterogeneous architectures, with more devices configured on any given HPC platform and potentially more kinds of devices, some of them highly specialized. Writing a separate code suitable for each target system for a given HPC application is not practical. The better solution is to use directive-based parallel programming models such as OpenMP. OpenMP provides a number of options for offloading a piece of code to devices like GPUs. To select the best option from such options during compilation, most modern compilers use analytical models to estimate the cost of executing the original code and the different offloading code variants. Building such an analytical model for compilers is a difficult task that necessitates a lot of effort on the part of a compiler engineer. Recently, machine learning techniques have been successfully applied to build cost models for a variety of compiler optimization problems. In this paper, we present COMPOFF, a cost model which uses the multi-layer perceptrons to statically estimates the Cost of OpenMP OFFloading. We used six different transformations on a parallel code of Wilson Dslash Operator to support GPU offloading, and we predicted their cost of execution on different GPUs using COMPOFF during compile time. Our results show that this model can predict offloading costs with a root mean squared error in prediction of less than 0.5 seconds. Our preliminary findings indicate that this work will make it much easier and faster for scientists and compiler developers to port legacy HPC applications that use OpenMP to new heterogeneous computing environment.

97 MATHEMATICS AND COMPUTING↗

5G Securely Energized and Resilient: (5G-SER) (Final Report)

NREL's work on 5G integration with physical power systems (versus simulated systems demonstrated in task 3) under 5G-Securely Energized and Resilient (5G-SER) achieved a major milestone in with the completion of Task 4 activities. After many months (6+) of planning and development along with scaling challenges along the way, a full 5G end-to-end network with physical hardware components (physical inverter, physical power panel, physical battery, etc.) was deployed in a containerized environment. In parallel, a distributed controls architecture for a microgrid powering 5G resources was also successfully modified from its previous instantiation for a simulated environment to work with these physical components. These accomplishments set the stage to use newly setup 5G technology with physical microgrid components to test the feasibility of 5G wireless with physical systems to enable resilient communications between controls and distributed solar and storage resources while exploring ways to configure 5G components to survive power disturbances. The results detailed in the report below show that even utilizing physical components, 5G wireless systems were able to provide resilient results that were similar to the results from the simulated environment Task 3).

24 POWER TRANSMISSION AND DISTRIBUTION↗

Parallel streaming between heterogeneous HPC resources for real-time analysis

Performing analysis or generating visualizations concurrently with high performance simulations can yield great benefits compared to post-processing data. Writing and reading large volumes of data can be reduced or eliminated, thereby producing an I/O cost savings. One such method for concurrent simulation and analysis is in transit - streaming data from the resource running the simulation to a separate resource running the analysis. In transit analysis can be beneficial since computational resources may not have certain resources needed for visualization and analysis (e.g. GPUs) and to reduce the impact of performing analysis tasks to the run time of the simulation. When sending and receiving data in transit, data redistribution mechanisms are needed in order to support heterogeneous data layouts that may be required by the simulation and analysis applications. The work described in this paper compares two mechanisms for on-the-fly data redistribution when streaming data in parallel between two distributed memory applications. Finally, our results show that it is often more advantageous to stream data in the same layout as the sender and redistribute data amongst processes on the receiving end than to stream data in the final layout needed by the receiver.

97 MATHEMATICS AND COMPUTING↗

Employing artificial intelligence to steer exascale workflows with colmena

Computational workflows are a common class of application on supercomputers, yet the loosely coupled and heterogeneous nature of workflows often fails to take full advantage of their capabilities. We created Colmena to leverage the massive parallelism of a supercomputer by using Artificial Intelligence (AI) to learn from and adapt a workflow as it executes. Colmena allows scientists to define how their application should respond to events (e.g., task completion) as a series of cooperative agents. In this paper, we describe the design of Colmena, the challenges we overcame while deploying applications on exascale systems, and the science workflows we have enhanced through interweaving AI. The scaling challenges we discuss include developing steering strategies that maximize node utilization, introducing data fabrics that reduce communication overhead of data-intensive tasks, and implementing workflow tasks that cache costly operations between invocations. These innovations coupled with a variety of application patterns accessible through our agent-based steering model have enabled science advances in chemistry, biophysics, and materials science using different types of AI. In conclusion, our vision is that Colmena will spur creative solutions that harness AI across many domains of scientific computing.

Workflows↗

Domaine-Specific Runtime to Orchestrate Computation on Heterogeneous Platforms

Task-based runtime systems in the past have sought to exploit inherent asynchronicity in the application execution to reduce overall runtime. In the last decade focus shifted to supporting the heterogeneity that is increasingly prevalent in high-performance computing systems. However, existing task-based runtime systems, being general, come with a challenging set of issues such as the complexity of abstractions and overheads. And they still leave much of the burden of exposing the parallelism on the application developers who also have to fit their applications to the runtime systems’ interfaces. In this paper we take a different approach for applications to target heterogeneous systems through domain-specific run-times. Our design aspires to leverage the domain-specific knowledge of a focused class of scientific simulations to pragmatically orchestrate computations in the simulations.

97 MATHEMATICS AND COMPUTING↗

National Aero-Space Plane technology development overview

The paper discusses the management structure and organization that was developed in early 1986 to focus the national technology resource pool on the enabling technologies for the NASP. The NASP program is developing technologies in parallel with total system studies that are aimed at single stage to orbit (SSTO) capability. In order to manage the technology development seven teams were established by discipline and charged with the task of recommending specific programs to be funded by the NASP Joint Program Office (JPO). The teams were staffed by representatives from NASA Research Centers, Johns Hopkins University, and the Air Force Laboratories at Wright-Patterson AFB. In addition several special teams were established to recommend development programs for specific areas of technical concern that became apparent when the total system studies identified the technology to be critical and sensitive in the analysis that would enable a single stage to orbit vehicle.

Wright, Howard T.↗

Extensions to the Parallel Real-Time Artificial Intelligence System (PRAIS) for fault-tolerant heterogeneous cycle-stealing reasoning

Extensions to an architecture for real-time, distributed (parallel) knowledge-based systems called the Parallel Real-time Artificial Intelligence System (PRAIS) are discussed. PRAIS strives for transparently parallelizing production (rule-based) systems, even under real-time constraints. PRAIS accomplished these goals (presented at the first annual C Language Integrated Production System (CLIPS) conference) by incorporating a dynamic task scheduler, operating system extensions for fact handling, and message-passing among multiple copies of CLIPS executing on a virtual blackboard. This distributed knowledge-based system tool uses the portability of CLIPS and common message-passing protocols to operate over a heterogeneous network of processors. Results using the original PRAIS architecture over a network of Sun 3's, Sun 4's and VAX's are presented. Mechanisms using the producer-consumer model to extend the architecture for fault-tolerance and distributed truth maintenance initiation are also discussed.

Goldstein, David↗

Real-time processing of radar return on a parallel computer

NASA is working with the FAA to demonstrate the feasibility of pulse Doppler radar as a candidate airborne sensor to detect low altitude windshears. The need to provide the pilot with timely information about possible hazards has motivated a demand for real-time processing of a radar return. Investigated here is parallel processing as a means of accommodating the high data rates required. A PC based parallel computer, called the transputer, is used to investigate issues in real time concurrent processing of radar signals. A transputer network is made up of an array of single instruction stream processors that can be networked in a variety of ways. They are easily reconfigured and software development is largely independent of the particular network topology. The performance of the transputer is evaluated in light of the computational requirements. A number of algorithms have been implemented on the transputers in OCCAM, a language specially designed for parallel processing. These include signal processing algorithms such as the Fast Fourier Transform (FFT), pulse-pair, and autoregressive modelling, as well as routing software to support concurrency. The most computationally intensive task is estimating the spectrum. Two approaches have been taken on this problem, the first and most conventional of which is to use the FFT. By using table look-ups for the basis function and other optimizing techniques, an algorithm has been developed that is sufficient for real time. The other approach is to model the signal as an autoregressive process and estimate the spectrum based on the model coefficients. This technique is attractive because it does not suffer from the spectral leakage problem inherent in the FFT. Benchmark tests indicate that autoregressive modeling is feasible in real time.

Aalfs, David D.↗