Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “THREADED PROGRAMMING”

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 361 records · Page 20

HPC4Energy Final Report : GE Energy

Power System planning tools are being used today to simulate systems that are far larger and more complex than just a few years ago. Advances in renewable technologies and more pervasive control technology are driving planning engineers to analyze an increasing number of scenarios and system models with much more detailed network representations. Although the speed of individual CPU’s has increased roughly according to Moore’s Law, the requirements for advanced models, increased system sizes, and larger sensitivities have outstripped CPU performance. This computational dilemma has reached a critical point and the industry needs to develop the technology to accurately model the power system of the future. The hpc4energy incubator program provided a unique opportunity to leverage the HPC resources available to LLNL and the power systems domain expertise of GE Energy to enhance the GE Concorda PSLF software. Well over 500 users worldwide, including all of the major California electric utilities, rely on Concorda PSLF software for their power flow and dynamics. This pilot project demonstrated that the GE Concorda PSLF software can perform contingency analysis in a massively parallel environment to significantly reduce the time to results. An analysis with 4,127 contingencies that would take 24 days on a single core was reduced to 24 minutes when run on 4,217 cores. A secondary goal of this project was to develop and test modeling techniques that will expand the computational capability of PSLF to efficiently deal with systems sizes greater than 150,000 buses. Toward this goal the matrix reordering implementation time was sped up 9.5 times by optimizing the code and introducing threading.

29 ENERGY PLANNING, POLICY, AND ECONOMY↗

A compute-bound formulation of Galerkin model reduction for linear time-invariant dynamical systems

This work aims to advance computational methods for projection-based reduced-order models (ROMs) of linear time-invariant (LTI) dynamical systems. For such systems, current practice relies on ROM formulations expressing the state as a rank-1 tensor (i.e., a vector), leading to computational kernels that are memory bandwidth bound and, therefore, ill-suited for scalable performance on modern architectures. This weakness can be particularly limiting when tackling many-query studies, where one needs to run a large number of simulations. This work introduces a reformulation, called rank-2 Galerkin, of the Galerkin ROM for LTI dynamical systems which converts the nature of the ROM problem from memory bandwidth to compute bound. We present the details of the formulation and its implementation, and demonstrate its utility through numerical experiments using, as a test case, the simulation of elastic seismic shear waves in an axisymmetric domain. We quantify and analyze performance and scaling results for varying numbers of threads and problem sizes. In conclusion, we present an end-to-end demonstration of using the rank-2 Galerkin ROM for a Monte Carlo sampling study. We show that the rank-2 Galerkin ROM is one order of magnitude more efficient than the rank-1 Galerkin ROM (the current practice) and about 970 times more efficient than the full-order model, while maintaining accuracy in both the mean and statistics of the field.

97 MATHEMATICS AND COMPUTING↗

DIORAMA Communications

Diorama is written as a collection of modules that can run in separate threads or in separate processes. This defines a clear interface between the modules and also allows concurrent processing of different parts of the pipeline. The pipeline is determined by a description in a scenario file[Norman and Tornga, 2012, Tornga and Norman, 2014]. The scenario manager parses the XML scenario and sets up the sequence of modules which will generate an event, propagate the signal to a set of sensors, and then run processing modules on the results provided by those sensor simulations. During a run a variety of “observer” and “processor” modules can be invoked to do interim analysis of results. Observers do not modify the simulation results, while processors may affect the final result. At the end of a run results are collated and final reports are put out. A detailed description of the scenario file and how it puts together a simulation are given in [Tornga and Norman, 2014]. The processing pipeline and how to program it with the Diorama API is described in Tornga et al. [2015] and Tornga and Wakeford [2015]. In this report I describe the communications infrastructure that is used.

97 MATHEMATICS AND COMPUTING↗

AnalyzeThat: A Programmable Shared-Memory System for an Array of Processing-In-Memory Devices

