• Publications
  • Influence
Synthesis of High-Performance Parallel Programs for a Class of ab Initio Quantum Chemistry Models
This paper provides an overview of a program synthesis system for a class of quantum chemistry computations, expressible as a set of tensor contractions and arise in electronic structure modeling.
Automatic code generation for many-body electronic structure methods: the tensor contraction engine
An overview of the Tensor Contraction Engine (TCE), a unique effort to address issues of both productivity and performance through automatic code generation that acts like an optimizing compiler.
Efficient synthesis of out-of-core algorithms using a nonlinear optimization solver
Global communication optimization for tensor contraction expressions under memory constraints
An approach to identify the best combination of loop fusion and data partitioning that minimizes inter-processor communication cost without exceeding the per-processor memory limit is developed.
Data Locality Optimization for Synthesis of Efficient Out-of-Core Algorithms
This paper describes an approach to synthesis of efficient out-of-core code for a class of imperfectly nested loops that represent tensor contraction computations that combines loop fusion with loop tiling and uses a performance-model driven approach toloop tiling for the generation of out- of-corecode.
Memory-Constrained Data Locality Optimization for Tensor Contractions
An optimization framework to search among a space of fusion and tiling choices to minimize the data movement overhead is developed and is demonstrated on a computation representative of a component used in quantum chemistry suites.
Efficient Synthesis of Out-of-Core Algorithms Using a Nonlinear Optimization Solver
This work addresses the problem of efficient out-of-core code generation for a special class of imperfectly nested loops encoding tensor contractions on arrays too large to fit in physical memory by forming the problem as a nonlinear optimization problem and using a discrete constraint solver to generate optimized code.