Enabling high performance computational science through combinatorial algorithms

Erik G Boman, Doruk Bozdag, Umit V Catalyurek, Karen D Devine, Assefaw H Gebremedhin, Paul D Hovland, Alex Pothen, Michelle Mills Strout
2007 Journal of Physics, Conference Series  
The Combinatorial Scientific Computing and Petascale Simulations (CSCAPES) Institute is developing algorithms and software for combinatorial problems that play an enabling role in scientific and engineering computations. Discrete algorithms will be increasingly critical for achieving high performance for irregular problems on petascale architectures. This paper describes recent contributions by researchers at the CSCAPES Institute in the areas of load balancing, parallel graph coloring,
more » ... nce improvement, and parallel automatic differentiation. sets are huge, and communication costs are relatively larger than computation costs on current distributed memory architectures. In this scheme, each data item is mapped to a unique processor (the owner), and the owner performs the computations that are associated with that data item. Most data items are mapped only to the owner, but items on the boundaries of a partitioned data structure could be mapped to more than one processor. Communication is required when a computation needs access to data items that reside on different processors. There are two, often conflicting, goals in load balancing. First, the work that can be performed concurrently should be evenly distributed among the processors to avoid processors that finish early from having to wait for the slowest processor to finish its task. Second, communication between processors is relatively slow compared to computation, and so it should be as small as possible. The communication requirements are dictated by the data dependencies in the application at hand. These goals are conflicting since the first drives the data to be distributed among all the processors, while communication costs are lowest if the data resides on one processor. The load balancing problem is pervasive in parallel scientific computing and important to many different types of applications, i.e., particle simulations (molecular dynamics, chemistry, biology), mesh-based PDE solvers (structural mechanics, chemical engineering, groundwater flow), and circuit simulation.
doi:10.1088/1742-6596/78/1/012058 fatcat:nmz26wjnhvdgjigoj64e7jzbja