Processing In Memory (PIM), the concept of integrating processing directly with memory, has been attracting a lot of attention since PIM can assist in overcoming the throughput limitation caused by data movement between CPU and memory. The challenge, however, is that it requires the programmers to have a deep understanding of the PIM architecture to maximize the benefits such as data locality and parallel thread execution on multiple PIM devices. In this study, we present AnalyzeThat, a programmable shared-memory system for parallel data processing with PIM devices. Thematic to AnalyzeThat is a rich PIM-Aware Data Structure (PADS), which is an encapsulation that integrally ties together the data, the analysis tasks and the runtime needed to interface with the PIM device array. The PADS abstraction provides (i) a key-value data container that allows programmers to easily store data on multiple PIMs, (ii) a suite of parallel operations with which users can easily implement data analysis applications, and (iii) a runtime, hidden to programmers, which provides the mechanisms needed to overlay both the data and the tasks on the PIM device array in an intelligent fashion, based on PIM-specific information collected from the hardware. We have developed a PIM emulation framework called AnalyzeThat. Our experimental evaluation with representative data analytics applications suggests that the proposed system can significantly reduce the PIM programming effort without losing its technology benefits.

97 MATHEMATICS AND COMPUTING↗

Coincident Capture through Post-processing PTRAC [Slides]

This presentation discusses the new PTRAC capabilities and workflows. The PTRAC capability in MCNP6.3 has seen a massive overhaul since MCNP6.2. The new HDF5 file format allows for both MPI- and thread-based parallelism. MCNPTools has been updated to handle the new HDF5 PTRAC format and is now open sourced on GitHub. Built-in capabilities, such as the pulse-height tally coincident capture special treatment, can largely be replicated through separate postprocessing scripts that leverage both PTRAC and MCNPTools. This allows for greater flexibility in user-specified and controlled detector response functionality, ultimately using the MCNP code for what it is best at (i.e., particle transport).

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Performance and Application of Parallel OVERFLOW Codes on Distributed and Shared Memory Platforms

The presentation discusses recent studies on the performance of the two parallel versions of the aerodynamics CFD code, OVERFLOW_MPI and _MLP. Developed at NASA Ames, the serial version, OVERFLOW, is a multidimensional Navier-Stokes flow solver based on overset (Chimera) grid technology. The code has recently been parallelized in two ways. One is based on the explicit message-passing interface (MPI) across processors and uses the _MPI communication package. This approach is primarily suited for distributed memory systems and workstation clusters. The second, termed the multi-level parallel (MLP) method, is simple and uses shared memory for all communications. The _MLP code is suitable on distributed-shared memory systems. For both methods, the message passing takes place across the processors or processes at the advancement of each time step. This procedure is, in effect, the Chimera boundary conditions update, which is done in an explicit "Jacobi" style. In contrast, the update in the serial code is done in more of the "Gauss-Sidel" fashion. The programming efforts for the _MPI code is more complicated than for the _MLP code; the former requires modification of the outer and some inner shells of the serial code, whereas the latter focuses only on the outer shell of the code. The _MPI version offers a great deal of flexibility in distributing grid zones across a specified number of processors in order to achieve load balancing. The approach is capable of partitioning zones across multiple processors or sending each zone and/or cluster of several zones into a single processor. The message passing across the processors consists of Chimera boundary and/or an overlap of "halo" boundary points for each partitioned zone. The MLP version is a new coarse-grain parallel concept at the zonal and intra-zonal levels. A grouping strategy is used to distribute zones into several groups forming sub-processes which will run in parallel. The total volume of grid points in each group are approximately balanced. A proper number of threads are initially allocated to each group, and in subsequent iterations during the run-time, the number of threads are adjusted to achieve load balancing across the processes. Each process exploits the multitasking directives already established in Overflow.

Djomehri, M. Jahed↗

A programmable shared-memory system for an array of processing-in-memory devices

Processing in memory (PIM), the concept of integrating processing directly with memory has been attracting a lot of attention, since PIM can assist in overcoming the throughput limitation caused by data movement between CPU and memory. The challenge, however, is that it requires the programmers to have a deep understanding of the PIM architecture to maximize the benefits such as data locality and parallel thread execution on multiple PIM devices. In this study, we present AnalyzeThat, a programmable shared-memory system for parallel data processing with PIM devices. Thematic to AnalyzeThat is a rich PIM-aware data structure (PADS), which is an encapsulation that integrally ties together the data, the analysis tasks and the runtime needed to interface with the PIM device array. The PADS abstraction provides (i) a sophisticated key-value data container that allows programmers to easily store data on multiple PIMs, (ii) a suite of parallel operations with which users can easily implement data analysis applications, and (iii) a runtime, hidden to programmers, which provides the mechanisms needed to overlay both the data and the tasks on the PIM device array in an intelligent fashion, based on PIM-specific information collected from the hardware. We have developed a PIM emulation framework called AnalyzeThat. In conclusion, our experimental evaluation with representative data analytics applications suggests that the proposed system can significantly reduce the PIM programming effort without losing its technology benefits.

