Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Compilation”

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 595 records · Page 33

Structural Health and Prognostics Management for Offshore Wind Plants (Final Report)

This final report is a compilation of research efforts – funded by the US Department of Energy Wind and Water Power Technologies Office over a four-year period from FY11 through FY14. The goals of this research program were to develop and evaluate technical innovations with promise for maximizing revenues and reducing levelized cost of energy (LCOE) for offshore wind plants – more specifically the goals of the Structural Health and Prognostics Management (SHPM) program were to reduce O&M costs and increase energy capture through use of SHPM-based technologies. A technology roadmap was developed at the start of the project to guide the research efforts. This roadmap identified and outlined six major research thrust areas each having five stages of maturity. Research was conducted in each of these thrust areas, as documented throughout this report, although a major focus was on development of damage detection strategies for the most frequent blade damage conditions and damage mitigation and life-extension strategies via changes in turbine operations (smart loads management). The work summarized in this compilation report is the product of the work of many researchers. A summary of the major findings, status of the SHPM Technology Roadmap and recommendations for future work are also provided.

17 WIND ENERGY↗

VTK-m Users' Guide (Version 0.0)

VTK-m is written in C++ and makes extensive use of templates. The toolkit is implemented as a header library, meaning that all the code is implemented in header files (with extension .h) and completely included in any code that uses it. This is typically necessary of template libraries, which need to be compiled with template parameters that are not known until they are used. This also provides the convenience of allowing the compiler to inline user code for better performance.

97 MATHEMATICS AND COMPUTING↗

Impacts of electromagnetic fields associated with marine and hydrokinetic surrogate technologies on fish movements and behaviors.

Marine and hydrokinetic energy (MHK) and offshore wind devices are being developed and deployed in U.S. and international waters. Electric current flowing through subsea transmission cables associated with these devices will generate electromagnetic fields (EMF), which may interact with, and potentially impact, marine fishes. Some marine fishes can detect electric and/or magnetic fields and use them to navigate, orientate, and sense prey, mates and predators. Over the past five years there have been multiple comprehensive reviews and studies evaluating the potential vulnerability of marine fishes to EMF produced by MHK devices. Most documented effects involve sub-lethal behavioral responses of individual fish when in close proximity to EMF (e.g., fish being repelled by or attracted to fields). These reviews reach conclusions that the current state of research on this topic is still in its infancy and evaluations of potential impacts are associated with great uncertainty. A variety of MHK technologies are likely to be considered for deployment offshore of the Hawaiian Islands, and there is a need to be able to better predict and assess potential associated environmental impacts. The goal of this study was to provide a complementary piece to these previous reviews (e.g., Normandeau et al. 2011) by focusing on marine fish species in the Hawaii region. We compiled the relevant available information, then prioritized fish species as candidates for various paths of future research. To address this, we first developed a list of Hawaii Region Focal Species, which included fishes that are more likely to be sensitive to EMF. We then compiled species-specific information available in the literature on their sensitivity to EMF, as well as life history, movement and habitat use information that could inform an analysis of their likelihood of encountering EMF from subsea cables associated with MHK devices. Studies have only documented EMF sensitivity in 11 of the marine fish species in this region. There was also relatively little detailed information on fish movement and habitat use patterns for most of the focal species. Our last objective was to develop recommendations for research needs to close the important knowledge gaps. We describe species-independent baseline research that primarily consists of in situ quantification of EMF generated by MHK devices and undersea cables that can occur as pilot and commercial scale MHK devices are deployed in Hawaii. Then we propose a simple approach for prioritizing Hawaii Region Focal Species (ranked relative to each other) as candidates in multiple related research paths. The prioritization approach incorporates EMF sensitivity information with the likelihood of interacting with EMF generated undersea transmission cables associated with MHK devices. Finally, we discuss the types of research needed to help fill gaps in the scientific knowledge base for this region. These involve studies to better define species-specific EMF sensitivity thresholds under various environmental conditions, studies of life history, movement and habitat use patterns to improve our understanding of the likelihood and frequency fishes may be in the vicinity of EMF generated by subsea transmission cables, and studies of the potential for related population, community or ecosystem impacts. Many of these studies can and should occur opportunistically as pilot and commercial scale MHK devices are deployed in Hawaii.

59 BASIC BIOLOGICAL SCIENCES↗

New Routes for the Production of Fission Products and Their Separation from the Source Material for the Development of Realistic Nuclear Forensic Debris

In order to fully characterize the NIF neutron spectrum, SAND-II-SNL software was requested/received from the Radiation Safety Information Computational Center. The software is designed to determine the neutron energy spectrum through analysis of experimental activation data. However, given that the source code was developed in Sparcstation 10, it is not compatible with current version of FORTRAN. Accounts have been established through the Lawrence Livermore National Laboratory’s High Performance Computing in order to access different compiles for FORTRAN (e.g. pgf77, pgf90). Additionally, several of the subroutines included in the SAND-II-SNL package have required debugging efforts to allow for proper compiling of the code.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Domain Specific Language Support for Exascale

