What is EnGPar?

Massively parallel computing combined with scalable simulation workflows that can reliably model systems of interest are central to the continued quest of scientists, engineers, and other practitioners to address advances in scientific discovery, engineering design, and medical treatment. However, to meet their potential, these methods must be able to operate efficiently and scale on massively parallel computers executing millions of processes.

EnGPar, N-Graph Partitioning, provides scalable partitioning methods in which the computational workload is well balanced and interprocessor communications overheads are minimized. Building on initial efforts to improve dynamic load balancing methods for adaptive unstructured mesh applications, the goal of the proposed research is to develop fast multicriteria dynamic load balancing methods that are capable of quickly producing well balanced computations, with well controlled communications, for a wide variety of applications.

Where is the code?

Users of unstructured meshes or general relational structures may immediately start using our methods via the APIs and examples in the EnGPar repository and Doxygen Documentation. A series of getting started wiki pages should also be helpful. If you have a usage question please contact us via email or a GitHub Issue. EnGPar currently has support for partitioning graphs and hypergraphs via an interface to ParMETIS and then improving the partition for multiple criteria with a diffusive procedure.

Reference Materials

API Documentation

Doxygen Documentation

Publications

Gerrett Diamond, Cameron W. Smith, Eisung Yoon, and Mark S. Shephard "Dynamic Load Balancing of Massively Parallel Unstructured Meshes",   Proceedings of the 9th Workshop on Latest Advances in Scalable Algorithms for Large-Scale Systems (ScalA'18) Held in Conjuction with SC18, Dallas, TX. November 12, 2018.

Gerrett Diamond, Cameron W. Smith, and Mark S. Shephard "Dynamic Load Balancing of Massively Parallel Unstructured Meshes",   Proceedings of the 8th Workshop on Latest Advances in Scalable Algorithms for Large-Scale Systems (ScalA'17) Held in Conjuction with SC17, Denver, CO. November 13, 2017.

Cameron W. Smith, Brian Granzow, Dan Ibanez, Onkar Sahni, Kenneth E. Jansen and Mark .S. Shephard, "In-memory Integration of Existing Software Components for Parallel Adaptive Unstructured Mesh Workflows",   Proceedings of the XSEDE16 Conference, Miami, FL. July 19, 2016.

Daniel A. Ibanez, E. Seegyoung Seol, Cameron W. Smith, and Mark S. Shephard. "PUMI: Parallel Unstructured Mesh Infrastructure",   ACM Trans. Math. Softw. 42, 3, Article 17. 2016

Cameron W. Smith, Michel Rasquin, Dan Ibanez, Kenneth E. Jansen, and Mark S. Shephard "Improving Unstructured Mesh Partitions for Multiple Criteria Using Mesh Adjacencies ",  SIAM Journal on Scientific Computing, 2016

Sahni, Onkar, et al. "Scalable implicit finite element solver for massively parallel processing with demonstration to 160k cores." Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis. IEEE, 2009.

Zhou, Min, et al. "Controlling unstructured mesh partitions for massively parallel simulations." SIAM Journal on Scientific Computing 32.6 (2010): 3201-3227.

Presentations

Cameron W. Smith "Load Balancing on Many-Core and Accelerated Systems",   Salishan 2019. April 25, 2019

Cameron W. Smith, Gerrett Diamond, Lucas Davis, Yuan Meng, and Mark S. Shephard "Accelerating Dynamic Load Balancing with GPUs",  SIAM Conference on Computational Science and Engineering (CSE19), Spokane, WA. March 1, 2018.

Gerrett Diamond, Cameron W. Smith, and Mark S. Shephard "Diffusive Load Balancing of Hypergraphs for Partitioning Evolving Unstructured Mesh Applications",  SIAM Conference on Computational Science and Engineering (CSE19), Spokane, WA. February 28, 2018.

Gerrett Diamond, Lucas Davis, and Cameron W. Smith "Accelerated Load Balancing of Unstructured Meshes ",  27th International Meshing Roundtable, Albuquerque, NM. October 2, 2018.

Cameron W. Smith, Gerrett Diamond, George M. Slota, and Mark S. Shephard "Dynamic Load Balancing of Massively Parallel Graphs for Scientific Computing on Many Core and Gpu Based Systems",  SIAM Conference on Parallel Processing for Scientific Computing (PP18), Tokyo, Japan. March 8, 2018.

Mark S. Shephard, Glen Hansen, Mauro Perego, Cameron W. Smith, "FASTMath Unstructured Mesh Partitioning Technologies",  Argonne Training Program on Extreme-Scale Computing 2016 (ATPESC 2016), Chicago, IL. August 9, 2016.

Mark S. Shephard, Cameron W. Smith, Dan A. Ibanez, Brian Granzow, Onkar Sahni, and Kenneth Jansen, "Parallel Unstructured Mesh Generation/Adaptation Tools Used in Automated Simulation Workflows", SIAM Parallel Processing, Paris, France. April 14, 2016.

C.W. Smith, M. Rasquin, D.A. Ibanez, K.E. Jansen, and M.S. Shephard, "Unstructured Mesh Partitioning for Adaptive Workflows", USNCCM13. San Diego, CA. July 28, 2015.

C.W. Smith, M. Rasquin, D.A. Ibanez, K.E. Jansen, and M.S. Shephard, "Unstructured Mesh Partitioning to Over One Million Parts", SIAM Computation Science and Engineering. Salt Lake City, UT. March 17, 2015.

Reports

Gerrett Diamond, Morteza H. Siboni, Cameron W. Smith, and Mark S. Shephard " Improvements in Curved Mesh Adaptation Procedure for the Omega3P Code ",  SCOREC Reports, 2016