97 MATHEMATICS AND COMPUTING↗

Earth System Digital Twins (ESDT) Technology for NASA Earth Science

For NASA's Advanced Information Systems Technology (AIST) Program, an Earth System Digital Twin (ESDT) is defined as an interactive and integrated multidomain, multiscale, digital replica of the state and temporal evolution of Earth systems. It dynamically integrates: relevant Earth system models and simulations; other relevant models (e.g., related to the world's infrastructure); continuous and timely (including near real time and direct readout) observations (e.g., space, air, ground, over/underwater, Internet of Things (IoT), socioeconomic); long-time records; as well as analytics and artificial intelligence tools. Effective ESDTs enable users to run hypothetical scenarios to improve the understanding, prediction of and mitigation/response to Earth system processes, natural phenomena and human activities as well as their many interactions. An ESDT is a type of integrated information system that, for example, enables continuous assessment of impact from naturally occurring and/or human activities on physical and natural environments. AIST ESDT strategic goals are to: 1. Develop information system frameworks to provide continuous and accurate representations of systems as they change over time; 2. Mirror various Earth Science systems and utilize the combination of Data Analytics, Artificial Intelligence, Digital Thread, and state-of-the-art models to help predict the Earth’s response to various phenomena; 3. Provide the tools to conduct "what if" investigations that can result in actionable predictions. The AIST ESDT thrust is developing capabilities toward the development of future digital twins of the Earth or of subcomponents of the Earth. This will enable the development of an overarching framework that will integrate New Observing Strategies (NOS) to enable new observation measurements, i.e., multi-source, coordinated, dynamic and responsive to needs and requests defined by Analytic Collaborative Frameworks (ACF) that enable agile science investigations fusing and analyzing very large amounts of diverse data. NOS and ACF capabilities along with open access to various science, infrastructure and human data, interconnected modeling, data assimilation, simulations, surrogate modeling, high-performance computing and advanced visualization, will define a powerful framework that could be utilized for local, regional or global and/or thematic digital twins. This presentation will describe a general overview of the AIST ESDT vision including prior work done in the areas of NOS and ACF as well as current and upcoming ESDT projects.

Jacqueline Le Moigne↗

Soft Real-Time PID Control on a VME Computer

microPID (uPID) is a computer program for real-time proportional + integral + derivative (PID) control of a translation stage in a Fourier-transform ultraviolet spectrometer. microPID implements a PID control loop over a position profile at sampling rate of 8 kHz (sampling period 125microseconds). The software runs in a strippeddown Linux operating system on a VersaModule Eurocard (VME) computer operating in real-time priority queue using an embedded controller, a 16-bit digital-to-analog converter (D/A) board, and a laser-positioning board (LPB). microPID consists of three main parts: (1) VME device-driver routines, (2) software that administers a custom protocol for serial communication with a control computer, and (3) a loop section that obtains the current position from an LPB-driver routine, calculates the ideal position from the profile, and calculates a new voltage command by use of an embedded PID routine all within each sampling period. The voltage command is sent to the D/A board to control the stage. microPID uses special kernel headers to obtain microsecond timing resolution. Inasmuch as microPID implements a single-threaded process and all other processes are disabled, the Linux operating system acts as a soft real-time system.

Karayan, Vahag↗

Improvements to a Batch Pentadiagonal Solver on NVIDIA GPUs

This poster presents the recent work in OVERFLOW to port the batched pentadiagonal solver to NVIDIA GPUs. There are five pentadiagonal systems for each pencil in the grid but three of these systems share the same LHS. Our first simple approach for porting the pentadiagonal solver to the GPUs was to take advantage of the shared LHS by assigning three threads to the three LHS of each pencil. We demonstrated that this custom solver was 92% faster than the NVIDIA batched pentadiagonal library implementation on a V100 GPU due to the lower memory bandwidth requirements. The second approach treated each pentadiagonal system as a 2x2 block tridiagonal system and used a variant of the parallel cyclic reduction algorithm to solve the problem. One benefit of this approach is that it does not require interleaving the data between each system. We demonstrated that this algorithm is 2.18x faster than the NVIDIA library implementation for the same amount of work. If we take advantage of our shared LHS, this approach is 2.58x faster than the library implementation on a V100 GPU.

