DOSA: Design Optimizer for Scientific Applications

In this work, we propose an application composition system (ACS) that allows design-time exploration and automatic run-time optimizations so that we relieve application programmers and compiler writers from the challenging task of optimizing the computation in order to achieve high performance. Our new framework, called "design optimizer for scientific applications" (DOSA), allows the programmer or compiler writer to explore alternative designs and optimize for speed (or power) at design-time and use its run-time optimizer as an automatic ACS. The ACS constructs an efficient application that dynamically adapts to changes in the underlying execution environment based on the kernel model, architecture, system features, available resources, and performance feedback. The run-time system is a portable interface that enables dynamic application optimization by interfacing with the output of DOSA. It thus provides an application composition system that determines suitable components and performs continuous performance optimizations. We focus on utilizing advanced architectural features and memory-centric optimizations that reduce the I/O complexity, cache pollution, and processor-memory traffic, in order to achieve high performance. The design-time effort uses a computer-aided design space exploration that provides a user-friendly graphical modeling environment, high-level performance estimation and profiling, and the ability to integrate low-level simulators suitable for HPC architectures.

[1]  Pei Tang,et al.  Large-scale molecular dynamics simulations of general anesthetic effects on the ion channel in the fully hydrated membrane: The implication of molecular mechanisms of general anesthesia , 2002, Proceedings of the National Academy of Sciences of the United States of America.

[2]  David J. Spiegelhalter,et al.  Local computations with probabilities on graphical structures and their application to expert systems , 1990 .

[3]  C. Brooks Computer simulation of liquids , 1989 .

[4]  David A. Bader,et al.  SNAP, Small-world Network Analysis and Partitioning: An open-source parallel graph framework for the exploration of large-scale networks , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[5]  David M. Pennock Logarithmic Time Parallel Bayesian Inference , 1998, UAI.

[6]  Sandeep Neema,et al.  Modeling methodology for integrated simulation of embedded systems , 2003, TOMC.

[7]  Gabor Karsai,et al.  Model-integrated development of embedded software , 2003, Proc. IEEE.

[8]  Gabor Karsai,et al.  The Generic Modeling Environment , 2001 .

[9]  Laxmikant V. Kale,et al.  NAMD2: Greater Scalability for Parallel Molecular Dynamics , 1999 .

[10]  Subhash Saini,et al.  Scalable Atomistic Simulation Algorithms for Materials Research , 2001, ACM/IEEE SC 2001 Conference (SC'01).

[11]  Gabor Karsai,et al.  Model-Integrated Computing , 1997, Computer.

[12]  M S Waterman,et al.  Identification of common molecular subsequences. , 1981, Journal of molecular biology.

[13]  Susan B. Sinnott,et al.  Molecular dynamics simulations of the filling and decorating of carbon nanotubules , 1999 .

[14]  David A. Bader,et al.  Fast shared-memory algorithms for computing the minimum spanning forest of sparse graphs , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[15]  Viktor K. Prasanna,et al.  Parallel Exact Inference , 2022 .

[16]  M E J Newman,et al.  Finding and evaluating community structure in networks. , 2003, Physical review. E, Statistical, nonlinear, and soft matter physics.

[17]  José E. Moreira,et al.  Demonstrating the scalability of a molecular dynamics application on a Petaflop computer , 2001, ICS '01.

[18]  David A. Bader Petascale Computing: Algorithms and Applications , 2007 .