Domain-Specific Languages (DSLs) offer an attractive path to Exascale software since they provide expressive power through appropriate abstractions and enable domain-specific optimizations. But the advantages of a DSL compete with the difficulties of implementing a DSL, even for a narrowly defined domain. The DTEC project addresses how a variety of DSLs can be easily implemented to leverage existing compiler analysis and transformation capabilities within the ROSE open source compiler as part of a research program focusing on Exascale challenges. The OSU contributions to the DTEC project are in the area of code generation from high-level DSL descriptions, as well as verification of the automatically-generated code.

97 MATHEMATICS AND COMPUTING↗

Issues Identified During September 2016 IBM OpenMP 4.5 Hackathon

In September, 2016 IBM hosted an OpenMP 4.5 Hackathon at the TJ Watson Research Center. Teams from LLNL, ORNL, SNL, LANL, and LBNL attended the event. As with the 2015 hackathon, IBM produced an extremely useful and successful event with unmatched support from compiler team, applications staff, and facilities. Approximately 24 IBM staff supported 4-day hackathon and spent significant time 4-6 weeks out to prepare environment and become familiar with apps. This hackathon was also the first event to feature LLVM & XL C/C++ and Fortran compilers. This report records many of the issues encountered by the LLNL teams during the hackathon.

97 MATHEMATICS AND COMPUTING↗

Final Report for NIREC Renewable Energy Research & Development Project

This report is a compilation of progress reports and presentations submitted by NIREC to the DOE’s Solar Energy Technologies Office for award number DE-FG36-08GO88161. This compilation has been uploaded to OSTI by DOE as a substitute for the required Final Technical Report, which was not submitted to DOE by NIREC or received by DOE. Project Objective: The primary goal of NIREC is to advance the transformation of the scientific innovation of the institutional partner’s research in renewable energy into a proof of the scientific concept eventually leading to viable businesses with cost effective solutions to accelerate the widespread adoption of renewable energy. NIREC will a) select research projects that are determined to have significant commercialization potential as a result of vetting by the Technology and commercialization Advisory Board, b) assign an experienced Entrepreneur-in-Residence (EIR) to each manage the scientific commercialization-preparedness process, and c) facilitate connectivity with venture capital and other private-sector capital sources to fund the rollout, scaling and growth of the resultant renewable energy business.

09 BIOMASS FUELS↗

White Paper on Nuclear Data Needs and Capabilities for Basic Science

Reliable nuclear structure and reaction data represent the fundamental building blocks of nuclear physics and astrophysics research, and are also of importance in many applications. There is a continuous demand for high-quality updates of the main nuclear physics databases via the prompt compilation and evaluation of the latest experimental and theoretical results. The nuclear physics research community benefits greatly from comprehensive, systematic and up-to-date reviews of the experimentally determined nuclear properties and observables, as well as from the ability to rapidly access these data in user-friendly forms. Such credible databases also act as a bridge between science, technology, and society by making the results of basic nuclear physics research available to a broad audience of users, and hence expand the societal utilization of nuclear science. Compilation and evaluation of nuclear data has deep roots in the history of nuclear science research, as outlined in Appendix 1. They have an enormous impact on many areas of science and applications, as illustrated in Figure 2 for the Evaluated Nuclear Structure Data File (ENSDF) database. The present workshop concentrated on the needs of the basic nuclear science community for data and capabilities. The main role of this community is to generate and use data in order to understand the basic nuclear forces and interactions that are responsible for the existence and the properties of all nuclides and, as a consequence, to gain knowledge about the origins, evolution and structure of the universe. Thus, the experiments designed to measure a wealth of nuclear properties towards these fundamental scientific goals are typically performed from within this community.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

LLVM Infrastructure and Tools Project Summary

