Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “kernel scheduling”

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.

51 records · Page 3

Argo NodeOS: Toward Unified Resource Management for Exascale

Exascale systems are expected to feature hundreds of thousands of compute nodes with hundreds of hardware threads and complex memory hierarchies with a mix of on-package and persistent memory modules. In this context, the Argo project is developing a new operating system for exascale machines. Targeting production workloads using workflows or coupled codes, we improve the Linux kernel on several fronts. We extend the memory management of Linux to be able to subdivide NUMA memory nodes, allowing better resource partitioning among processes running on the same node. We also add support for memory-mapped access to node- local, PCIe-attached NVRAM devices and introduce a new scheduling class targeted at parallel runtimes supporting user- level load balancing.

Perarnau, Swann↗

Final Report from The University of Texas at Austin for DEGAS: Dynamic Global Address Space programming environments

The Dynamic, Exascale Global Address Space programming environment (DEGAS) project will develop the next generation of programming models and runtime systems to meet the challenges of Exascale computing. Our approach is to provide an efficient and scalable programming model that can be adapted to application needs through the use of dynamic runtime features and domain-specific languages for computational kernels. We address the following technical challenges: Programmability: Rich set of programming constructs based on a Hierarchical Partitioned Global Address Space (HPGAS) model, demonstrated in UPC++. Scalability: Hierarchical locality control, lightweight communication (extended GASNet), and ef- ficient synchronization mechanisms (Phasers). Performance Portability: Just-in-time specialization (SEJITS) for generating hardware-specific code and scheduling libraries for domain-specific adaptive runtimes (Habanero). Energy Efficiency: Communication-optimal code generation to optimize energy efficiency by re- ducing data movement. Resilience: Containment Domains for flexible, domain-specific resilience, using state capture mechanisms and lightweight, asynchronous recovery mechanisms. Interoperability: Runtime and language interoperability with MPI and OpenMP to encourage broad adoption.

97 MATHEMATICS AND COMPUTING↗

DoD Symposium Presentation

TRISO fuel, or TRi-structural ISOtropic, is a ceramic based nuclear fuel capable of operating at high temperatures (up to 1600°C). The fuel, consisting of uranium oxycarbide (UCO) fuel kernels, is coated with three layers of carbon and ceramic (dense silicon carbide) materials to capture and contain radioactive fission products. BWXT, located in Lynchburg, VA, has perfected the manufacturing techniques to produce this fuel and is currently the only US company licensed to produce this irradiation-tested fuel. BWXT is currently producing fuel in support of a demonstration reactor scheduled for startup on the INL site in 2025. The first fuel delivery, estimated at 200 kilograms High Assay Low Enriched Uranium, is targeted for the end of CY2024.

07 ISOTOPE AND RADIATION SOURCES↗

Scaling Graph Community Detection on the Tilera Many-core Architecture

In an era when power constraints and data movement are proving to be significant barriers for the application of high-end computing, the Tilera many-core architecture offers a low-power platform exhibiting many important characteristics of future systems, including a large number of simple cores, a sophisticated network-on-chip, and fine-grained control over memory and caching policies. While this emerging architecture has been previously studied for structured compute-intensive kernels, benchmarking the platform for data-bound, irregular applications present significant challenges that have remained unexplored. Community detection is an advanced prototypical graph-theoretic operation with applications in numerous scientific domains including life sciences, cyber security, and power systems. In this work, we explore multiple design strategies toward developing a scalable tool for community detection on the Tilera platform. Using several memory layout and work scheduling techniques we demonstrate speedups of up to 46x on 36 cores of the Tilera TileGX36 platform over the best serial implementation, and also show results that have comparable quality and performance to mainstream x86 platforms. To the best of our knowledge this is the first work addressing graph algorithms on the Tilera platform. This study demonstrates that through careful design space exploration, low-power many-core platforms like Tilera can be effectively exploited for graph algorithms that that embody all the essential characteristics of an irregular application.

community detection↗

SmartFuse: Reconfigurable Smart Switches to Accelerate Fused Collectives in HPC Applications