GPU Programming↗

DataMover-Lite

DataMover-Lite (DML) is a client program whose purpose is to automatically manage multi-file transfers to clients. It expects as its input a transfer-instruction file, and a local target directory where the files will be moved to. The input file contains the Logical File Names (LFNs) and the transfer URLs (TURLs) of files that need to be transferred. The TURLs can have various protocols depending on the server that manages the files, including gridftp, ftp, https, and srm. Given a multi-file request for a large number of files, the DML can issue concurrently a number of transfers in order to get the files. The number of transfers it can issue is set as a parameter and is usually less than 10. For example, if the multi-file is for 100 files, the DML may keep active only 5 transfers at any one time. When any of the 5 transfers completes it will initiate another transfer. It is not necessary for a single request to contain files whose TURLs have same protocol. If the request to the DML contains TURLs with various protocols, the DML will contact the various servers on different threads according to each TURL's protocol. The DMK take care if scheduling the transfers, monitoring their progress, releasing the files, and getting the authorization for each file to be transferred.

Natarajan, Vijaya↗

Landrush: Rethinking In-Situ Analysis for GPGPU Workflows

In-situ analysis on the output data of scientific simulations has been made necessary by ever-growing output data volumes and increasing costs of data movement as supercomputing is moving towards exascale. With hardware accelerators like GPUs becoming increasingly common in high end machines, new opportunities arise to co-locate scientific simulations and online analysis performed on the scientific data generated by the simulations. However, the asynchronous nature of GPGPU programming models and the limited context-switching capabilities on the GPU pose challenges to co-locating the scientific simulation and analysis on the same GPU. This paper dives deeper into these challenges to understand how best to co-locate analysis with scientific simulations on the GPUs in HPC clusters. Specifically, our 'Landrush' approach to GPU sharing proposes a solution that utilizes idle cycles on the GPU to provide an improved time-to-answer, that is, the total time to run the scientific simulation and analysis of the generated data. Landrush is demonstrated with experimental results obtained from leadership high-end applications on ORNL's Titan supercomputer, which show that (i) GPU-based scientific simulations have varying degrees of idle cycles to afford useful analysis task co-location, and (ii) the inability to context switch on the GPU at instruction granularity can be overcome by careful control of the analysis kernel launches and software-controlled early completion of analysis kernel executions. Results show that Landrush is superior in terms of time-to-answer compared to serially running simulations followed by analysis or by relying on the GPU driver and hardwired thread dispatcher to run analysis concurrently on a single GPU.

Computer Science↗

Evaluation of Low Power ARM Processors for Monte Carlo Particle Transport: MCNP6 on the ARM Cortex-A8 - Paper 83

In the push towards exascale computing, the limiting factors are power requirements and heat dissipation. Using current technology, the power required to drive an exascale supercomputer would near 400-MW. Clearly, future computing hardware will have to be more energy efficient in order to achieve exascale performance. Most of the current research in advanced computing architectures is in the use of standard CPUs with accelerators. However, these accelerators are not generally supported by the traditional scientific programming languages (C, C++, and Fortran) and the scientific software must be tailored specifically to take advantage of the accelerators. Large scale scientific software (hundreds-of-thousand to millions of lines of code) can not be easily ported to the computing platform du jour. The widespread use of low power ARM based processors in the mobile computing market offer a low power alternative to accelerators that are also supported by the traditional scientific programming languages and programming paradigms such as MPI and OpenMP. Computing architectures for scientific computing are often assessed using standard benchmarks such as LINPACK benchmark or using suites of mini-applications that are greatly simplified stand-ins for scientific software. Often the real applications that will deployed on the scientific supercomputers are not ported or tested until delivery of the machines. In order to evaluate the use of ARM processors for scientific computing the Monte Carlo particle transport code, MCNP version 6 was compiled on the ARM Cortex-A8 and a set of benchmark problems were used to assess performance in comparison to an Intel Xeon E5-2670 and the low power Intel Atom N270. MCNP is a continuous energy Monte Carlo particle transport code in development at Los Alamos National Laboratory since 1977. MCNP is used to transport neutrons, photon, electrons, and charged particles using continuous energy interaction data. It is commonly used in fields of nuclear power, nuclear medicine, radiation protection, and high-energy physics through-out the world. MCNP version 6 is approximately 450 thousand lines of code, written primary in Fortran90, with some C and C++. MCNP supports distributed multiprocessing using MPI and threading with OpenMP. The ARM Cortex-A8 executes MCNP6 using about twice as much power as the Intel Xeon E5-2670 and about the same amount of power as the Intel Atom N270. However, these results are encouraging for the use of low-power ARM chips in future supercomputers. The ARM Cortex-A8 is a 32-bit CPU and it's NEON general-purpose SIMD (single-instruction multiple data) engine does not support double-precision floating-point arithmetic. More recent ARM processors (ARM Cortex-A53 and Cortex-A57) support 64-bit addressing and have NEON co-processors that support double-precision floating-point arithmetic. ARM claims that the A50 series delivers a performance increase of 15 times the Cortex-A8 performance for similar power usage. (authors)