This project works with the open source LLVM Compiler Infrastructure (http://llvm.org) to provide tools and capabilities that address needs and challenges faced by ECP community (applications, libraries, and other components of the software stack). Our focus is on providing a more productive development environment that enables (i) improved compilation times and code generation for parallelism, (ii) additional features/capabilities within the design and implementations of LLVM components for improved platform/performance portability and (iii) improved aspects related to composition of the underlying implementation details of the programming environment, capturing resource utilization, overheads, etc. -- including runtime systems that are often not easily addressed by application and library developers.

97 MATHEMATICS AND COMPUTING↗

How to Build MCNP 6.2

This presentation describes how to build MCNP 6.2. MCNP®* 6.2 can be compiled on Macs, PCs, and most Linux systems. It can also be built for parallel execution using both OpenMP and Messing Passing Interface (MPI) methods. MCNP6 requires Fortran, C, and C++ compilers to build the code.

97 MATHEMATICS AND COMPUTING↗

High-Throughput Combinatorial Development of High-Entropy Alloys For Light-Weight Structural Applications

The primary limitation of today’s lightweight structural alloys is that specific yield strengths (SYS) higher than 200MPa x cc/g (typical value for titanium alloys) are extremely difficult to achieve. This holds true especially at a cost lower than 5dollars/kg (typical value for magnesium alloys). Recently, high-entropy alloys (HEA) have shown promising SYS, yet the large composition space of HEA makes screening compositions complex and time-consuming. Over the course of this 2-year project we started from 150 billion compositions and reduced the number of potential low-density (<5g/cc), low-cost (<5dollars/kg) high-entropy alloy (LDHEA) candidates that are single-phase, disordered, solid-solution (SPSS) to a few thousand compositions. This was accomplished by means of machine learning to guide design for SPSS LDHEA based on a combination of recursive partitioning, an extensive, experimental HEA database compiled from 24 literature sources, and 91 calculated parameters serving as phenomenological selection rules. Machine learning shows an accuracy of 82% in identifying which compositions of a separate, smaller, experimental HEA database are SPSS HEA. Calculation of Phase Diagrams (CALPHAD) shows an accuracy of 71-77% for the alloys supported by the CALPHAD database, where 30% of the compiled HEA database is not supported by CALPHAD. In addition to machine learning, and CALPHAD, a third tool was developed to aid design of SPSS LDHEA. Phase diagrams were calculated by constructing the Gibbs-free energy convex hull based on easily accessible enthalpy and entropy terms. Surprisingly, accuracy was 78%. Pursuing these LDHEA candidates by high-throughput experimental methods resulted in SPSS LDHEA composed of transition metals (e.g. Cr, Mn, Fe, Ni, Cu) alloyed with Al, yet the high concentration of Al, necessary to bring the mass density below 5.0g/cc, makes these materials hard and brittle, body-centered-cubic (BCC) alloys. A related, yet multi-phase BCC alloy, based on Al-Cr-Fe-Ni, shows compressive strain >10% and specific compressive yield strength of 229 MPa x cc/g, yet does not show ductility in tensile tests due to cleavage. When replacing Cr in Al-Cr-Fe-based 4- and 5-element LDHEA with Mn, hardness drops 2x. Combined with compression test results, including those on the ternaries Al-Cr-Fe and Al-Mn-Fe suggest that Al-Mn-Fe-based LDHEA are still worth pursuing. These initial results only represent one compressive stress-strain curve per composition without any property optimization. As such, reproducibility needs to be followed by optimization to show their full potential. When including Li, Mg, and Zn, single-phase Li-Mg-Al-Ti-Zn LDHEA has been found with a specific ultimate compressive strength of 289MPa x cc/g. Al-Ti-Mn-Zn showed a specific ultimate compressive strength of 73MPa x cc/g. These initial results after hot isostatic pressing (HIP) of the ball-milled powders represent the lower end of what is possible, since no secondary processing (e.g. extrusion) has been performed to optimize strength and ductility. Compositions for multi-phase (e.g. dual-phase) LDHEA were identified largely by automated searches through CALPHAD databases, while screening for large face-centered-cubic (FCC) volume fractions, followed by experimental verification. This resulted in several new alloys. Li-Mg-Al-Mn-Fe and Mg-Mn-Fe-Co ball-milled powders upon HIP show specific ultimate compressive strengths of 198MPa x cc/g and 45MPa x cc/g, respectively. Several malleable quarternary Al-Zn-based alloys have been found upon arc/induction melting, yet with limited specific compressive yield strength (<75 MPa x cc/g). These initial results are all without any optimization for strength and/or ductility. High-throughput experimentation allowed us to triple the existing experimental HEA database as published in the past 10 years in less than 2 years which happened at a rate 10x higher than previous methods. Furthermore, we showed that high-throughput thin-film combinatorial methods can be used to get insight in isothermal phase diagram slices. Although it is straightforward to map hardness as a function of composition for sputtered, thin-film, compositional gradients by nano-indentation and compare the results to micro-indentation on bulk samples, the simultaneous impact of composition, roughness, film density, and microstructure on hardness requires monitoring all these properties as a function of location on the compositional gradient, including dissecting the impact of these 4 factors on the hardness map. These additional efforts impact throughput significantly. This work shows that a lot of progress has been made over the years in predicting phase formation that aids the discovery of new alloys, yet that a lot of work needs to be done to predict phases more accurately for LDHEA, whether done by CALPHAD or by other means. More importantly, more work needs to be done to predict mechanical properties of novel alloys, like yield strength, and ductility. Furthermore, this work shows that there is a need for the generation of an empirical alloy database covering strategic points in a multi-dimensional composition space to allow for faster and more accurate predictive interpolations to identify the oasis in the dessert more quickly. Finally, this work suggests that it is worth pursuing a ductile alloy with a SYS > 300 MPa x cc/g in a mass density range of 6-7 g/cc, since the chances for a single-phase or majority-phase FCC increase significantly. Today’s lightweight steels are in this density range.

36 MATERIALS SCIENCE↗

Monthly report for ECP ATDM ST projects (July 2018)

The team worked on supporting compile and build on ATS2 initial deployment systems for SPARC. Conducted performance runs of EMPIRE on Trinity and an initial compile and run of SPARC on Intel Skylake processors.

97 MATHEMATICS AND COMPUTING↗

Technology inventory: energy efficiency measures for residential, commercial, and industrial sectors in the United States

Energy efficiency is expected to continue to be one of main levers for governments to address the energy and climate crisis. While a diverse mix of energy efficiency programs has been regarded as an important part of governmental actions, an energy efficiency policy or program needs to identify and assess eligible savings measures, i.e., specific technologies or practices, for designing key features, e.g., target type, target stringency, covered load, and cost recovery. This report briefly discusses U.S. energy efficiency policies and programs, explores publicly available resources of energy efficiency measures for residential, commercial, and industrial sectors in the U.S., and describes how to compile key measures and characteristics into an integrated spreadsheet database. The database in the initial version offers, for more than 1,200 measures, efficiency or improvement potential, technical notes, costs at a given year, where applicable. Energy efficiency measures compiled here could play an important role in determining savings targets and target stringency under a potential energy efficiency policy such as an energy efficiency resource standard in Korea, and offer significant opportunities for energy efficiency improvement.

32 ENERGY CONSERVATION, CONSUMPTION, AND UTILIZATI↗

ECP Milestone Memo WBS 2.3.4.13 ECP/VTK-m FY18Q4 [MS-18/09-10] Dynamic Types / Rendering Topologies STDA05-16

The STDA05-16 milestone comprises the following 3 distinct deliverables. OpenMP VTK-m currently supports three types of devices: serial CPU, TBB, and CUDA. To run algorithms on multicore CPU-type devices (such as Xeon and Xeon Phi), TBB is required. However, there are known issues with integrating a software product using TBB with another one using OpenMP. Therefore, we will add an OpenMP device to the VTK-m software. When engaged, this device will run parallel algorithms using OpenMP directives. This will mesh more nicely with other code also using OpenMP. Rendering Topological Entities VTK-m currently supports surface rendering by tessellation of data structures,and rendering the resulting triangles. We will extend current functionality to include face, edge, and point rendering. Better Dynamic Types Impl For the best efficiency across all platforms, VTK-m algorithms use static typing with C++ templates. However, many libraries like VTK, ParaView, and Visit use dynamic types with virtual functions because data types often cannot be determined at compile time. We have an interface in VTK-m to merge these two typing mechanisms by generating all possible combinations of static types when faced with a dynamic type. Although this mechanism works, it generates very large executables and takes a very long time to compile. As we move forward, it is clear that these problems will get worse and become infeasible at exascale. We will rectify the problem by introducing some level of virtual methods, which require only a single code path, within VTK-m algorithms. This first milestone produces a design document to propose an approach to the new system.

97 MATHEMATICS AND COMPUTING↗

Swift/T Guide

Swift/T is a hierarchical, parallel programming system that allows you to rapidly develop many-task workflows that call into sequential code concurrently. It is implemented with a compiler and runtime system; the Swift/Turbine Compiler (STC) allows you to write Swift programs and run them using Turbine. At runtime, Swift/T programs are MPI programs capable of utilizing very large supercomputers.

97 MATHEMATICS AND COMPUTING↗

Format reference for the Atlas of Neutron Resonances electronic files

The Atlas of Neutron Resonances is the direct successor to the vaunted BNL-325 series of references. The current Atlas is the culmination of the lifelong work of Said Mughabghab and within it Dr. Mughabghab strove to compile all known neutron resonances and related data. The current version of the Atlas is distributed in two volumes, covering isotopes with Z=1-60 in volume I and Z=61-104 in volume II. The Atlas is organized into two parts, a general reference for all things related to neutron resonance physics and listings of parameters for each element and/or isotope. The general reference is repeated in each volume. The individual elements and/or isotope listings contain a list of thermal cross section data, resonance properties, lists of resonance parameters for each isotope (and occasionally for elements in the event that resonances could not be attributed to individual isotopes) and an extensive bibliography. The entries of the Atlas are derived from two sets of files: txsrp files: these files contain listings of thermal properties, resonance properties, bibliographic references and coding that defines the columns in the corresponding cftma file. cfmta files: these files contain a list of compiled resonance parameters. There is one txsrp and one cfmta file for each element.

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↗