Communication switches have sometimes been augmented to process collectives (e.g., the IBM BlueGene project and the Mellanox SHArP switch). In this work, we find that there is a great acceleration opportunity through the further augmentation of switches to accelerate more complex functions that combine communication with computation. We consider three types of such functions. The first is fully-fused collectives built by fusing multiple existing collectives like Allreduce with Alltoall. The second is semi-fused collectives built by combining a collective with another computation. The third we refer to as higher-order collectives built by combining multiple computations and communications, such as to perform matrix-matrix multiply (PGEMM). In this work, we propose a framework called SmartFuse to accelerate fused collective functions. The core of SmartFuse is a reconfigurable smart switch to support these operations. The semi/fully fused collectives are implemented with a CGRAlike architecture, while higher-order collectives are implemented with a more specialized computational unit that can also schedule communication. Supporting our framework is software to evaluate and translate relevant parts of the input program, compile them into a control data flow graph, and then map this graph to the switch hardware. The proposed framework, once deployed, has the strong potential to accelerate existing HPC applications transparently by encapsulation within an MPI implementation. Experimental results show that this approach improves the performance of the PGEMM kernel, MINIFE, and AMG by, on average, 94%, 15%, and 13%, respectively.

Haghi, Pouya↗

Enabling the High Level Synthesis of Data Analytics Accelerators

Conventional High Level Synthesis (HLS) tools mainly tar- get compute intensive kernels typical of digital signal pro- cessing applications. We are developing techniques and ar- chitectural templates to enable HLS of data analytics appli- cations. These applications are memory intensive, present fine-grained, unpredictable data accesses, and irregular, dy- namic task parallelism. We discuss an architectural tem- plate based around a distributed controller to efficiently ex- ploit thread level parallelism. We present a memory in- terface that supports parallel memory subsystems and en- ables implementing atomic memory operations. We intro- duce a dynamic task scheduling approach to efficiently ex- ecute heavily unbalanced workload. The templates are val- idated by synthesizing queries from the Lehigh University Benchmark (LUBM), a well know SPARQL benchmark.

Data Analytics↗

Scaling Up Data-Parallel Analytics Platforms: Linear Algebraic Operation Cases