61 RADIATION PROTECTION AND DOSIMETRY↗

High-performance epistasis detection in quantitative trait GWAS

epiSNP is a program for identifying pairwise single nucleotide polymorphism (SNP) interactions (epistasis) in quantitative-trait genome-wide association studies (GWAS). A parallel MPI version (EPISNPmpi) was created in 2008 to address this computationally expensive analysis on large data sets with many quantitative traits and SNP markers. However, the falling cost of genotyping has led to an explosion of large-scale GWAS data sets that challenge EPISNPmpi’s ability to compute results in a reasonable amount of time. Therefore, we optimized epiSNP for modern multi-core and highly parallel many-core processors to efficiently handle these large data sets. This paper describes the serial optimizations, dynamic load balancing using MPI-3 RMA operations, and shared-memory parallelization with OpenMP to further enhance load balancing and allow execution on the Intel Xeon Phi coprocessor (MIC). For a large GWAS data set, our optimizations provided a 38.43× speedup over EPISNPmpi on 126 nodes using 2 MICs on TACC’s Stampede Supercomputer. We also describe a Coarray Fortran (CAF) version that demonstrates the suitability of PGAS languages for problems with this computational pattern. We show that the Coarray version performs competitively with the MPI version on the NERSC Edison Cray XC30 supercomputer. Finally, the performance benefits of hyper-threading for this application on Edison (average 1.35× speedup) are demonstrated.

97 MATHEMATICS AND COMPUTING↗

Fitting Leak Test Report: Ground-Based Cryogenic Leak Test of Fittings for Cryogenic Fluid Management

EXECUTIVE SUMMARY Mechanically connected joints used in cryogenic fluid lines as part of space flight elements need to survive launch vibrations and remain leak-free to minimize the loss of on-board commodity and hazardous gas accumulation. In 2020, a cryogenic test apparatus was developed which can evaluate the leak performance of pressurized threaded fluid fittings. The fittings were mounted in the TVAC and cooled to cryogenic test temperature and pressurized with helium while the leak rate was measured using a calibrated GHe leak detector. The test articles for the initial proof of concept testing were ¼ and 1 inch Swagelok VCR fittings with three different types of seal rings copper, nickel, and Ni. Each fitting configuration (size/seal material) was subjected to two consecutive cryogenic thermal cycles, followed by exposure to a launch vibration profile at ambient temperature, after which two additional TVAC cycle tests were performed. The testing reported here is a continuation of the 2020 tests with a statistically significant large number of samples and test runs. Three Swagelok VCR fitting sizes were tested ¼, ½ and 1 inch, and five (5) samples of each fitting size, each sample was tested with SST and Ni seal rings (Total of 30 unique test articles). Each test article was subjected to four (4) thermal cycles. Half of these cycles were performed before vibration testing and half were performed after vibration testing. The vibration testing was performed to evaluate the ability of the fittings to survive launch-type vibration profiles and remain leak-free. Leak checking of each fitting was completed at temperatures between 20K – 30K. The test procedure in Section 8.0 was designed to facilitate a qualification test program by allowing a higher test throughput rate coupled with repeatable test profiles. Results were very positive and show that out of the 30 samples they all passed with leak rates a factor of 2-3 lower than the established 10-6sccs GHe leak threshold. The result showed the Ni seals had lower leak rate, but the SST was more rugged. There were two deviations where damage to the Ni seal ring during assembly resulted in a leaky fitting, this is discussed in Section 10.7 Test Deviations. These fittings show great promise for space flight use and further testing is recommended to fully qualify the fittings per the ASTM F1387-19 and/or other relevant NASA specifications. The test equipment hardware and software capability developed for this testing is generic and not restricted to VCR fittings. It can be employed to evaluate/qualify the leak performance of other types of fittings and a wide range of other cryogenic fluid components such as valves, gages, connectors, etc.

