An Optimizing Compiler for Parallel Chemistry Simulations

被引:5
|
作者
Cao, Jun [1 ]
Goyal, Ayush [2 ]
Novstrup, Krista A. [2 ]
Midkiff, Samuel P. [1 ]
Caruthers, James M. [2 ]
机构
[1] Purdue Univ, Sch Elect & Comp Engn, W Lafayette, IN 47907 USA
[2] Purdue Univ, Sch Chem Engn, W Lafayette, IN 47907 USA
基金
美国国家科学基金会;
关键词
Compilers; Domain specific languages; Parallelism; Common elimination subexpression; Domain specific optimizations; Chemistry modeling; COMPLEX-REACTION SYSTEMS; CONSTRUCTION;
D O I
10.1007/s10766-008-0087-0
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Well designed domain specific languages have three important benefits: (1) the easy expression of problems, (2) the application of domain specific optimizations (including parallelization), and (3) dramatic improvements in productivity for their users. In this paper we describe a compiler and parallel runtime system for modeling the complex kinetics of rubber vulcanization and olefin polymerization that achieves all of these goals. The compiler allows the development of a system of ordinary differential equations describing a complex vulcanization reaction or single-site olefin polymerization reaction-a task that used to require months-to be done in hours. A specialized common sub-expression elimination and other algebraic optimizations sufficiently simplify the complex machine generated code to allow it to be compiled-eliminating all but 8.0% of the operations in our largest program and enabling over 60 times faster execution on our largest benchmark codes. The parallel runtime and dynamic load balancing scheme enables fast simulations of the model.
引用
收藏
页码:127 / 152
页数:26
相关论文
共 50 条
  • [1] An Optimizing Compiler for Parallel Chemistry Simulations
    Jun Cao
    Ayush Goyal
    Krista A. Novstrup
    Samuel P. Midkiff
    James M. Caruthers
    International Journal of Parallel Programming, 2009, 37 : 127 - 152
  • [2] AN OPTIMIZING PROLOG COMPILER
    KOMATSU, H
    TAMURA, N
    ASAKAWA, Y
    KUROKAWA, T
    LECTURE NOTES IN COMPUTER SCIENCE, 1987, 264 : 104 - 115
  • [3] AN OPTIMIZING PASCAL COMPILER
    FAIMAN, RN
    KORTESOJA, AA
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1980, 6 (06) : 512 - 519
  • [4] An Optimizing Compiler for Out-of-Order Parallel ESL Simulation Exploiting Instance Isolation
    Chen, Weiwei
    Doemer, Rainer
    2012 17TH ASIA AND SOUTH PACIFIC DESIGN AUTOMATION CONFERENCE (ASP-DAC), 2012, : 461 - 466
  • [5] Codesign of a parallel architecture and an optimizing compiler backend: SIN rete processing as a case study
    Synopsys, Mountain View, United States
    Des Autom Embedded Syst, 1-2 (147-176):
  • [6] A parallel compiler scheduler
    Solar, M
    Inostroza, M
    SCCC 2001: XXI INTERNATIONAL CONFERENCE OF THE CHILEAN COMPUTER SCIENCE SOCIETY, PROCEEDINGS, 2001, : 256 - 263
  • [7] PARALLEL COMPILER GENERATION
    GAAL, T
    MICROPROCESSING AND MICROPROGRAMMING, 1993, 39 (2-5): : 147 - 150
  • [8] RICE: An Optimizing Curry Compiler
    Libby, Steven
    PRACTICAL ASPECTS OF DECLARATIVE LANGUAGES, PADL 2023, 2023, 13880 : 3 - 19
  • [9] MICROSOFT FORTRAN OPTIMIZING COMPILER
    LEVITIN, VV
    MATHEMATICAL BIOSCIENCES, 1990, 102 (02) : 225 - 227
  • [10] TS - AN OPTIMIZING COMPILER FOR SMALLTALK
    JOHNSON, RE
    GRAVER, JO
    ZURAWSKI, LW
    SIGPLAN NOTICES, 1988, 23 (11): : 18 - 26