Edgar Solomonik

Summary of Research:

I develop parallel numerical algorithms for scientific applications. Previously, I studied the scalability of parallel sorting algorithms as motivated by an N-body cosmology simulation application, which employed an Oct-tree decomposition. I’ve also worked on molecular dynamics simulations for distributed-memory supercomputers and GPU clusters.

Currently, I am designing scalable algorithms and libraries for parallel numerical linear algebra. I look for algorithms that attempt to reduce or minimize communication, a key goal to achieving higher scalability. In particular, we have developed algorithms that achieve asymptotically improved strong scaling (solving a problem faster with more processors). These so called ‘2.5-dimensional algorithms’ reduce communication asymptotically using limited replication. The parallel decompositions we use also map nicely to modern toroidal supercomputer networks, achieving peak throughput efficiency. We have shown that these algorithms can achieve large speed-ups and have extended the replication concept to many linear algebra problems, molecular dynamics simulations, and certain graph problems.

I am also developing Cyclops Tensor Framework, a code designed to provide support for distributed-memory symmetric tensor contractions. These computational kernels are instrumental for the Coupled Cluster electronic structure calculation method. We have designed new algorithms for distributed tensor storage as well as adaptive methods for communicating and contracting the tensors. Using this framework, we have already implemented a Coupled Cluster method with double excitations, and have shown that the framework can handle 6- and 8-dimensional tensors, necessary for computation of Coupled Cluster with double, triple, and quadruple excitations.

Publications:

Grey Ballard, James Demmel, Laura Grigori, Mathias Jacquelin, Hong Diep Nguyen, and Edgar Solmonik; Reconstructing Householder Vectors from Tall-Skinny QR; IEEE International Parallel and Distributed Processing Symposium (IPDPS), Phoenix, AZ, May 2014.

Edgar Solomonik, Devin Matthews, Jeff Hammond, and James Demmel; Cyclops Tensor Framework: reducing communication and eliminating load imbalance in massively parallel contractions, IEEE International Parallel and Distributed Processing Symposium (IPDPS), Boston, MA, May 2013.

Edgar Solomonik, Aydin Buluc, and James Demmel; Minimizing communication in all-pairs shortest-paths; IEEE International Parallel and Distributed Processing Symposium (IPDPS), Boston, MA, May 2013.

Michael Driscoll, Evangelos Georganas, Penporn Koanantakool, Edgar Solomonik, and Katherine Yelick; A Communication-Optimal N-Body Algorithm for Direct Interactions; IEEE International Parallel and Distributed Processing Symposium (IPDPS), Boston, MA, May 2013.

Evangelos Georganas, Jorge Gonzalez-Dominguez, Edgar Solomonik, Yili Zheng, Juan Tourino and Katherine Yelick; Communication Avoiding and Overlapping for Numerical Linear Algebra, ACM/IEEE Supercomputing Conference, Salt Lake City, Utah, November 2012.

Edgar Solomonik, James Demmel; Matrix multiplication on multidimensional torus networks, Springer Lecture Notes in Computer Science (LNCS), Proceedings of VECPAR, Kobe, Japan, July 2012.

Edgar Solomonik, Jeff Hammond, and James Demmel; A preliminary report on Cyclops Tensor Framework, EECS Department, University of California, Berkeley, March 2012. (EECS Technical Report 2012-29)

Edgar Solomonik, Abhinav Bhatele, and James Demmel; Improving communication performance in dense linear algebra via topology aware collectives; ACM/IEEE Supercomputing Conference 2011, Seattle, WA, November 2011.

Edgar Solomonik, James Demmel; Communication-optimal parallel 2.5D matrix multiplication and LU factorization algorithms; Springer Lecture Notes in Computer Science (LNCS), Proceedings of the Euro-Par conference, Bordeaux, France, August 2011. ("Distinguished Paper")

Laxmikant Kale and Edgar Solomonik, Parallel Sorting, Encyclopedia of Parallel Computing, Springer Verlag, David Padua, Ed., 2011.

Abhinav Bhatele, Lukasz Wesolowski, Eric Bohm, Edgar Solomonik, and Laxmikant V. Kale; Understanding Application Performance via Micro-benchmarks on Three Large Supercomputers: Intrepid, Ranger and Jaguar; International Journal of High Performance Computing Applications; published online 26 May 2010.

Edgar Solomonik and Laxmikant V. Kale; Highly Scalable Parallel Sorting; IEEE International Parallel and Distributed Processing Symposium 2010, Atlanta, GA, April 2010.

Vivek Kale and Edgar Solomonik; Parallel Sorting Pattern; Workshop on Parallel Programming Patterns (ParaPLOP), March 2010.

Awards:

ACM/IEEE-CS George Michael Memorial High Performance Computing Fellowship, 2013

NERSC Award for Innovative Use of High Performance Computing, 2013

Distinguished Paper (with co-author James Demmel); Euro-Par 2011, Bordeaux, France; for “Communication-optimal parallel 2.5D matrix multiplication and LU factorization algorithms.’

Office of Science Graduate Fellowship (Declined), 2010

NSF Graduate Fellowship Honorable Mention, 2010

Finalist for CRA Outstanding Undergraduate Research Award, 2010

University of Illinois CS Department Best Undergraduate Research Project Award, 2009