Cryogenic↗

Recovery Act : Near-Single-Crystalline Photovoltaic Thin Films on Polycrystalline, Flexible Substrates

III-V photovoltaics have exhibited efficiencies above 40%, but have found only a limited use because of the high cost of single crystal substrates. At the other end of the spectrum, polycrystalline and amorphous thin film solar cells offer the advantage of low-cost fabrication, but have not yielded high efficiencies. Our program is based on single-crystalline-like thin film photovoltaics on polycrystalline substrates using biaxially-textured templates made by Ion Beam-Assisted Deposition (IBAD). MgO templates made by IBAD on flexible metal substrate have been successfully used for epitaxial growth of germanium films. In spite of a 4.5% lattice mismatch, heteroepitaxial growth of Ge was achieved on CeO2 that was grown on IBAD MgO template. Room temperature optical bandgap of the Ge films was identified at 0.67 eV indicating minimal residual strain. Refraction index and extinction coefficient values of the Ge films were found to match well with that measured from a reference Ge single crystal. GaAs has been successfully grown epitaxially on Ge on metal substrate by molecular beam epitaxy. RHEED patterns indicate self annihilation of antiphase boundaries and the growth of a single domain GaAs. The GaAs is found to exhibit strong photoluminescence signal and, an existence of a relatively narrow (FWHM~20 meV) band-edge excitons measured in this film indicates a good optoelectronic quality of deposited GaAs. While excellent epitaxial growth has been achieved in GaAs on flexible metal substrates, the defect density of the films as measured by High Resolution X-ray Diffraction and etch pit experiments showed a high value of 5 * 10^8 per cm^2. Cross sectional transmission electron microscopy of the multilayer architecture showed concentration of threading dislocations near the germanium-ceria interface. The defect density was found decrease as the Ge films were made thicker. The defects appear to originate from the MgO layer presumably because of large lattice mismatches between the various layers. The defect density in GaAs was reduced by a factor of five by adding a step of in-situ deposition of Ge by MBE on the sputtered Ge prior to GaAs growth. We have investigated device design strategies that would support development of high-efficiency devices in presence of dislocation densities of 10^8 cm^-2 present in our epitaxial GaAs films. Results from modeling work show that with a proper emitter, base and doping selection, the modeled efficiency of a GaAs cells with dislocation densities of 10^9 and 10^8 cm^-2 could be increased from 1% and 7% to 11% and 17% respectively. Under AM0, this single junction GaAs solar cell, has optimized value of emitter and base thickness of around 0.7 and 1.7 microns respectively, to give a maximum efficiency of 24.2%. We have fabricated complete GaAs solar cells using our Ge films on metal substrates. Pattern resolution of few microns with well-defined grid line of 30 microns has been realized on few cm square flexible templates. The ability to grow single-crystalline-like Ge films on flexible, polycrystalline substrates by reel-to-reel tape processing now provides an immense potential to fabricate high quality III-V photovoltaics on flexible, inexpensive substrates.

14 SOLAR ENERGY↗

Recovery Act: "Near-Single-Crystalline Photovoltaic Thin Films on Polycrystalline, Flexible Substrates" (Final Report)

