Mixed precision GMRES
August 2019 - Present
Exploring how the use of different precisions for different parts of the solver affects the performance and convergence of GMRES. The current goal is to be able to achieve the performance of a double precision GMRES implementation while selectively using lower precision in order to reduce data movement costs.
- Improving the Performance of GMRES using Mixed Precision - presented at the 2020 SIAM Conference on Parallel Processing for Scientific Computing
April 2019 - Present
An Atom package for interactive Common Lisp development, based on the Emacs plugin SLIME. This is a fork of Steve Levine’s Atom-Slime.
- Atom package page - The package page
- Swank-Client - The NPM package that handles the actual swank remote calls.
Reducing Memory Access Costs using Data Compression in Conjugate Gradient
May 2017 - April 2019
Exploration into whether the performance of sparse linear solvers (specifically Conjugate Gradient) can be improved by reducing data movement using compression.
July 2017 - May 2019
An implementation of Trilinos’s Petra Object Model in Julia. The project tried to understand how well Julia works for distributed, high performance computing.
- JuliaPetra.jl - The implementation
- Obtaining Performance from a Julia-Implementation of Trilinos Data Librairies - presented at the 2019 SIAM Conference on Computational Science and Engineering
- TypeStability.jl - A Julia package to automate type stability checks