Efficiency and Quality Control for Particle Simulations

Richard Berger

Research output: ThesisDoctoral thesis

Abstract

This work describes the efforts of improving the efficiency and quality of the LIGGGHTS open-source software package for Discrete Element Methods (DEM). It explains the core algorithms present in this code and how a test harness was developed to support refactoring by automated testing and validation. Because of this testing facility, iterative refactoring of the code base could take place without damaging existing functionality. Major modifications were made to the code base to simplify the common task of creating new force models both for particle-particle and particle-wall contacts. This paved the way for further advances such as multi-threaded OpenMP versions of all granular force kernels. Along the way many improvements were made to the core functionality in LIGGGHTS. Through measuring and profiling, performance bottlenecks in the existing implementation were found and improved. Finally, an MPI/OpenMP hybrid parallelization was developed which extends the existing MPI parallelization of the code. Problems encountered and the solutions implemented to achieve scalable performance using both parallelization models are explained in this text. Three case studies, including two real-world applications with up to 1.5 million particles, were evaluated and demonstrate the practicality of this approach. In these examples, better load balancing and reduced MPI communication led to speed increases of up to 44% compared to MPI-only simulations. This shows that by using the hybrid parallelization of LIGGGHTS, current and future computing resources can be used more effectively.
Original languageEnglish
Publication statusPublished - 2016

Fields of science

  • 103032 Fluid mechanics
  • 203 Mechanical Engineering
  • 203016 Measurement engineering
  • 203024 Thermodynamics
  • 211104 Metallurgy
  • 204006 Mechanical process engineering
  • 204007 Thermal process engineering
  • 103043 Computational physics

JKU Focus areas

  • Computation in Informatics and Mathematics
  • Mechatronics and Information Processing
  • Engineering and Natural Sciences (in general)

Cite this