Linear algebraic operations such as matrix manipulations form the kernel of many machine learning and other crucial algorithms. Scaling up as well as scaling out such algorithms are key to supporting large scale data analysis that require efficient processing over millions of data samples. To this end, we present, ARION, a hardware acceleration based approach for scaling-up individual tasks of Spark, a popular data-parallel analytics platform. We support both linear algebraic operations of between two dense matrices, and between sparse and dense matrices in distributed environments. ARION provides a flexible control of acceleration according to matrix density, along with efficient scheduling based on runtime resource utilization. We demonstrate the benefit of our approach for general matrix multiplication operations over large matrices with up to four billion elements by using Gramian matrix computation that is commonly used in machine learning. Experiments show that our approach achieves more than 2× and 1.5× end-to-end performance speedups for dense and sparse matrices, respectively, and up to 57.04× faster computation compared to MLlib, a state of the art Spark-based implementation. This work is sponsored in part by the NSF under the grants: CNS-1565314, CNS-1405697, and CNS-1615411. The manuscript has been authored by UT-Battelle, LLC under Contract No. DE-AC05-00OR22725 with the U.S. Department of Energy. The United States Government retains and the publisher, by accepting the article for publication, acknowledges that the United States Government retains a non-exclusive, paid-up, irrevocable, world-wide license to publish or reproduce the published form of this manuscript, or allow others to do so, for United States Government purposes. The Department of Energy will provide public access to these results of federally sponsored research in accordance with the DOE Public Access Plan (http://energy.gov/downloads/doe-public-access-plan). This research used resources of the Oak Ridge Leadership Computing Facility at the Oak Ridge National Laboratory, which is supported by the Office of Science of the U.S. Department of Energy under Contract No. DE-AC05-00OR22725.

Xu, Luna↗

Optimizing Irregular Applications for Energy and Performance on the Tilera Many-core Architecture

Optimizing applications simultaneously for energy and performance is a complex problem. High performance, parallel, irregular applications are notoriously hard to optimize due to their data-dependent memory accesses, lack of structured locality and complex data structures and code patterns. Irregular kernels are growing in importance in applications such as machine learning, graph analytics and combinatorial scientific computing. Performance- and energy-efficient implementation of these kernels on modern, energy efficient, multicore and many-core platforms is therefore an important and challenging problem. We present results from optimizing two irregular applications { the Louvain method for community detection (Grappolo), and high-performance conjugate gradient (HPCCG) { on the Tilera many-core system. We have significantly extended MIT's OpenTuner auto-tuning framework to conduct a detailed study of platform-independent and platform-specific optimizations to improve performance as well as reduce total energy consumption. We explore the optimization design space along three dimensions: memory layout schemes, compiler-based code transformations, and optimization of parallel loop schedules. Using auto-tuning, we demonstrate whole node energy savings of up to 41% relative to a baseline instantiation, and up to 31% relative to manually optimized variants.

irregular applications, energy opttimization, many↗

Distributionally Robust Decision Making Leveraging Conditional Distributions

Distributionally robust optimization (DRO) is a powerful tool for decision making under uncertainty. It is particularly appealing because of its ability to leverage existing data. However, many practical problems call for decision-making with some auxiliary information, and DRO in the context of conditional distributions is not straightforward. We propose a conditional kernel distributionally robust optimization (CKDRO) method that enables robust decision making under conditional distributions through kernel DRO and the conditional mean operator in the reproducing kernel Hilbert space (RKHS). In particular, we consider problems where there is a correlation between the unknown variable y and an auxiliary observable variable x. Given past data of the two variables and a queried auxiliary variable, CKDRO represents the conditional distribution P(y|x) as the conditional mean operator in the RKHS space and quantifies the ambiguity set in the RKHS as well, which depends on the size of the dataset as well as the query point. To justify the use of RKHS, we demonstrate that the ambiguity set defined in RKHS can be viewed as a ball under a metric that is similar to the Wasserstein metric. The DRO is then dualized and solved via a finite dimensional convex program. The proposed CKDRO approach is applied to a generation scheduling problem and shows that the result of CKDRO is superior to common benchmarks in terms of quality and robustness.

Chen, Yuxiao↗

Computing the Properties of Matter with Leadership Computing Resources (Closeout Report for DE-SC0018121)

In order to add more capabilities to Halide, we have designed a new framework called Tiramisu and integrated this framework into Halide. Since Tiramisu enables Halide to target heterogeneous architectures, our development efforts have been refocused on Tiramisu. Most high-performance computer systems today are complex and increasingly heterogeneous; they may have CPUs, GPUs and FPGAs. Achieving best performance requires taking full advantage of all these different architectures. To address this issue, we have designed Tiramisu, an optimization framework that enables Halide (and other DSLs) to target heterogeneous architectures. Tiramisu is an optimization framework that takes as input a high level, architecture-independent representation of code and a set of scheduling and data mapping commands that guide code transformation. The input can either be generated by a domain-specific language (DSL) compiler such as Halide or directly written by a programmer. Tiramisu then applies the user-specified code and data-layout transformations and generates an architecture-specific, low-level intermediate representation (IR) that takes advantage of modern architectural features such as multicore parallelism, non-uniform memory (NUMA) hierarchies, clusters, and accelerators like GPUs and FPGAs. We integrated Tiramisu within Halide and implemented a representative set of benchmarks to evaluate this integration. Tiramisu is now open source and is available for public use (http://tiramisu-compiler.org/). A paper about Tiramisu was published, it shows that Tiramisu extends Halide with many new capabilities and that Tiramisu can generate efficient code for multicores, GPUs, FPGAs and distributed heterogeneous systems. The performance of code generated by the Tiramisu backends matches or exceeds hand optimized reference implementations. For example, the multicore backend matches the highly optimized Intel MKL library on many kernels and shows speedups reaching 4x over the original Halide. In addition to making Tiramisu more robust, we have used Tiramisu to implement a set of representative tensor operation for constructing baryon building blocks required for multi baryon contractions in LQCD. In order to implement this code, we needed to generalize Tiramisu in two ways: first we needed to support indirect array accesses, and second, we needed to add support for complex numbers to Tiramisu. The code generated by Tiramisu is 6x faster than the reference code. Our efforts towards an MPI based multi-node version of tiramisu have matured and the resulting code scales well on multiple nodes (tests up to 512 KNL nodes have been undertaken).

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Data Locality Enhancement of Dynamic Simulations for Exascale Computing (Final Report)

The development of modern processors exhibits two trends that complicate the optimizations of modern software. The first is the increasing sensitivity of processors' throughput to irregularities in computation. With more processors produced through a massive integration of simple cores, future systems will increasingly favor regular data-level parallel computations, but deviate from the needs of applications with complex patterns. Some evidences are already shown on Graphic Processing Units (GPU): Irregular data accesses (e.g., indirect references A[D[i]]) and conditional branches are limiting many GPU applications' performance at a level an order of magnitude lower than the peak of GPU. The second hardware trend is the growing gap between memory bandwidth and the aggregate speed—that is, the sum of all cores' computing power—of a Chip Multiprocessor (CMP). Despite the capped growth of the peak CPU speed, the aggregate speed of a CMP keeps increasing as more cores get into a single chip. It is expected that by 2018, node concurrency in an exascale system will increase by hundreds of times, whereas, memory bandwidth will expand by only 10 to 20 times. Consequently, data movement and storage is expected to consume more than 70% of the total system power. Bridging this gap is difficult; the complexities of modern CMP memory hierarchy make it even harder: Data cache becomes shared among computing units, and the sharing is often non-uniform—whether two computing units share a cache depends on their proximity and the level of the cache. On the recent IBM Power7 architecture, for instance, four hardware contexts (or SMT threads) in a core share the entire memory hierarchy, all cores in one chip share an on-chip L3 cache, and cores across chips share L3 and main memory through off-chip connections. These two trends complicate the translation of computing power into performance, especially for a program with either intensive data accesses or complex patterns in data accesses or control flow paths. Unfortunately, both attributes present and will persist in a class of important applications. For instance, many scientific simulations deal with a large volume of data. And meanwhile, as most real-world processes are non-uniform and evolving (e.g., the evolution of a galaxy or the process of a drug injection), both the computations and data accesses of these programs tend to be irregular and dynamically changing. Currently, the lack of support to these applications on modern CMP severely limits their performance. On GPU, as our recent study shows and other studies echo, performance enhancement of a factor of integers is possible when memory accesses or control flows are streamlined for a set of GPU applications. On multicore CPU, our studies show that traditional locality enhancement, for being oblivious to the new features of multicore memory hierarchy, may even cause large slowdown to data-intensive dynamic applications. The severity of the issues is expected to worsen as the two hardware trends continue. Some recent studies try to match software with the trends, but in a limited scope or manner. For irregularities on GPU, most studies focus on irregularities analyzable through static analysis (e.g., data accesses in regular loops). Dynamic irregularities are harder to address because the needed analysis and transformations typically have to happen at run time. Some other research resorts to hardware extensions, an actual adoption of which is unclear for the entailed space cost and complexity. For data locality, recent years have seen some exploitations of the new memory hierarchy on multicore for performance, but most of them are on process or thread scheduling, rather than program transformations. Our recent study reveals that program-level transformations may magnify the scheduling benefits by a factor of seven, concluding that program-level transformation should play a central role for data locality enhancement on modern CMP. But research in this direction has been sparse, and most have focused on data layout or cache performance modeling, rather than program transformations to match with the new memory hierarchy features. Overall, it is still an open question how to bridge the gap between dynamic computations and the two prominent properties of modern processors. The goal of this project is to develop a set of techniques and software tools to enhance the matching between memory accesses in dynamic simulations and the prominent features of modern and future CMP, alleviating the memory performance issues for petascale and exascale computing. This report summarizes the discoveries and products produced throughout this project. It includes free launch, a new software approach to overcoming the shortcomings of both methods; coherence-free multiview, an approach that allows multiple views of a single data object to co-exist on GPU memory during a GPU kernel execution; algorithmic optimizations to data analytics problems, especially those that involve lots of distance calculations. Supporting dynamic parallelism is important for GPU to benefit a broad range of applications. There are currently two fundamental ways for programs to exploit dynamic parallelism on GPU: a software-based approach with software-managed worklists, and a hardware-based approach through dynamic subkernel launches. Neither is satisfactory. The former is complicated to program and is often subject to some load imbalance; the latter suffers large runtime overhead. In this work, we propose free launch, a new software approach to overcoming the shortcomings of both methods. It allows programmers to use subkernel launches to express dynamic parallelism. It employs a novel compiler-based code transformation named subkernel launch removal to replace the subkernel launches with the reuse of parent threads. Coupled with an adaptive task assignment mechanism, the transformation reassigns the tasks in the subkernels to the parent threads with a good load balance. The technique requires no hardware extensions, immediately deployable on existing GPUs. It keeps the programming convenience of the subkernel launch-based approach while avoiding its large runtime overhead. Meanwhile, its superior load balancing makes it outperform manual worklist-based techniques by 3X on average. The work was published at the 48th Annual IEEE/ACM International Symposium on Microarchitecture (Micro'2015). A Graphic Processing Unit (GPU) system is typically equipped with many types of memory (e.g., global, constant, texture, shared, cache). Data placement determines what data are placed on which type of memory, essential for GPU memory performance. Prior optimizations of data placement always require a single view of a data object on memory, which limits the optimization effectiveness. In this work, we propose coherence-free multiview, an approach that allows multiple views of a single data object to co-exist on GPU memory during a GPU kernel execution. We demonstrate that under certain conditions, the multiple views can remain incoherent while facilitating enhanced data placement. We present a theorem and some compiler support to ensure the soundness of the usage of coherence-free multiview. We further develop reference-discerning data placement, a new way to enhance data placements on GPU. It enables more flexible data placements by using coherence-free multiview to leverage the slack in coherence requirement of some GPU programs. Experiments on three types of GPU systems show that, with less than 200KB space cost, the new data placement technique can provide a 1.6X average (up to 4.27X) speedup. In addition, we have examined algorithmic optimizations to data analytics problems, especially those that involve lots of distance calculations. Computing distances among data points is an essential part of many important algorithms in data analytics, graph analysis, and other domains. In each of these domains, developers have spent significant manual effort optimizing algorithms, often through novel applications of the triangle equality, in order to minimize the number of distance computations in the algorithms. In this work, we observe that many algorithms across these domains can be generalized as an instance of a generic distance-related abstraction. Based on this abstraction, we derive seven principles for correctly applying the triangular inequality to optimize distance-related algorithms. Guided by the findings, we develop Triangular OPtimizer (TOP), the first software framework that is able to automatically produce optimized algorithms that either matches or outperforms manually designed algorithms for solving distance-related problems. TOP achieves up to 237x speedups and 2.5X on average. The work has been published at the 32nd International Conference on Machine Learning (ICML'15) and the 41st International Conference on Very Large Data Bases (VLDB'15).

42 ENGINEERING↗

AGR-5/6/7 Irradiation Test Final As-run Report

This document presents the as-run analysis of the Advanced Gas Reactor (AGR) 5/6/7 irradiation experiment. AGR-5/6/7 is the last of a series of experiments conducted in the Advanced Test Reactor (ATR) at Idaho National Laboratory (INL) in support of the development and qualification of tri-structural isotropic (TRISO) low enriched fuel for use in high-temperature gas-cooled reactors (HTGR). The test train contained five separate capsules that were independently controlled and monitored. Each capsule contained multiple 24.91-mm-long and 12.25-mm-dimeter compacts filled with low-enriched uranium carbide/oxide tri-structural isotropic fuel particles. The objectives of the AGR 5/6/7 experiment were to: 1. Irradiate reference-design fuel particles to support fuel qualification. 2. Establish operating margins for the fuel, beyond normal operating conditions. 3. Provide irradiated-fuel performance data and irradiated-fuel samples for post irradiation examination and safety testing. The primary objective of the AGR-5/6 test (Capsules 1, 2, 4, and 5) was to verify the successful performance of the reference-design fuel under normal operating conditions. The AGR-7 test (Capsule 3) was designed to explore fuel performance at higher temperatures. Its primary objective is to demonstrate the capability of the fuel to withstand conditions beyond normal operating conditions, in support of plant design and licensing. AGR 5/6/7 will also provide irradiated-fuel performance data based on the fission gas release from particles during irradiation. To achieve the test objectives, the AGR-5/6/7 experiment was irradiated in the northeast (NE) flux trap of the ATR with a planned duration of 500 effective full-power days (EFPDs). The NE flux trap was selected because its larger diameter provided greater flexibility for test-train design compared to the Large B positions used for the AGR-1 and AGR-2 irradiations, significantly enhancing test capabilities for the combined irradiation campaigns. Due to delays in the ATR schedule, the AGR-5/6/7 irradiation was significantly shorter than the originally planned 13-cycle schedule. Irradiation began on February 16, 2018 and ended on July 22, 2020, spanning nine ATR cycles (162B?168A) over two and a half years. Thus, the AGR-5/6/7 fuel compacts were irradiated for a total of approximately 360.9 EFPDs. Final burnup values, on a per-compact basis, ranged from 5.66% to 15.26% fissions per initial heavy metal atom, while fast fluence values ranged from 1.62 to 5.55 × 1025 n/m2 (E >0.18 MeV). Time-averaged volume-averaged fuel temperatures on a capsule basis at the end of irradiation ranged from 756°C in Capsule 5 to 1313°C in Capsule 3 excluding days with significantly lower temperature during the two short powered axial locator mechanism cycles, 163A and 167A. By the end of irradiation, 48 out of 54 installed thermocouples (TC) had failed (the bottom three capsules lost all TCs). During the first five cycles (162B ? 165A), fission-gas isotope release-rate-to-birthrate (R/B) ratios were stable in the 10-8?10-6 range, and no in-pile particle failures were observed based on the gross gamma counts. During this time, the high exposed kernel fraction and high fuel particle temperatures in Capsule 1 led to the maximum R/B value of around 2 ? 10-6 for Kr-85m. The fission gas release in all capsules started to increase from the second half of Cycle 166A, when a large number of in-pile particle failures occurred in Capsule 1 and a gas line problem in this capsule caused fission gas leakage at various degrees into the other four capsules. This gas line problem also prevented fission gas release measurement for Capsule 1 during the last three cycles due to gas flow isolation. By the end of irradiation, it is estimated that approximately 15 particle failures in Capsule 3, which was considered possible at the start of the irradiation, since the experiment was designed to operate beyond the high-temperature gas-cooled reactor (HTGR) normal operating temperature range. A few hundred in-pile particle failures were estimated for Capsule 1 by the end of Cycle 166A, but the total number of failures is unknown due to lack of fission gas release data in the later cycles. Additionally, four potential in-pile failures were identified for Capsule 2 during the last cycle, 168A. In contrast, no in-pile failures were identified in the top two capsules (4 and 5) based on absence of the typical spikes in gross gamma counts and low failure estimates using the AGR-3/4 R/B per exposed kernel model.

11 NUCLEAR FUEL CYCLE AND FUEL MATERIALS↗

AGR-5/6/7 Irradiation Test Final As-run Report

This document presents the as-run analysis of the Advanced Gas Reactor (AGR)-5/6/7 irradiation experiment. AGR-5/6/7 is the last of a series of experiments conducted in the Advanced Test Reactor (ATR) at Idaho National Laboratory in support of the development and qualification of tri-structural isotropic low-enriched fuel for use in high-temperature gas-cooled reactors. The test train contained five separate capsules that were independently controlled and monitored. Each capsule contained multiple 24.91-mm-long and 12.25-mm-dimeter compacts filled with low-enriched uranium carbide/oxide tri-structural isotropic fuel particles. The objectives of the AGR-5/6/7 experiment were to: • Irradiate reference-design fuel particles to support fuel qualification. • Establish operating margins for the fuel, beyond normal operating conditions. • Provide irradiated-fuel performance data and irradiated-fuel samples for post-irradiation examination and safety testing. The primary objective of the AGR-5/6 test (Capsules 1, 2, 4, and 5) was to verify the successful performance of the reference-design fuel under normal operating conditions. The AGR-7 test (Capsule 3) was designed to explore fuel performance at higher temperatures. Its primary objective was to demonstrate the capability of the fuel to withstand conditions beyond normal operating conditions, in support of plant design and licensing. AGR-5/6/7 will also provide irradiated-fuel performance data based on the fission gas release from particles during irradiation. To achieve the test objectives, the AGR-5/6/7 experiment was irradiated in the northeast flux trap of the ATR with a planned duration of 500 effective full-power days. The northeast flux trap was selected because its larger diameter provided greater flexibility for test-train design compared to the Large B positions used for the AGR-1 and AGR-2 irradiations, significantly enhancing test capabilities for the combined irradiation campaigns. Due to delays in the ATR schedule, the AGR-5/6/7 irradiation was significantly shorter than the originally planned 13-cycle schedule. Irradiation began on February 16, 2018 and ended on July 22, 2020, spanning nine ATR cycles (162B–168A) over two and a half years. Thus, the AGR-5/6/7 fuel compacts were irradiated for a total of approximately 360.9 effective full-power days. Final burnup values, on a per-compact basis, ranged from 5.66 to 15.26% fissions per initial heavy metal atom, while fast fluence values ranged from 1.62 to 5.55 × 1025 n/m2 (E >0.18 MeV). Time-averaged volume-averaged fuel temperatures on a capsule basis at the end of irradiation ranged from 756°C in Capsule 5 to 1313°C in Capsule 3 excluding days with significantly lower temperature during the two short powered axial locator mechanism cycles, 163A and 167A. By the end of irradiation, 48 out of 54 installed thermocouples had failed (the bottom three capsules lost all thermocouples). During the first five cycles (162B – 165A), the fission-gas isotope release-rate-to-birthrate (R/B) ratios were stable in the 10-8–10-6 range, and no in-pile particle failures were observed based on the gross gamma counts. During this time, the high exposed kernel fraction and high fuel particle temperatures in Capsule 1 led to a maximum R/B value of around 2 ? 10-6 for Kr-85m. The fission gas release in all capsules started to increase from the second half of Cycle 166A, when a large number of in-pile particle failures occurred in Capsule 1 and a gas line problem in this capsule caused fission gas leakage at various degrees into the other four capsules. This gas line problem also prevented a fission gas release measurement for Capsule 1 during the last three cycles due to gas flow isolation. By the end of irradiation, it is estimated that approximately 15 particles failed in Capsule 3, which was considered possible because the experiment was designed to operate beyond the high-temperature gas-cooled reactor normal operating temperature range. A few hundred in-pile particle failures were estimated for Capsule 1 by the end of Cycle 166A, but the total number of failures is unknown due to the lack of fission gas release data in the later cycles. Additionally, four potential in-pile failures were identified for Capsule 2 during the last cycle, Cycle 168A. In contrast, no in-pile failures were identified in the top two capsules (4 and 5) based on the absence of the typical spikes in gross gamma counts and low failure estimates using the AGR-3/4 R/B per exposed kernel model.

11 - NUCLEAR FUEL CYCLE AND FUEL MATERIALS↗

Performance optimization, modeling and analysis of sparse matrix-matrix products on multi-core and many-core processors

Sparse matrix-matrix multiplication (SpGEMM) is a computational primitive that is widely used in areas ranging from traditional numerical applications to recent big data analysis and machine learning. Although many SpGEMM algorithms have been proposed, hardware specific optimizations for multi- and many-core processors are lacking and a detailed analysis of their performance under various use cases and matrices is not available. In this work, we firstly identify and mitigate multiple bottlenecks with memory management and thread scheduling on Intel Xeon Phi (Knights Landing or KNL). Specifically targeting many-core processors, we develop a hash-table-based algorithm and optimize a heap-based shared-memory SpGEMM algorithm. We examine their performance together with other publicly available codes. Different from the literature, our evaluation also includes use cases that are representative of real graph algorithms, such as multi-source breadth-first search or triangle counting. Our hash-table and heap-based algorithms are showing significant speedups from libraries in the majority of the cases while different algorithms dominate the other scenarios with different matrix size, sparsity, compression factor and operation type. We wrap up in-depth evaluation results and make a recipe to give the best SpGEMM algorithm for target scenario. We build the performance model for hash-table and heap-based algorithms, which supports the recipe. A critical finding is that hash-table-based SpGEMM gets a significant performance boost if the nonzeros are not required to be sorted within each row of the output matrix. Finally, we integrate our implementations into a large-scale protein clustering code named HipMCL, accelerating its SpGEMM kernel by up to 10X and achieving an overall performance boost for the whole HipMCL application by 2.6X.

97 MATHEMATICS AND COMPUTING↗