III-V photovoltaics have exhibited efficiencies above 40%, but have found only a limited use because of the high cost of single crystal substrates. At the other end of the spectrum, polycrystalline and amorphous thin film solar cells offer the advantage of low-cost fabrication, but have not yielded high efficiencies. Our program is based on single-crystalline-like thin film photovoltaics on polycrystalline substrates using biaxially-textured templates made by Ion Beam-Assisted Deposition (IBAD). MgO templates made by IBAD on flexible metal substrate have been successfully used for epitaxial growth of germanium films. In spite of a 4.5% lattice mismatch, heteroepitaxial growth of Ge was achieved on CeO 2 that was grown on IBAD MgO template. Room temperature optical bandgap of the Ge films was identified at 0.67 eV indicating minimal residual strain. Refraction index and extinction coefficient values of the Ge films were found to match well with that measured from a reference Ge single crystal. GaAs has been successfully grown epitaxially on Ge on metal substrate by molecular beam epitaxy. RHEED patterns indicate self annihilation of antiphase boundaries and the growth of a single domain GaAs. The GaAs is found to exhibit strong photoluminescence signal and, an existence of a relatively narrow (FWHM~20 meV) band-edge excitons measured in this film indicates a good optoelectronic quality of deposited GaAs. While excellent epitaxial growth has been achieved in GaAs on flexible metal substrates, the defect density of the films as measured by High Resolution X-ray Diffraction and etch pit experiments showed a high value of 5 x 10 8 per cm 2 . Cross sectional transmission electron microscopy of the multilayer architecture showed concentration of threading dislocations near the germanium-ceria interface. The defect density was found decrease as the Ge films were made thicker. The defects appear to originate from the MgO layer presumably because of large lattice mismatches between the various layers. The defect density in GaAs was reduced by a factor of five by adding a step of in-situ deposition of Ge by MBE on the sputtered Ge prior to GaAs growth. We have investigated device design strategies that would support development of high-efficiency devices in presence of dislocation densities of 10 8 cm -2 present in our epitaxial GaAs films. Results from modeling work show that with a proper emitter, base and doping selection, the modeled efficiency of a GaAs cells with dislocation densities of 10 9 and 10 8 cm -2 could be increased from 1% and 7% to 11% and 17% respectively. Under AM0, this single junction GaAs solar cell, has optimized value of emitter and base thickness of around 0.7 and 1.7 microns respectively, to give a maximum efficiency of 24.2%. We have fabricated complete GaAs solar cells using our Ge films on metal substrates. Pattern resolution of few microns with well-defined grid line of 30 microns has been realized on few cm square flexible templates. The ability to grow single-crystalline-like Ge films on flexible, polycrystalline substrates by reel-to-reel tape processing now provides an immense potential to fabricate high quality III-V photovoltaics on flexible, inexpensive substrates.

14 SOLAR ENERGY↗

Development of a GPU-based high-performance radiative transfer model for the Infrared Atmospheric Sounding Interferometer (IASI)

Satellite-observed radiance is a nonlinear functional of surface properties and atmospheric temperature and absorbing gas profiles as described by the radiative transfer equation (RTE). In the era of hyperspectral sounders with thousands of high-resolution channels, the computation of the radiative transfer model becomes more time-consuming. The radiative transfer model performance in operational numerical weather prediction systems still limits the number of channels we can use in hyperspectral sounders to only a few hundreds. To take the full advantage of such high-resolution infrared observations, a computationally efficient radiative transfer model is needed to facilitate satellite data assimilation. In recent years the programmable commodity graphics processing unit (GPU) has evolved into a highly parallel, multi-threaded, many-core processor with tremendous computational speed and very high memory bandwidth. The radiative transfer model is very suitable for the GPU implementation to take advantage of the hardware's efficiency and parallelism where radiances of many channels can be calculated in parallel in GPUs. In this paper, we develop a GPU-based high-performance radiative transfer model for the Infrared Atmospheric Sounding Interferometer (IASI) launched in 2006 onboard the first European meteorological polar-orbiting satellites, METOP-A. Each IASI spectrum has 8461 spectral channels. The IASI radiative transfer model consists of three modules. The first module for computing the regression predictors takes less than 0.004% of CPU time, while the second module for transmittance computation and the third module for radiance computation take approximately 92.5% and 7.5%, respectively. Our GPU-based IASI radiative transfer model is developed to run on a low-cost personal supercomputer with four GPUs with total 960 compute cores, delivering near 4 TFlops theoretical peak performance. By massively parallelizing the second and third modules, we reached 364x speedup for 1 GPU and 1455x speedup for all 4 GPUs, both with respect to the original CPU-based single-threaded Fortran code with the -O{sub 2} compiling optimization. The significant 1455x speedup using a computer with four GPUs means that the proposed GPU-based high-performance forward model is able to compute one day's amount of 1,296,000 IASI spectra within nearly 10 min, whereas the original single CPU-based version will impractically take more than 10 days. This model runs over 80% of the theoretical memory bandwidth with asynchronous data transfer. A novel CPU-GPU pipeline implementation of the IASI radiative transfer model is proposed. The GPU-based high-performance IASI radiative transfer model is suitable for the assimilation of the IASI radiance observations into the operational numerical weather forecast model.

97 MATHEMATICS AND COMPUTING↗